From 30bb5a58bda9244ce169ce50792e396582e8c0d2 Mon Sep 17 00:00:00 2001 From: Rob Hogan Date: Mon, 22 Jun 2026 04:41:28 -0700 Subject: [PATCH] Flow: add `decodedMap` to Babel type definitions Summary: Adds missing types for `babel/generator`'s `result.decodedMap`, added to Babel in https://github.com/babel/babel/pull/14497 (v7.17.10) https://babeljs.io/docs/babel-generator/#result We'll use this in Metro for more efficient source map generation. Changelog: [Internal] Reviewed By: GijsWeterings Differential Revision: D109247419 --- flow-typed/npm/babel_v7.x.x.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/flow-typed/npm/babel_v7.x.x.js b/flow-typed/npm/babel_v7.x.x.js index 4da72d6b7d54..abba5ac2cb69 100644 --- a/flow-typed/npm/babel_v7.x.x.js +++ b/flow-typed/npm/babel_v7.x.x.js @@ -28,6 +28,24 @@ type _BabelSourceMapSegment = { ... }; +// A "decoded" source map (as produced by `@jridgewell/gen-mapping`), grouped by +// generated line. Segment fields are all 0-based: generated column, source +// index, source line, source column, name index. +type _BabelDecodedSourceMapSegment = + | [number] + | [number, number, number, number] + | [number, number, number, number, number]; + +type _BabelDecodedSourceMap = Readonly<{ + file?: string, + mappings: Array>, + names: Array, + sourceRoot?: string, + sources: Array, + sourcesContent?: Array, + version: number, +}>; + export type BabelSourceLocation = Readonly<{ start: Readonly<{line: number, column: number}>, end: Readonly<{line: number, column: number}>, @@ -1111,6 +1129,7 @@ declare module '@babel/generator' { declare export type GeneratorResult = { code: string, map: ?_BabelSourceMap, + decodedMap: ?_BabelDecodedSourceMap, rawMappings: ?Array, };