export interface SourceTarget { id: string; file: string; revision: string; tag: string; start: number; end: number; insertion: number; /** Only a single literal text child can be rewritten without interpreting code. */ text?: { start: number; end: number; value: string; }; } export declare function sourceRevision(source: string): string; export declare function instrumentSource(file: string, source: string): { code: string; targets: SourceTarget[]; }; /** Returns a reviewable proposal. Applying files belongs to the change-set workflow. */ export declare function proposeLiteralText(source: string, target: SourceTarget, text: string, scope: 'instance' | 'definition', instances: number): { before: string; after: string; revision: string; }; //# sourceMappingURL=source.d.ts.map