import { a as RpcManifest } from './types-CQ_aexOX.mjs'; interface RouteInfo { method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; path: string; handler: string; controllerName: string; } interface ControllerInfo { name: string; prefix: string; routes: RouteInfo[]; } /** * Parse NestJS controllers to extract Fusion metadata */ declare class NestJSParser { private projectPath; private program; constructor(projectPath: string); /** * Find all controllers with @FusionController decorator */ findFusionControllers(): ControllerInfo[]; findRpcManifest(): RpcManifest; private parseSourceFile; private parseController; private parseRoutes; private parseRpcServices; private parseRpcMethods; private parseParameter; private findDecorator; private hasDecorator; private readDecoratorOptions; } interface GenerateOptions { outputPath: string; manifest: RpcManifest; manifestFileName?: string; clientFileName?: string; } interface GenerateRpcOptions { projectPath: string; outputPath: string; manifestFileName?: string; clientFileName?: string; } /** * Generate TypeScript API client from controller metadata */ declare class ClientGenerator { generate(options: GenerateOptions): Promise; private generateRpcClientCode; private generateClientInterface; private generateServiceInterface; private parametersToSignature; } declare function generateRpcClient(options: GenerateRpcOptions): Promise; interface WatchOptions { projectPath: string; outputPath: string; pattern?: string; } /** * Watch NestJS controllers and regenerate client on changes */ declare class CodegenWatcher { private watcher; watch(options: WatchOptions): Promise; stop(): Promise; private generateClient; } type index_ClientGenerator = ClientGenerator; declare const index_ClientGenerator: typeof ClientGenerator; type index_CodegenWatcher = CodegenWatcher; declare const index_CodegenWatcher: typeof CodegenWatcher; type index_ControllerInfo = ControllerInfo; type index_GenerateOptions = GenerateOptions; type index_GenerateRpcOptions = GenerateRpcOptions; type index_NestJSParser = NestJSParser; declare const index_NestJSParser: typeof NestJSParser; type index_RouteInfo = RouteInfo; type index_WatchOptions = WatchOptions; declare const index_generateRpcClient: typeof generateRpcClient; declare namespace index { export { index_ClientGenerator as ClientGenerator, index_CodegenWatcher as CodegenWatcher, type index_ControllerInfo as ControllerInfo, type index_GenerateOptions as GenerateOptions, type index_GenerateRpcOptions as GenerateRpcOptions, index_NestJSParser as NestJSParser, type index_RouteInfo as RouteInfo, type index_WatchOptions as WatchOptions, index_generateRpcClient as generateRpcClient }; } export { ClientGenerator as C, type GenerateOptions as G, NestJSParser as N, type RouteInfo as R, type WatchOptions as W, CodegenWatcher as a, type ControllerInfo as b, type GenerateRpcOptions as c, generateRpcClient as g, index as i };