import ts from 'typescript'; export type SourceEdit = { start: number; end: number; text: string; }; export declare function applySourceEdits(source: string, edits: SourceEdit[]): string; /** Keep module directives and leading comments before generated imports. */ export declare function insertImports(source: string, imports: string[]): string; export declare function importedNames(parsed: ts.SourceFile): Map; export declare function exportedBindings(parsed: ts.SourceFile): Map; /** Print the selected bindings, preserving import kinds and attributes. */ export declare function selectImport(statement: ts.ImportDeclaration, parsed: ts.SourceFile, keep: (name: string) => boolean, module?: ts.Expression): string | null; /** Reuse matching imports when adding definitions to an already translated module. */ export declare function appendTranslation(source: string, imports: string[], definitions: string[]): string;