from __future__ import annotations from typing import Type from flask import Flask from crudkit.engines import CRUDKitRuntime from .registry import CRUDRegistry class CRUDKit: def __init__(self, app: Flask, runtime: CRUDKitRuntime): self.app = app self.runtime = runtime self.registry = CRUDRegistry(runtime) def register(self, model: Type, **kwargs): return self.registry.register_class(self.app, model, **kwargs) def register_many(self, models: list[Type], **kwargs): return self.registry.register_many(self.app, models, **kwargs) def get_model(self, key: str): return self.registry.get_model(key) def get_service(self, model: Type): return self.registry.get_service(model)