import { Action, ActionMetadata, InterceptorMetadata, NodeBootEngineOptions } from "@nodeboot/context"; import { NodeBootDriver } from "./NodeBootDriver"; /** * Registers controllers and middlewares in the given server framework. */ export declare class NodeBootEngine> { private driver; private options; /** * Used to check and handle controller action parameters. */ private parameterHandler; /** * Used to build metadata objects for controllers and middlewares. */ private metadataBuilder; /** * Global interceptors run on each controller action. */ private interceptors; constructor(driver: TDriver, options: NodeBootEngineOptions); /** * Initializes the things driver needs before routes and middleware registration. */ initialize(): this; /** * Registers all given interceptors. */ registerInterceptors(classes?: Function[]): this; /** * Registers all given controllers and actions from those controllers. */ registerControllers(classes?: Function[]): this; /** * Registers post-execution middlewares in the driver. */ registerMiddlewares(type: "before" | "after", classes?: Function[]): this; /** * Executes given controller action. */ protected executeAction(actionMetadata: ActionMetadata, action: Action, interceptorFns: Function[]): Promise; /** * Handles result of the actionMetadata method execution. */ protected handleCallMethodResult(params: any[], action: Action, actionMetadata: ActionMetadata, interceptorFns: Function[]): Promise; private handleResult; /** * Creates interceptors from the given "use interceptors". */ protected prepareInterceptors(uses: InterceptorMetadata[]): Function[]; } //# sourceMappingURL=NodeBootEngine.d.ts.map