|
@@ -0,0 +1,267 @@
|
|
|
+// This file is auto-generated! Do not modify it directly.
|
|
|
+/* eslint-disable @typescript-eslint/consistent-type-imports, @typescript-eslint/no-redundant-type-constituents */
|
|
|
+import * as _babel_types from '@babel/types';
|
|
|
+
|
|
|
+type BABEL_8_BREAKING = false;
|
|
|
+type IF_BABEL_7<V> = false extends BABEL_8_BREAKING ? V : never;
|
|
|
+
|
|
|
+type Plugin =
|
|
|
+ | "asyncDoExpressions"
|
|
|
+ | IF_BABEL_7<"asyncGenerators">
|
|
|
+ | IF_BABEL_7<"bigInt">
|
|
|
+ | IF_BABEL_7<"classPrivateMethods">
|
|
|
+ | IF_BABEL_7<"classPrivateProperties">
|
|
|
+ | IF_BABEL_7<"classProperties">
|
|
|
+ | IF_BABEL_7<"classStaticBlock">
|
|
|
+ | IF_BABEL_7<"decimal">
|
|
|
+ | "decorators-legacy"
|
|
|
+ | "deferredImportEvaluation"
|
|
|
+ | "decoratorAutoAccessors"
|
|
|
+ | "destructuringPrivate"
|
|
|
+ | "deprecatedImportAssert"
|
|
|
+ | "doExpressions"
|
|
|
+ | IF_BABEL_7<"dynamicImport">
|
|
|
+ | "explicitResourceManagement"
|
|
|
+ | "exportDefaultFrom"
|
|
|
+ | IF_BABEL_7<"exportNamespaceFrom">
|
|
|
+ | "flow"
|
|
|
+ | "flowComments"
|
|
|
+ | "functionBind"
|
|
|
+ | "functionSent"
|
|
|
+ | "importMeta"
|
|
|
+ | "jsx"
|
|
|
+ | IF_BABEL_7<"jsonStrings">
|
|
|
+ | IF_BABEL_7<"logicalAssignment">
|
|
|
+ | IF_BABEL_7<"importAssertions">
|
|
|
+ | IF_BABEL_7<"importReflection">
|
|
|
+ | "moduleBlocks"
|
|
|
+ | IF_BABEL_7<"moduleStringNames">
|
|
|
+ | IF_BABEL_7<"nullishCoalescingOperator">
|
|
|
+ | IF_BABEL_7<"numericSeparator">
|
|
|
+ | IF_BABEL_7<"objectRestSpread">
|
|
|
+ | IF_BABEL_7<"optionalCatchBinding">
|
|
|
+ | IF_BABEL_7<"optionalChaining">
|
|
|
+ | "partialApplication"
|
|
|
+ | "placeholders"
|
|
|
+ | IF_BABEL_7<"privateIn">
|
|
|
+ | IF_BABEL_7<"regexpUnicodeSets">
|
|
|
+ | "sourcePhaseImports"
|
|
|
+ | "throwExpressions"
|
|
|
+ | IF_BABEL_7<"topLevelAwait">
|
|
|
+ | "v8intrinsic"
|
|
|
+ | ParserPluginWithOptions[0];
|
|
|
+
|
|
|
+type ParserPluginWithOptions =
|
|
|
+ | ["decorators", DecoratorsPluginOptions]
|
|
|
+ | ["estree", { classFeatures?: boolean }]
|
|
|
+ | IF_BABEL_7<["importAttributes", { deprecatedAssertSyntax: boolean }]>
|
|
|
+ | IF_BABEL_7<["moduleAttributes", { version: "may-2020" }]>
|
|
|
+ | ["optionalChainingAssign", { version: "2023-07" }]
|
|
|
+ | ["pipelineOperator", PipelineOperatorPluginOptions]
|
|
|
+ | ["recordAndTuple", RecordAndTuplePluginOptions]
|
|
|
+ | ["flow", FlowPluginOptions]
|
|
|
+ | ["typescript", TypeScriptPluginOptions];
|
|
|
+
|
|
|
+type PluginConfig = Plugin | ParserPluginWithOptions;
|
|
|
+
|
|
|
+interface DecoratorsPluginOptions {
|
|
|
+ decoratorsBeforeExport?: boolean;
|
|
|
+ allowCallParenthesized?: boolean;
|
|
|
+}
|
|
|
+
|
|
|
+interface PipelineOperatorPluginOptions {
|
|
|
+ proposal: BABEL_8_BREAKING extends false
|
|
|
+ ? "minimal" | "fsharp" | "hack" | "smart"
|
|
|
+ : "fsharp" | "hack";
|
|
|
+ topicToken?: "%" | "#" | "@@" | "^^" | "^";
|
|
|
+}
|
|
|
+
|
|
|
+interface RecordAndTuplePluginOptions {
|
|
|
+ syntaxType: "bar" | "hash";
|
|
|
+}
|
|
|
+
|
|
|
+type FlowPluginOptions = BABEL_8_BREAKING extends true
|
|
|
+ ? {
|
|
|
+ all?: boolean;
|
|
|
+ enums?: boolean;
|
|
|
+ }
|
|
|
+ : {
|
|
|
+ all?: boolean;
|
|
|
+ };
|
|
|
+
|
|
|
+interface TypeScriptPluginOptions {
|
|
|
+ dts?: boolean;
|
|
|
+ disallowAmbiguousJSXLike?: boolean;
|
|
|
+}
|
|
|
+
|
|
|
+// Type definitions for @babel/parser
|
|
|
+// Project: https://github.com/babel/babel/tree/main/packages/babel-parser
|
|
|
+// Definitions by: Troy Gerwien <https://github.com/yortus>
|
|
|
+// Marvin Hagemeister <https://github.com/marvinhagemeister>
|
|
|
+// Avi Vahl <https://github.com/AviVahl>
|
|
|
+// TypeScript Version: 2.9
|
|
|
+
|
|
|
+/**
|
|
|
+ * Parse the provided code as an entire ECMAScript program.
|
|
|
+ */
|
|
|
+declare function parse(
|
|
|
+ input: string,
|
|
|
+ options?: ParserOptions
|
|
|
+): ParseResult<_babel_types.File>;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Parse the provided code as a single expression.
|
|
|
+ */
|
|
|
+declare function parseExpression(
|
|
|
+ input: string,
|
|
|
+ options?: ParserOptions
|
|
|
+): ParseResult<_babel_types.Expression>;
|
|
|
+
|
|
|
+interface ParserOptions {
|
|
|
+ /**
|
|
|
+ * By default, import and export declarations can only appear at a program's top level.
|
|
|
+ * Setting this option to true allows them anywhere where a statement is allowed.
|
|
|
+ */
|
|
|
+ allowImportExportEverywhere?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, await use is not allowed outside of an async function.
|
|
|
+ * Set this to true to accept such code.
|
|
|
+ */
|
|
|
+ allowAwaitOutsideFunction?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, a return statement at the top level raises an error.
|
|
|
+ * Set this to true to accept such code.
|
|
|
+ */
|
|
|
+ allowReturnOutsideFunction?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, new.target use is not allowed outside of a function or class.
|
|
|
+ * Set this to true to accept such code.
|
|
|
+ */
|
|
|
+ allowNewTargetOutsideFunction?: boolean;
|
|
|
+
|
|
|
+ allowSuperOutsideMethod?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, exported identifiers must refer to a declared variable.
|
|
|
+ * Set this to true to allow export statements to reference undeclared variables.
|
|
|
+ */
|
|
|
+ allowUndeclaredExports?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, Babel parser JavaScript code according to Annex B syntax.
|
|
|
+ * Set this to `false` to disable such behavior.
|
|
|
+ */
|
|
|
+ annexB?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, Babel attaches comments to adjacent AST nodes.
|
|
|
+ * When this option is set to false, comments are not attached.
|
|
|
+ * It can provide up to 30% performance improvement when the input code has many comments.
|
|
|
+ * @babel/eslint-parser will set it for you.
|
|
|
+ * It is not recommended to use attachComment: false with Babel transform,
|
|
|
+ * as doing so removes all the comments in output code, and renders annotations such as
|
|
|
+ * /* istanbul ignore next *\/ nonfunctional.
|
|
|
+ */
|
|
|
+ attachComment?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, Babel always throws an error when it finds some invalid code.
|
|
|
+ * When this option is set to true, it will store the parsing error and
|
|
|
+ * try to continue parsing the invalid input file.
|
|
|
+ */
|
|
|
+ errorRecovery?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Indicate the mode the code should be parsed in.
|
|
|
+ * Can be one of "script", "module", or "unambiguous". Defaults to "script".
|
|
|
+ * "unambiguous" will make @babel/parser attempt to guess, based on the presence
|
|
|
+ * of ES6 import or export statements.
|
|
|
+ * Files with ES6 imports and exports are considered "module" and are otherwise "script".
|
|
|
+ */
|
|
|
+ sourceType?: "script" | "module" | "unambiguous";
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Correlate output AST nodes with their source filename.
|
|
|
+ * Useful when generating code and source maps from the ASTs of multiple input files.
|
|
|
+ */
|
|
|
+ sourceFilename?: string;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, all source indexes start from 0.
|
|
|
+ * You can provide a start index to alternatively start with.
|
|
|
+ * Useful for integration with other source tools.
|
|
|
+ */
|
|
|
+ startIndex?: number;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, the first line of code parsed is treated as line 1.
|
|
|
+ * You can provide a line number to alternatively start with.
|
|
|
+ * Useful for integration with other source tools.
|
|
|
+ */
|
|
|
+ startLine?: number;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, the parsed code is treated as if it starts from line 1, column 0.
|
|
|
+ * You can provide a column number to alternatively start with.
|
|
|
+ * Useful for integration with other source tools.
|
|
|
+ */
|
|
|
+ startColumn?: number;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Array containing the plugins that you want to enable.
|
|
|
+ */
|
|
|
+ plugins?: ParserPlugin[];
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Should the parser work in strict mode.
|
|
|
+ * Defaults to true if sourceType === 'module'. Otherwise, false.
|
|
|
+ */
|
|
|
+ strictMode?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Adds a ranges property to each node: [node.start, node.end]
|
|
|
+ */
|
|
|
+ ranges?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Adds all parsed tokens to a tokens property on the File node.
|
|
|
+ */
|
|
|
+ tokens?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * By default, the parser adds information about parentheses by setting
|
|
|
+ * `extra.parenthesized` to `true` as needed.
|
|
|
+ * When this option is `true` the parser creates `ParenthesizedExpression`
|
|
|
+ * AST nodes instead of using the `extra` property.
|
|
|
+ */
|
|
|
+ createParenthesizedExpressions?: boolean;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * The default is false in Babel 7 and true in Babel 8
|
|
|
+ * Set this to true to parse it as an `ImportExpression` node.
|
|
|
+ * Otherwise `import(foo)` is parsed as `CallExpression(Import, [Identifier(foo)])`.
|
|
|
+ */
|
|
|
+ createImportExpressions?: boolean;
|
|
|
+}
|
|
|
+
|
|
|
+type ParserPlugin = PluginConfig;
|
|
|
+
|
|
|
+
|
|
|
+declare const tokTypes: {
|
|
|
+ // todo(flow->ts) real token type
|
|
|
+ [name: string]: any;
|
|
|
+};
|
|
|
+
|
|
|
+interface ParseError {
|
|
|
+ code: string;
|
|
|
+ reasonCode: string;
|
|
|
+}
|
|
|
+
|
|
|
+type ParseResult<Result> = Result & {
|
|
|
+ errors: ParseError[];
|
|
|
+};
|
|
|
+
|
|
|
+export { DecoratorsPluginOptions, FlowPluginOptions, ParseError, ParseResult, ParserOptions, ParserPlugin, ParserPluginWithOptions, PipelineOperatorPluginOptions, RecordAndTuplePluginOptions, TypeScriptPluginOptions, parse, parseExpression, tokTypes };
|