import { type Location, type Parsed, type Position, type Range } from "../parser"; interface Token { generatedStart: number; sourceStart: number; length: number; } /** * Utility to build up generate code from source ranges while maintaining a source mapping. */ export declare class Extractor { #private; constructor(parsed: Parsed); write(str: string): this; copy(range: Range | string | false | void | undefined | null): this; end(): Extracted; } export declare class Extracted { #private; parsed: Parsed; constructor(parsed: Parsed, generated: string, tokens: Token[]); sourceOffsetAt(generatedOffset: number): number | undefined; sourcePositionAt(generatedOffset: number): Position | undefined; sourceRangeAt(generatedStart: number, generatedEnd: number): { start: number; end: number; } | undefined; sourceLocationAt(generatedStart: number, generatedEnd: number): Location | undefined; generatedOffsetAt(sourceOffset: number): number | undefined; generatedPositionAt(sourceOffset: number): Position | undefined; generatedRangeAt(sourceStart: number, sourceEnd: number): { start: number; end: number; } | undefined; generatedLocationAt(sourceStart: number, sourceEnd: number): Location | undefined; toString(): string; } export {};