/** * TypeScript → .kern Importer * * Reads TypeScript source and produces .kern output by recognizing structural patterns: * type aliases, interfaces, functions, classes (→ service/error), constants, imports. * Function/method bodies become <<<>>> handler blocks. * JSDoc comments become doc nodes. * * Uses the TypeScript compiler API (already a dependency) — no ts-morph needed. */ export interface ImportResult { /** The generated .kern source */ kern: string; /** TS constructs that couldn't be mapped */ unmapped: string[]; /** Stats about what was imported */ stats: { types: number; interfaces: number; functions: number; classes: number; imports: number; constants: number; enums: number; components: number; }; } export declare function escapeKernString(s: string): string; /** * Import TypeScript source code and produce .kern output. * * Recognizes: imports, type aliases, interfaces, enums, functions, classes (→ service/error), constants. * Function/method bodies become <<<>>> handler blocks. * JSDoc comments become doc nodes. * * @param tsSource - TypeScript source code * @param fileName - Optional filename for better error messages */ export declare function importTypeScript(tsSource: string, fileName?: string): ImportResult;