1export interface StartOfSourceMap { 2 file?: string; 3 sourceRoot?: string; 4} 5 6export interface RawSourceMap extends StartOfSourceMap { 7 version: string; 8 sources: string[]; 9 names: string[]; 10 sourcesContent?: string[]; 11 mappings: string; 12} 13 14export interface Position { 15 line: number; 16 column: number; 17} 18 19export interface LineRange extends Position { 20 lastColumn: number; 21} 22 23export interface FindPosition extends Position { 24 // SourceMapConsumer.GREATEST_LOWER_BOUND or SourceMapConsumer.LEAST_UPPER_BOUND 25 bias?: number; 26} 27 28export interface SourceFindPosition extends FindPosition { 29 source: string; 30} 31 32export interface MappedPosition extends Position { 33 source: string; 34 name?: string; 35} 36 37export interface MappingItem { 38 source: string; 39 generatedLine: number; 40 generatedColumn: number; 41 originalLine: number; 42 originalColumn: number; 43 name: string; 44} 45 46export class SourceMapConsumer { 47 static GENERATED_ORDER: number; 48 static ORIGINAL_ORDER: number; 49 50 static GREATEST_LOWER_BOUND: number; 51 static LEAST_UPPER_BOUND: number; 52 53 constructor(rawSourceMap: RawSourceMap); 54 computeColumnSpans(): void; 55 originalPositionFor(generatedPosition: FindPosition): MappedPosition; 56 generatedPositionFor(originalPosition: SourceFindPosition): LineRange; 57 allGeneratedPositionsFor(originalPosition: MappedPosition): Position[]; 58 hasContentsOfAllSources(): boolean; 59 sourceContentFor(source: string, returnNullOnMissing?: boolean): string; 60 eachMapping(callback: (mapping: MappingItem) => void, context?: any, order?: number): void; 61} 62 63export interface Mapping { 64 generated: Position; 65 original: Position; 66 source: string; 67 name?: string; 68} 69 70export class SourceMapGenerator { 71 constructor(startOfSourceMap?: StartOfSourceMap); 72 static fromSourceMap(sourceMapConsumer: SourceMapConsumer): SourceMapGenerator; 73 addMapping(mapping: Mapping): void; 74 setSourceContent(sourceFile: string, sourceContent: string): void; 75 applySourceMap(sourceMapConsumer: SourceMapConsumer, sourceFile?: string, sourceMapPath?: string): void; 76 toString(): string; 77} 78 79export interface CodeWithSourceMap { 80 code: string; 81 map: SourceMapGenerator; 82} 83 84export class SourceNode { 85 constructor(); 86 constructor(line: number, column: number, source: string); 87 constructor(line: number, column: number, source: string, chunk?: string, name?: string); 88 static fromStringWithSourceMap(code: string, sourceMapConsumer: SourceMapConsumer, relativePath?: string): SourceNode; 89 add(chunk: string): void; 90 prepend(chunk: string): void; 91 setSourceContent(sourceFile: string, sourceContent: string): void; 92 walk(fn: (chunk: string, mapping: MappedPosition) => void): void; 93 walkSourceContents(fn: (file: string, content: string) => void): void; 94 join(sep: string): SourceNode; 95 replaceRight(pattern: string, replacement: string): SourceNode; 96 toString(): string; 97 toStringWithSourceMap(startOfSourceMap?: StartOfSourceMap): CodeWithSourceMap; 98} 99