import { Mapping, Mode, Range } from '@volar/source-map'; export declare class CodeGen { private text; mappings: Mapping[]; getText(): string; getMappings(sourceRangeParser?: (data: T, range: Range) => Range): Mapping[]; addCode(str: string, sourceRange: Range, mode: Mode, data: T, extraSourceRanges?: Range[]): { start: number; end: number; }; addCode2(str: string, sourceOffset: number, data: T): { start: number; end: number; }; addMapping(str: string, sourceRange: Range, mode: Mode, data: T): { start: number; end: number; }; addMapping2(mapping: Mapping): void; addText(str: string): { start: number; end: number; }; } export declare function mergeCodeGen>(a: T, b: T): void;