import { Express } from 'express'; import type { AnySchemaObject } from 'ajv'; import { IAdminForth, IAdminForthAuthenticatedEndpointOptions, IAdminForthExpressRouteSchema, IAdminForthNoAuthEndpointOptions, IExpressHttpServer } from '../types/Back.js'; import http from 'http'; declare const EXPRESS_ROUTE_SCHEMA: unique symbol; type MulterParser = (req: any, res: any, callback: (error?: unknown) => void) => void; type RegisteredExpressRouteSchema = IAdminForthExpressRouteSchema & { request?: AnySchemaObject; response?: AnySchemaObject; }; type SchemaAnnotatedHandler = ((...args: any[]) => any) & { [EXPRESS_ROUTE_SCHEMA]?: RegisteredExpressRouteSchema; }; declare class ExpressServer implements IExpressHttpServer { expressApp: Express; adminforth: IAdminForth; server: http.Server; schemaAwareRouteRegistrationPatched: boolean; uploadParser: MulterParser; pendingEndpointRegistrations: Array<() => void>; constructor(adminforth: IAdminForth); setupSpaServer(): void; setupWsServer(): void; serve(app: any): void; flushPendingEndpointRegistrations(): void; listen(...args: any[]): void; getInternalApiOrigin(): string | undefined; runInRequestContext(req: any, callback: any): unknown; authorize(handler: any): (req: any, res: any, next: any) => Promise; withSchema(schema: any, handler: any): SchemaAnnotatedHandler; translatable(handler: any): (req: any, res: any, next: any) => Promise; patchSchemaAwareRouteRegistration(): void; registerSchemaAwareRoute(methods: any, path: any, handlers: any): void; registerSchemaAwareStack(stack: any, prefix: any): void; combineRoutePaths(prefixes: any, paths: any): any; extractLayerPath(layer: any): any; flattenHandlers(handlers: any): any; flattenPaths(paths: any): string[]; setupOpenApiRoutes(): void; endpoint(options: IAdminForthAuthenticatedEndpointOptions): void; endpoint(options: IAdminForthNoAuthEndpointOptions): void; } export default ExpressServer; //# sourceMappingURL=express.d.ts.map