import { DeukPackAST, DeukPackError, PerformanceMetrics, SerializationOptions, GenerationOptions, ParseFileWithIncludesOptions } from '../types/DeukPackTypes'; import { DeukPackASTBuilderOptions } from '../ast/DeukPackASTBuilder'; export declare class DeukPackCodec { private parser; private deukParser; private protoParser; private generator; private serializer; private deserializer; private performanceMonitor; private useNative; private performanceMetrics; constructor(useNative?: boolean); /** * Parse IDL files into AST */ parseFiles(filePaths: string[], options?: DeukPackASTBuilderOptions): Promise; /** * Generate code from AST */ generateCode(ast: DeukPackAST, options: GenerationOptions): Promise; /** * Serialize object to wire format */ serialize(obj: T, options: SerializationOptions): Uint8Array; /** * Deserialize wire format to object */ deserialize(data: Uint8Array, targetType: new () => T, options: SerializationOptions): T; /** * Parse a single IDL file */ parseFile(filePath: string): Promise; /** * Parse an IDL file with all its includes. * @param filePath - 진입 IDL 파일 경로 * @param options - includePaths 지정 시 해당 경로만 사용, 미지정 시 defineRoot 기준으로 경로 구성 (기본 defineRoot: 'idls'). * 호환: 두 번째 인자를 string[]로 주면 includePaths로 간주. */ parseFileWithIncludes(filePath: string, options?: ParseFileWithIncludesOptions | string[]): Promise; /** * Build complete project from IDL files */ build(filePaths: string[], _outputDir: string, options: GenerationOptions): Promise; /** * Get performance metrics */ getPerformanceMetrics(): PerformanceMetrics; /** * Reset performance metrics */ resetMetrics(): void; /** * Resolve struct extends */ static resolveExtends(ast: DeukPackAST): void; /** * Validate schema */ validateSchema(ast: DeukPackAST): DeukPackError[]; /** * Get engine information */ getEngineInfo(): { name: string; version: string; native: boolean; }; } //# sourceMappingURL=DeukPackCodec.d.ts.map