/// import { IHttpServer } from "@egomobile/http-server"; import type { IController, IControllersOptions, ImportValues } from "../index.js"; import type { ControllerBase, IControllersResult } from "../types/index.js"; import type { Constructor, Nilable } from "../types/internal.js"; type HttpServer = IHttpServer; interface IControllerFile { fullPath: string; relativePath: string; } interface IInitializeControllerInstanceOptions { controllerClass: Constructor; events: NodeJS.EventEmitter; file: IControllerFile; imports: ImportValues; noAutoEnd: Nilable; noAutoParams: Nilable; noAutoQuery: Nilable; rootDir: string; server: HttpServer; } interface IInitializeControllersMethodOptions { events: NodeJS.EventEmitter; onControllersOptionsChange: (options: IControllersOptions) => void; onControllersResultChange: (result: IControllersResult) => void; server: HttpServer; } interface IInitializeControllersOptions { events: NodeJS.EventEmitter; imports: ImportValues; noAutoEnd: Nilable; noAutoParams: Nilable; noAutoQuery: Nilable; patterns: string[]; rootDir: string; server: HttpServer; } export declare function sortControllerFiles(files: IControllerFile[]): IControllerFile[]; export declare function initializeControllers({ events, imports, noAutoEnd, noAutoParams, noAutoQuery, patterns, rootDir, server }: IInitializeControllersOptions): Promise; export declare function initializeControllerInstance({ controllerClass, events, file, imports, noAutoEnd, noAutoParams, noAutoQuery, rootDir, server }: IInitializeControllerInstanceOptions): Promise; export declare function initializeControllersMethod({ events, onControllersOptionsChange, onControllersResultChange, server }: IInitializeControllersMethodOptions): void; export {};