ssap_app/node_modules/@expo/metro/metro-source-map/source-map.d.ts

124 lines
4.7 KiB
TypeScript

/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
*
* @format
* @oncall react_native
*/
import type { IConsumer } from "./Consumer/types";
import { BundleBuilder, createIndexMap } from "./BundleBuilder";
import composeSourceMaps from "./composeSourceMaps";
import Consumer from "./Consumer";
import normalizeSourcePath from "./Consumer/normalizeSourcePath";
import { functionMapBabelPlugin, generateFunctionMap } from "./generateFunctionMap";
import Generator from "./Generator";
export type { IConsumer };
type GeneratedCodeMapping = [number, number];
type SourceMapping = [number, number, number, number];
type SourceMappingWithName = [number, number, number, number, string];
export type MetroSourceMapSegmentTuple = SourceMappingWithName | SourceMapping | GeneratedCodeMapping;
export interface HermesFunctionOffsets {
[$$Key$$: number]: ReadonlyArray<number>;
}
export type FBSourcesArray = ReadonlyArray<null | undefined | FBSourceMetadata>;
export type FBSourceMetadata = [null | undefined | FBSourceFunctionMap];
export interface FBSourceFunctionMap {
readonly names: ReadonlyArray<string>;
readonly mappings: string;
}
export interface _BabelSourceMapSegment_generated {
readonly column: number;
readonly line: number;
}
export interface _BabelSourceMapSegment_original {
readonly column: number;
readonly line: number;
}
export interface BabelSourceMapSegment {
readonly generated: _BabelSourceMapSegment_generated;
readonly original?: _BabelSourceMapSegment_original;
readonly source?: null | undefined | string;
readonly name?: null | undefined | string;
}
export interface FBSegmentMap {
[id: string]: MixedSourceMap;
}
export interface BasicSourceMap {
readonly file?: string;
readonly mappings: string;
readonly names: Array<string>;
readonly sourceRoot?: string;
readonly sources: Array<string>;
readonly sourcesContent?: Array<null | undefined | string>;
readonly version: number;
readonly x_facebook_offsets?: Array<number>;
readonly x_metro_module_paths?: Array<string>;
readonly x_facebook_sources?: FBSourcesArray;
readonly x_facebook_segments?: FBSegmentMap;
readonly x_hermes_function_offsets?: HermesFunctionOffsets;
readonly x_google_ignoreList?: Array<number>;
}
export interface _IndexMapSection_offset {
line: number;
column: number;
}
export interface IndexMapSection {
map?: IndexMap | BasicSourceMap;
offset: _IndexMapSection_offset;
}
export interface IndexMap {
readonly file?: string;
readonly mappings?: void;
readonly sourcesContent?: void;
readonly sections: Array<IndexMapSection>;
readonly version: number;
readonly x_facebook_offsets?: Array<number>;
readonly x_metro_module_paths?: Array<string>;
readonly x_facebook_sources?: void;
readonly x_facebook_segments?: FBSegmentMap;
readonly x_hermes_function_offsets?: HermesFunctionOffsets;
readonly x_google_ignoreList?: void;
}
export type MixedSourceMap = IndexMap | BasicSourceMap;
/**
* Creates a source map from modules with "raw mappings", i.e. an array of
* tuples with either 2, 4, or 5 elements:
* generated line, generated column, source line, source line, symbol name.
* Accepts an `offsetLines` argument in case modules' code is to be offset in
* the resulting bundle, e.g. by some prefix code.
*/
declare function fromRawMappings(modules: ReadonlyArray<{
readonly map?: null | ReadonlyArray<MetroSourceMapSegmentTuple>;
readonly functionMap?: null | FBSourceFunctionMap;
readonly path: string;
readonly source: string;
readonly code: string;
readonly isIgnored: boolean;
readonly lineCount?: number;
}>, offsetLines?: number): Generator;
declare function fromRawMappingsNonBlocking(modules: ReadonlyArray<{
readonly map?: null | ReadonlyArray<MetroSourceMapSegmentTuple>;
readonly functionMap?: null | FBSourceFunctionMap;
readonly path: string;
readonly source: string;
readonly code: string;
readonly isIgnored: boolean;
readonly lineCount?: number;
}>, offsetLines?: number): Promise<Generator>;
/**
* Transforms a standard source map object into a Raw Mappings object, to be
* used across the bundler.
*/
declare function toBabelSegments(sourceMap: BasicSourceMap): Array<any>;
declare function toSegmentTuple(mapping: any): MetroSourceMapSegmentTuple;
export { BundleBuilder, composeSourceMaps, Consumer, createIndexMap, generateFunctionMap, fromRawMappings, fromRawMappingsNonBlocking, functionMapBabelPlugin, normalizeSourcePath, toBabelSegments, toSegmentTuple };
/**
* Backwards-compatibility with CommonJS consumers using interopRequireDefault.
* Do not add to this list.
*
* @deprecated Default import from 'metro-source-map' is deprecated, use named exports.
*/