csr-controller
Version:
DB Controller for client side rendering
22 lines (21 loc) • 902 B
TypeScript
import { BaseControllerMethods, Controller, ControllerMethods, ControllerReturnType, CRUDBase } from '../';
type RegisterFunction = <T, C, U extends CRUDBase, S, M, CONT extends ControllerReturnType<T, C, U, S, M>>(controller: ControllerReturnType<T, C, U, S, M>, db: {
[method in keyof Omit<ControllerMethods<unknown, never, never>, '$changeServer' | '$clone'>]?: CONT[method];
} & {
[sk in keyof S]: {
[k in keyof CONT[sk] & keyof BaseControllerMethods<unknown>]?: CONT[sk][k];
};
}) => {
register: RegisterFunction;
handle: () => Map<string, Controller<unknown, unknown, CRUDBase>>;
};
/**
* Allows to register every controller database handler
*
* @returns Object with register and handle methods
*/
export declare const controllerRegistry: () => {
register: RegisterFunction;
handle: () => Map<string, Controller<unknown, unknown, CRUDBase>>;
};
export {};