Commit 956c501c authored by DatHV's avatar DatHV
Browse files

update build x-app-sdk

parent 9bb8aadd
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = getFunctionName;
var _index = require("../validators/generated/index.js");
function getNameFromLiteralId(id) {
if ((0, _index.isNullLiteral)(id)) {
return "null";
}
if ((0, _index.isRegExpLiteral)(id)) {
return `/${id.pattern}/${id.flags}`;
}
if ((0, _index.isTemplateLiteral)(id)) {
return id.quasis.map(quasi => quasi.value.raw).join("");
}
if (id.value !== undefined) {
return String(id.value);
}
return null;
}
function getObjectMemberKey(node) {
if (!node.computed || (0, _index.isLiteral)(node.key)) {
return node.key;
}
}
function getFunctionName(node, parent) {
if ("id" in node && node.id) {
return {
name: node.id.name,
originalNode: node.id
};
}
let prefix = "";
let id;
if ((0, _index.isObjectProperty)(parent, {
value: node
})) {
id = getObjectMemberKey(parent);
} else if ((0, _index.isObjectMethod)(node) || (0, _index.isClassMethod)(node)) {
id = getObjectMemberKey(node);
if (node.kind === "get") prefix = "get ";else if (node.kind === "set") prefix = "set ";
} else if ((0, _index.isVariableDeclarator)(parent, {
init: node
})) {
id = parent.id;
} else if ((0, _index.isAssignmentExpression)(parent, {
operator: "=",
right: node
})) {
id = parent.left;
}
if (!id) return null;
const name = (0, _index.isLiteral)(id) ? getNameFromLiteralId(id) : (0, _index.isIdentifier)(id) ? id.name : (0, _index.isPrivateName)(id) ? id.id.name : null;
if (name == null) return null;
return {
name: prefix + name,
originalNode: id
};
}
//# sourceMappingURL=getFunctionName.js.map
{"version":3,"names":["_index","require","getNameFromLiteralId","id","isNullLiteral","isRegExpLiteral","pattern","flags","isTemplateLiteral","quasis","map","quasi","value","raw","join","undefined","String","getObjectMemberKey","node","computed","isLiteral","key","getFunctionName","parent","name","originalNode","prefix","isObjectProperty","isObjectMethod","isClassMethod","kind","isVariableDeclarator","init","isAssignmentExpression","operator","right","left","isIdentifier","isPrivateName"],"sources":["../../src/retrievers/getFunctionName.ts"],"sourcesContent":["import type * as t from \"../index.ts\";\n\nimport {\n isAssignmentExpression,\n isClassMethod,\n isIdentifier,\n isLiteral,\n isNullLiteral,\n isObjectMethod,\n isObjectProperty,\n isPrivateName,\n isRegExpLiteral,\n isTemplateLiteral,\n isVariableDeclarator,\n} from \"../validators/generated/index.ts\";\n\nfunction getNameFromLiteralId(id: t.Literal): string {\n if (isNullLiteral(id)) {\n return \"null\";\n }\n\n if (isRegExpLiteral(id)) {\n return `/${id.pattern}/${id.flags}`;\n }\n\n if (isTemplateLiteral(id)) {\n return id.quasis.map(quasi => quasi.value.raw).join(\"\");\n }\n\n if (id.value !== undefined) {\n return String(id.value);\n }\n\n return null;\n}\n\nfunction getObjectMemberKey(\n node: t.ObjectProperty | t.ObjectMethod | t.ClassProperty | t.ClassMethod,\n): t.Expression | t.PrivateName {\n if (!node.computed || isLiteral(node.key)) {\n return node.key;\n }\n}\n\ntype GetFunctionNameResult = {\n name: string;\n originalNode: t.Node;\n} | null;\n\nexport default function getFunctionName(\n node: t.ObjectMethod | t.ClassMethod,\n): GetFunctionNameResult;\nexport default function getFunctionName(\n node: t.Function | t.Class,\n parent: t.Node,\n): GetFunctionNameResult;\nexport default function getFunctionName(\n node: t.Function | t.Class,\n parent?: t.Node,\n): GetFunctionNameResult {\n if (\"id\" in node && node.id) {\n return {\n name: node.id.name,\n originalNode: node.id,\n };\n }\n\n let prefix = \"\";\n\n let id;\n if (isObjectProperty(parent, { value: node })) {\n // { foo: () => {} };\n id = getObjectMemberKey(parent);\n } else if (isObjectMethod(node) || isClassMethod(node)) {\n // { foo() {} };\n id = getObjectMemberKey(node);\n if (node.kind === \"get\") prefix = \"get \";\n else if (node.kind === \"set\") prefix = \"set \";\n } else if (isVariableDeclarator(parent, { init: node })) {\n // let foo = function () {};\n id = parent.id;\n } else if (isAssignmentExpression(parent, { operator: \"=\", right: node })) {\n // foo = function () {};\n id = parent.left;\n }\n\n if (!id) return null;\n\n const name = isLiteral(id)\n ? getNameFromLiteralId(id)\n : isIdentifier(id)\n ? id.name\n : isPrivateName(id)\n ? id.id.name\n : null;\n if (name == null) return null;\n\n return { name: prefix + name, originalNode: id };\n}\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAcA,SAASC,oBAAoBA,CAACC,EAAa,EAAU;EACnD,IAAI,IAAAC,oBAAa,EAACD,EAAE,CAAC,EAAE;IACrB,OAAO,MAAM;EACf;EAEA,IAAI,IAAAE,sBAAe,EAACF,EAAE,CAAC,EAAE;IACvB,OAAO,IAAIA,EAAE,CAACG,OAAO,IAAIH,EAAE,CAACI,KAAK,EAAE;EACrC;EAEA,IAAI,IAAAC,wBAAiB,EAACL,EAAE,CAAC,EAAE;IACzB,OAAOA,EAAE,CAACM,MAAM,CAACC,GAAG,CAACC,KAAK,IAAIA,KAAK,CAACC,KAAK,CAACC,GAAG,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC;EACzD;EAEA,IAAIX,EAAE,CAACS,KAAK,KAAKG,SAAS,EAAE;IAC1B,OAAOC,MAAM,CAACb,EAAE,CAACS,KAAK,CAAC;EACzB;EAEA,OAAO,IAAI;AACb;AAEA,SAASK,kBAAkBA,CACzBC,IAAyE,EAC3C;EAC9B,IAAI,CAACA,IAAI,CAACC,QAAQ,IAAI,IAAAC,gBAAS,EAACF,IAAI,CAACG,GAAG,CAAC,EAAE;IACzC,OAAOH,IAAI,CAACG,GAAG;EACjB;AACF;AAce,SAASC,eAAeA,CACrCJ,IAA0B,EAC1BK,MAAe,EACQ;EACvB,IAAI,IAAI,IAAIL,IAAI,IAAIA,IAAI,CAACf,EAAE,EAAE;IAC3B,OAAO;MACLqB,IAAI,EAAEN,IAAI,CAACf,EAAE,CAACqB,IAAI;MAClBC,YAAY,EAAEP,IAAI,CAACf;IACrB,CAAC;EACH;EAEA,IAAIuB,MAAM,GAAG,EAAE;EAEf,IAAIvB,EAAE;EACN,IAAI,IAAAwB,uBAAgB,EAACJ,MAAM,EAAE;IAAEX,KAAK,EAAEM;EAAK,CAAC,CAAC,EAAE;IAE7Cf,EAAE,GAAGc,kBAAkB,CAACM,MAAM,CAAC;EACjC,CAAC,MAAM,IAAI,IAAAK,qBAAc,EAACV,IAAI,CAAC,IAAI,IAAAW,oBAAa,EAACX,IAAI,CAAC,EAAE;IAEtDf,EAAE,GAAGc,kBAAkB,CAACC,IAAI,CAAC;IAC7B,IAAIA,IAAI,CAACY,IAAI,KAAK,KAAK,EAAEJ,MAAM,GAAG,MAAM,CAAC,KACpC,IAAIR,IAAI,CAACY,IAAI,KAAK,KAAK,EAAEJ,MAAM,GAAG,MAAM;EAC/C,CAAC,MAAM,IAAI,IAAAK,2BAAoB,EAACR,MAAM,EAAE;IAAES,IAAI,EAAEd;EAAK,CAAC,CAAC,EAAE;IAEvDf,EAAE,GAAGoB,MAAM,CAACpB,EAAE;EAChB,CAAC,MAAM,IAAI,IAAA8B,6BAAsB,EAACV,MAAM,EAAE;IAAEW,QAAQ,EAAE,GAAG;IAAEC,KAAK,EAAEjB;EAAK,CAAC,CAAC,EAAE;IAEzEf,EAAE,GAAGoB,MAAM,CAACa,IAAI;EAClB;EAEA,IAAI,CAACjC,EAAE,EAAE,OAAO,IAAI;EAEpB,MAAMqB,IAAI,GAAG,IAAAJ,gBAAS,EAACjB,EAAE,CAAC,GACtBD,oBAAoB,CAACC,EAAE,CAAC,GACxB,IAAAkC,mBAAY,EAAClC,EAAE,CAAC,GACdA,EAAE,CAACqB,IAAI,GACP,IAAAc,oBAAa,EAACnC,EAAE,CAAC,GACfA,EAAE,CAACA,EAAE,CAACqB,IAAI,GACV,IAAI;EACZ,IAAIA,IAAI,IAAI,IAAI,EAAE,OAAO,IAAI;EAE7B,OAAO;IAAEA,IAAI,EAAEE,MAAM,GAAGF,IAAI;IAAEC,YAAY,EAAEtB;EAAG,CAAC;AAClD","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _getBindingIdentifiers = require("./getBindingIdentifiers.js");
var _default = exports.default = getOuterBindingIdentifiers;
function getOuterBindingIdentifiers(node, duplicates) {
return (0, _getBindingIdentifiers.default)(node, duplicates, true);
}
//# sourceMappingURL=getOuterBindingIdentifiers.js.map
{"version":3,"names":["_getBindingIdentifiers","require","_default","exports","default","getOuterBindingIdentifiers","node","duplicates","getBindingIdentifiers"],"sources":["../../src/retrievers/getOuterBindingIdentifiers.ts"],"sourcesContent":["import getBindingIdentifiers from \"./getBindingIdentifiers.ts\";\nimport type * as t from \"../index.ts\";\n\nexport default getOuterBindingIdentifiers as {\n (node: t.Node, duplicates: true): Record<string, Array<t.Identifier>>;\n (node: t.Node, duplicates?: false): Record<string, t.Identifier>;\n (\n node: t.Node,\n duplicates?: boolean,\n ): Record<string, t.Identifier> | Record<string, Array<t.Identifier>>;\n};\n\nfunction getOuterBindingIdentifiers(\n node: t.Node,\n duplicates: boolean,\n): Record<string, t.Identifier> | Record<string, Array<t.Identifier>> {\n return getBindingIdentifiers(node, duplicates, true);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AAA+D,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGhDC,0BAA0B;AASzC,SAASA,0BAA0BA,CACjCC,IAAY,EACZC,UAAmB,EACiD;EACpE,OAAO,IAAAC,8BAAqB,EAACF,IAAI,EAAEC,UAAU,EAAE,IAAI,CAAC;AACtD","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = traverse;
var _index = require("../definitions/index.js");
function traverse(node, handlers, state) {
if (typeof handlers === "function") {
handlers = {
enter: handlers
};
}
const {
enter,
exit
} = handlers;
traverseSimpleImpl(node, enter, exit, state, []);
}
function traverseSimpleImpl(node, enter, exit, state, ancestors) {
const keys = _index.VISITOR_KEYS[node.type];
if (!keys) return;
if (enter) enter(node, ancestors, state);
for (const key of keys) {
const subNode = node[key];
if (Array.isArray(subNode)) {
for (let i = 0; i < subNode.length; i++) {
const child = subNode[i];
if (!child) continue;
ancestors.push({
node,
key,
index: i
});
traverseSimpleImpl(child, enter, exit, state, ancestors);
ancestors.pop();
}
} else if (subNode) {
ancestors.push({
node,
key
});
traverseSimpleImpl(subNode, enter, exit, state, ancestors);
ancestors.pop();
}
}
if (exit) exit(node, ancestors, state);
}
//# sourceMappingURL=traverse.js.map
{"version":3,"names":["_index","require","traverse","node","handlers","state","enter","exit","traverseSimpleImpl","ancestors","keys","VISITOR_KEYS","type","key","subNode","Array","isArray","i","length","child","push","index","pop"],"sources":["../../src/traverse/traverse.ts"],"sourcesContent":["import { VISITOR_KEYS } from \"../definitions/index.ts\";\nimport type * as t from \"../index.ts\";\n\nexport type TraversalAncestors = Array<{\n node: t.Node;\n key: string;\n index?: number;\n}>;\n\nexport type TraversalHandler<T> = (\n this: undefined,\n node: t.Node,\n parent: TraversalAncestors,\n state: T,\n) => void;\n\nexport type TraversalHandlers<T> = {\n enter?: TraversalHandler<T>;\n exit?: TraversalHandler<T>;\n};\n\n/**\n * A general AST traversal with both prefix and postfix handlers, and a\n * state object. Exposes ancestry data to each handler so that more complex\n * AST data can be taken into account.\n */\nexport default function traverse<T>(\n node: t.Node,\n handlers: TraversalHandler<T> | TraversalHandlers<T>,\n state?: T,\n): void {\n if (typeof handlers === \"function\") {\n handlers = { enter: handlers };\n }\n\n const { enter, exit } = handlers;\n\n traverseSimpleImpl(node, enter, exit, state, []);\n}\n\nfunction traverseSimpleImpl<T>(\n node: any,\n enter: Function | undefined,\n exit: Function | undefined,\n state: T | undefined,\n ancestors: TraversalAncestors,\n) {\n const keys = VISITOR_KEYS[node.type];\n if (!keys) return;\n\n if (enter) enter(node, ancestors, state);\n\n for (const key of keys) {\n const subNode = node[key];\n\n if (Array.isArray(subNode)) {\n for (let i = 0; i < subNode.length; i++) {\n const child = subNode[i];\n if (!child) continue;\n\n ancestors.push({\n node,\n key,\n index: i,\n });\n\n traverseSimpleImpl(child, enter, exit, state, ancestors);\n\n ancestors.pop();\n }\n } else if (subNode) {\n ancestors.push({\n node,\n key,\n });\n\n traverseSimpleImpl(subNode, enter, exit, state, ancestors);\n\n ancestors.pop();\n }\n }\n\n if (exit) exit(node, ancestors, state);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AA0Be,SAASC,QAAQA,CAC9BC,IAAY,EACZC,QAAoD,EACpDC,KAAS,EACH;EACN,IAAI,OAAOD,QAAQ,KAAK,UAAU,EAAE;IAClCA,QAAQ,GAAG;MAAEE,KAAK,EAAEF;IAAS,CAAC;EAChC;EAEA,MAAM;IAAEE,KAAK;IAAEC;EAAK,CAAC,GAAGH,QAAQ;EAEhCI,kBAAkB,CAACL,IAAI,EAAEG,KAAK,EAAEC,IAAI,EAAEF,KAAK,EAAE,EAAE,CAAC;AAClD;AAEA,SAASG,kBAAkBA,CACzBL,IAAS,EACTG,KAA2B,EAC3BC,IAA0B,EAC1BF,KAAoB,EACpBI,SAA6B,EAC7B;EACA,MAAMC,IAAI,GAAGC,mBAAY,CAACR,IAAI,CAACS,IAAI,CAAC;EACpC,IAAI,CAACF,IAAI,EAAE;EAEX,IAAIJ,KAAK,EAAEA,KAAK,CAACH,IAAI,EAAEM,SAAS,EAAEJ,KAAK,CAAC;EAExC,KAAK,MAAMQ,GAAG,IAAIH,IAAI,EAAE;IACtB,MAAMI,OAAO,GAAGX,IAAI,CAACU,GAAG,CAAC;IAEzB,IAAIE,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;MAC1B,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,OAAO,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;QACvC,MAAME,KAAK,GAAGL,OAAO,CAACG,CAAC,CAAC;QACxB,IAAI,CAACE,KAAK,EAAE;QAEZV,SAAS,CAACW,IAAI,CAAC;UACbjB,IAAI;UACJU,GAAG;UACHQ,KAAK,EAAEJ;QACT,CAAC,CAAC;QAEFT,kBAAkB,CAACW,KAAK,EAAEb,KAAK,EAAEC,IAAI,EAAEF,KAAK,EAAEI,SAAS,CAAC;QAExDA,SAAS,CAACa,GAAG,CAAC,CAAC;MACjB;IACF,CAAC,MAAM,IAAIR,OAAO,EAAE;MAClBL,SAAS,CAACW,IAAI,CAAC;QACbjB,IAAI;QACJU;MACF,CAAC,CAAC;MAEFL,kBAAkB,CAACM,OAAO,EAAER,KAAK,EAAEC,IAAI,EAAEF,KAAK,EAAEI,SAAS,CAAC;MAE1DA,SAAS,CAACa,GAAG,CAAC,CAAC;IACjB;EACF;EAEA,IAAIf,IAAI,EAAEA,IAAI,CAACJ,IAAI,EAAEM,SAAS,EAAEJ,KAAK,CAAC;AACxC","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = traverseFast;
var _index = require("../definitions/index.js");
const _skip = Symbol();
const _stop = Symbol();
function traverseFast(node, enter, opts) {
if (!node) return false;
const keys = _index.VISITOR_KEYS[node.type];
if (!keys) return false;
opts = opts || {};
const ret = enter(node, opts);
if (ret !== undefined) {
switch (ret) {
case _skip:
return false;
case _stop:
return true;
}
}
for (const key of keys) {
const subNode = node[key];
if (!subNode) continue;
if (Array.isArray(subNode)) {
for (const node of subNode) {
if (traverseFast(node, enter, opts)) return true;
}
} else {
if (traverseFast(subNode, enter, opts)) return true;
}
}
return false;
}
traverseFast.skip = _skip;
traverseFast.stop = _stop;
//# sourceMappingURL=traverseFast.js.map
{"version":3,"names":["_index","require","_skip","Symbol","_stop","traverseFast","node","enter","opts","keys","VISITOR_KEYS","type","ret","undefined","key","subNode","Array","isArray","skip","stop"],"sources":["../../src/traverse/traverseFast.ts"],"sourcesContent":["import { VISITOR_KEYS } from \"../definitions/index.ts\";\nimport type * as t from \"../index.ts\";\n\nconst _skip = Symbol();\nconst _stop = Symbol();\n\n/**\n * A prefix AST traversal implementation meant for simple searching and processing.\n * @param enter The callback can return `traverseFast.skip` to skip the subtree of the current node, or `traverseFast.stop` to stop the traversal.\n * @returns `true` if the traversal was stopped by callback, `false` otherwise.\n */\nexport default function traverseFast<Options = object>(\n node: t.Node | null | undefined,\n enter: (\n node: t.Node,\n opts?: Options,\n ) => void | typeof traverseFast.skip | typeof traverseFast.stop,\n opts?: Options,\n): boolean {\n if (!node) return false;\n\n const keys = VISITOR_KEYS[node.type];\n if (!keys) return false;\n\n opts = opts || ({} as Options);\n const ret = enter(node, opts);\n if (ret !== undefined) {\n switch (ret) {\n case _skip:\n return false;\n case _stop:\n return true;\n }\n }\n\n for (const key of keys) {\n const subNode: t.Node | undefined | null =\n // @ts-expect-error key must present in node\n node[key];\n\n if (!subNode) continue;\n\n if (Array.isArray(subNode)) {\n for (const node of subNode) {\n if (traverseFast(node, enter, opts)) return true;\n }\n } else {\n if (traverseFast(subNode, enter, opts)) return true;\n }\n }\n return false;\n}\n\ntraverseFast.skip = _skip;\ntraverseFast.stop = _stop;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,MAAMC,KAAK,GAAGC,MAAM,CAAC,CAAC;AACtB,MAAMC,KAAK,GAAGD,MAAM,CAAC,CAAC;AAOP,SAASE,YAAYA,CAClCC,IAA+B,EAC/BC,KAG+D,EAC/DC,IAAc,EACL;EACT,IAAI,CAACF,IAAI,EAAE,OAAO,KAAK;EAEvB,MAAMG,IAAI,GAAGC,mBAAY,CAACJ,IAAI,CAACK,IAAI,CAAC;EACpC,IAAI,CAACF,IAAI,EAAE,OAAO,KAAK;EAEvBD,IAAI,GAAGA,IAAI,IAAK,CAAC,CAAa;EAC9B,MAAMI,GAAG,GAAGL,KAAK,CAACD,IAAI,EAAEE,IAAI,CAAC;EAC7B,IAAII,GAAG,KAAKC,SAAS,EAAE;IACrB,QAAQD,GAAG;MACT,KAAKV,KAAK;QACR,OAAO,KAAK;MACd,KAAKE,KAAK;QACR,OAAO,IAAI;IACf;EACF;EAEA,KAAK,MAAMU,GAAG,IAAIL,IAAI,EAAE;IACtB,MAAMM,OAAkC,GAEtCT,IAAI,CAACQ,GAAG,CAAC;IAEX,IAAI,CAACC,OAAO,EAAE;IAEd,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;MAC1B,KAAK,MAAMT,IAAI,IAAIS,OAAO,EAAE;QAC1B,IAAIV,YAAY,CAACC,IAAI,EAAEC,KAAK,EAAEC,IAAI,CAAC,EAAE,OAAO,IAAI;MAClD;IACF,CAAC,MAAM;MACL,IAAIH,YAAY,CAACU,OAAO,EAAER,KAAK,EAAEC,IAAI,CAAC,EAAE,OAAO,IAAI;IACrD;EACF;EACA,OAAO,KAAK;AACd;AAEAH,YAAY,CAACa,IAAI,GAAGhB,KAAK;AACzBG,YAAY,CAACc,IAAI,GAAGf,KAAK","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = deprecationWarning;
const warnings = new Set();
function deprecationWarning(oldName, newName, prefix = "", cacheKey = oldName) {
if (warnings.has(cacheKey)) return;
warnings.add(cacheKey);
const {
internal,
trace
} = captureShortStackTrace(1, 2);
if (internal) {
return;
}
console.warn(`${prefix}\`${oldName}\` has been deprecated, please migrate to \`${newName}\`\n${trace}`);
}
function captureShortStackTrace(skip, length) {
const {
stackTraceLimit,
prepareStackTrace
} = Error;
let stackTrace;
Error.stackTraceLimit = 1 + skip + length;
Error.prepareStackTrace = function (err, stack) {
stackTrace = stack;
};
new Error().stack;
Error.stackTraceLimit = stackTraceLimit;
Error.prepareStackTrace = prepareStackTrace;
if (!stackTrace) return {
internal: false,
trace: ""
};
const shortStackTrace = stackTrace.slice(1 + skip, 1 + skip + length);
return {
internal: /[\\/]@babel[\\/]/.test(shortStackTrace[1].getFileName()),
trace: shortStackTrace.map(frame => ` at ${frame}`).join("\n")
};
}
//# sourceMappingURL=deprecationWarning.js.map
{"version":3,"names":["warnings","Set","deprecationWarning","oldName","newName","prefix","cacheKey","has","add","internal","trace","captureShortStackTrace","console","warn","skip","length","stackTraceLimit","prepareStackTrace","Error","stackTrace","err","stack","shortStackTrace","slice","test","getFileName","map","frame","join"],"sources":["../../src/utils/deprecationWarning.ts"],"sourcesContent":["const warnings = new Set();\n\nexport default function deprecationWarning(\n oldName: string,\n newName: string,\n prefix: string = \"\",\n cacheKey: string = oldName,\n) {\n if (warnings.has(cacheKey)) return;\n warnings.add(cacheKey);\n\n const { internal, trace } = captureShortStackTrace(1, 2);\n if (internal) {\n // If usage comes from an internal package, there is no point in warning because\n // 1. The new version of the package will already use the new API\n // 2. When the deprecation will become an error (in a future major version), users\n // will have to update every package anyway.\n return;\n }\n console.warn(\n `${prefix}\\`${oldName}\\` has been deprecated, please migrate to \\`${newName}\\`\\n${trace}`,\n );\n}\n\nfunction captureShortStackTrace(skip: number, length: number) {\n const { stackTraceLimit, prepareStackTrace } = Error;\n let stackTrace: NodeJS.CallSite[];\n // We add 1 to also take into account this function.\n Error.stackTraceLimit = 1 + skip + length;\n Error.prepareStackTrace = function (err, stack) {\n stackTrace = stack;\n };\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n new Error().stack;\n Error.stackTraceLimit = stackTraceLimit;\n Error.prepareStackTrace = prepareStackTrace;\n\n if (!stackTrace) return { internal: false, trace: \"\" };\n\n const shortStackTrace = stackTrace.slice(1 + skip, 1 + skip + length);\n return {\n internal: /[\\\\/]@babel[\\\\/]/.test(shortStackTrace[1].getFileName()),\n trace: shortStackTrace.map(frame => ` at ${frame}`).join(\"\\n\"),\n };\n}\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAG,IAAIC,GAAG,CAAC,CAAC;AAEX,SAASC,kBAAkBA,CACxCC,OAAe,EACfC,OAAe,EACfC,MAAc,GAAG,EAAE,EACnBC,QAAgB,GAAGH,OAAO,EAC1B;EACA,IAAIH,QAAQ,CAACO,GAAG,CAACD,QAAQ,CAAC,EAAE;EAC5BN,QAAQ,CAACQ,GAAG,CAACF,QAAQ,CAAC;EAEtB,MAAM;IAAEG,QAAQ;IAAEC;EAAM,CAAC,GAAGC,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC;EACxD,IAAIF,QAAQ,EAAE;IAKZ;EACF;EACAG,OAAO,CAACC,IAAI,CACV,GAAGR,MAAM,KAAKF,OAAO,+CAA+CC,OAAO,OAAOM,KAAK,EACzF,CAAC;AACH;AAEA,SAASC,sBAAsBA,CAACG,IAAY,EAAEC,MAAc,EAAE;EAC5D,MAAM;IAAEC,eAAe;IAAEC;EAAkB,CAAC,GAAGC,KAAK;EACpD,IAAIC,UAA6B;EAEjCD,KAAK,CAACF,eAAe,GAAG,CAAC,GAAGF,IAAI,GAAGC,MAAM;EACzCG,KAAK,CAACD,iBAAiB,GAAG,UAAUG,GAAG,EAAEC,KAAK,EAAE;IAC9CF,UAAU,GAAGE,KAAK;EACpB,CAAC;EAED,IAAIH,KAAK,CAAC,CAAC,CAACG,KAAK;EACjBH,KAAK,CAACF,eAAe,GAAGA,eAAe;EACvCE,KAAK,CAACD,iBAAiB,GAAGA,iBAAiB;EAE3C,IAAI,CAACE,UAAU,EAAE,OAAO;IAAEV,QAAQ,EAAE,KAAK;IAAEC,KAAK,EAAE;EAAG,CAAC;EAEtD,MAAMY,eAAe,GAAGH,UAAU,CAACI,KAAK,CAAC,CAAC,GAAGT,IAAI,EAAE,CAAC,GAAGA,IAAI,GAAGC,MAAM,CAAC;EACrE,OAAO;IACLN,QAAQ,EAAE,kBAAkB,CAACe,IAAI,CAACF,eAAe,CAAC,CAAC,CAAC,CAACG,WAAW,CAAC,CAAC,CAAC;IACnEf,KAAK,EAAEY,eAAe,CAACI,GAAG,CAACC,KAAK,IAAI,UAAUA,KAAK,EAAE,CAAC,CAACC,IAAI,CAAC,IAAI;EAClE,CAAC;AACH","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = inherit;
function inherit(key, child, parent) {
if (child && parent) {
child[key] = Array.from(new Set([].concat(child[key], parent[key]).filter(Boolean)));
}
}
//# sourceMappingURL=inherit.js.map
{"version":3,"names":["inherit","key","child","parent","Array","from","Set","concat","filter","Boolean"],"sources":["../../src/utils/inherit.ts"],"sourcesContent":["import type * as t from \"../index.ts\";\n\nexport default function inherit<\n C extends t.Node | undefined,\n P extends t.Node | undefined,\n>(key: keyof C & keyof P, child: C, parent: P): void {\n if (child && parent) {\n // @ts-expect-error Could further refine key definitions\n child[key] = Array.from(\n new Set([].concat(child[key], parent[key]).filter(Boolean)),\n );\n }\n}\n"],"mappings":";;;;;;AAEe,SAASA,OAAOA,CAG7BC,GAAsB,EAAEC,KAAQ,EAAEC,MAAS,EAAQ;EACnD,IAAID,KAAK,IAAIC,MAAM,EAAE;IAEnBD,KAAK,CAACD,GAAG,CAAC,GAAGG,KAAK,CAACC,IAAI,CACrB,IAAIC,GAAG,CAAC,EAAE,CAACC,MAAM,CAACL,KAAK,CAACD,GAAG,CAAC,EAAEE,MAAM,CAACF,GAAG,CAAC,CAAC,CAACO,MAAM,CAACC,OAAO,CAAC,CAC5D,CAAC;EACH;AACF","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = cleanJSXElementLiteralChild;
var _index = require("../../builders/generated/index.js");
var _index2 = require("../../index.js");
function cleanJSXElementLiteralChild(child, args) {
const lines = child.value.split(/\r\n|\n|\r/);
let lastNonEmptyLine = 0;
for (let i = 0; i < lines.length; i++) {
if (/[^ \t]/.exec(lines[i])) {
lastNonEmptyLine = i;
}
}
let str = "";
for (let i = 0; i < lines.length; i++) {
const line = lines[i];
const isFirstLine = i === 0;
const isLastLine = i === lines.length - 1;
const isLastNonEmptyLine = i === lastNonEmptyLine;
let trimmedLine = line.replace(/\t/g, " ");
if (!isFirstLine) {
trimmedLine = trimmedLine.replace(/^ +/, "");
}
if (!isLastLine) {
trimmedLine = trimmedLine.replace(/ +$/, "");
}
if (trimmedLine) {
if (!isLastNonEmptyLine) {
trimmedLine += " ";
}
str += trimmedLine;
}
}
if (str) args.push((0, _index2.inherits)((0, _index.stringLiteral)(str), child));
}
//# sourceMappingURL=cleanJSXElementLiteralChild.js.map
{"version":3,"names":["_index","require","_index2","cleanJSXElementLiteralChild","child","args","lines","value","split","lastNonEmptyLine","i","length","exec","str","line","isFirstLine","isLastLine","isLastNonEmptyLine","trimmedLine","replace","push","inherits","stringLiteral"],"sources":["../../../src/utils/react/cleanJSXElementLiteralChild.ts"],"sourcesContent":["import { stringLiteral } from \"../../builders/generated/index.ts\";\nimport type * as t from \"../../index.ts\";\nimport { inherits } from \"../../index.ts\";\n\nexport default function cleanJSXElementLiteralChild(\n child: t.JSXText,\n args: Array<t.Node>,\n) {\n const lines = child.value.split(/\\r\\n|\\n|\\r/);\n\n let lastNonEmptyLine = 0;\n\n for (let i = 0; i < lines.length; i++) {\n if (/[^ \\t]/.exec(lines[i])) {\n lastNonEmptyLine = i;\n }\n }\n\n let str = \"\";\n\n for (let i = 0; i < lines.length; i++) {\n const line = lines[i];\n\n const isFirstLine = i === 0;\n const isLastLine = i === lines.length - 1;\n const isLastNonEmptyLine = i === lastNonEmptyLine;\n\n // replace rendered whitespace tabs with spaces\n let trimmedLine = line.replace(/\\t/g, \" \");\n\n // trim whitespace touching a newline\n if (!isFirstLine) {\n trimmedLine = trimmedLine.replace(/^ +/, \"\");\n }\n\n // trim whitespace touching an endline\n if (!isLastLine) {\n trimmedLine = trimmedLine.replace(/ +$/, \"\");\n }\n\n if (trimmedLine) {\n if (!isLastNonEmptyLine) {\n trimmedLine += \" \";\n }\n\n str += trimmedLine;\n }\n }\n\n if (str) args.push(inherits(stringLiteral(str), child));\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAEe,SAASE,2BAA2BA,CACjDC,KAAgB,EAChBC,IAAmB,EACnB;EACA,MAAMC,KAAK,GAAGF,KAAK,CAACG,KAAK,CAACC,KAAK,CAAC,YAAY,CAAC;EAE7C,IAAIC,gBAAgB,GAAG,CAAC;EAExB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,KAAK,CAACK,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,IAAI,QAAQ,CAACE,IAAI,CAACN,KAAK,CAACI,CAAC,CAAC,CAAC,EAAE;MAC3BD,gBAAgB,GAAGC,CAAC;IACtB;EACF;EAEA,IAAIG,GAAG,GAAG,EAAE;EAEZ,KAAK,IAAIH,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGJ,KAAK,CAACK,MAAM,EAAED,CAAC,EAAE,EAAE;IACrC,MAAMI,IAAI,GAAGR,KAAK,CAACI,CAAC,CAAC;IAErB,MAAMK,WAAW,GAAGL,CAAC,KAAK,CAAC;IAC3B,MAAMM,UAAU,GAAGN,CAAC,KAAKJ,KAAK,CAACK,MAAM,GAAG,CAAC;IACzC,MAAMM,kBAAkB,GAAGP,CAAC,KAAKD,gBAAgB;IAGjD,IAAIS,WAAW,GAAGJ,IAAI,CAACK,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IAG1C,IAAI,CAACJ,WAAW,EAAE;MAChBG,WAAW,GAAGA,WAAW,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IAC9C;IAGA,IAAI,CAACH,UAAU,EAAE;MACfE,WAAW,GAAGA,WAAW,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IAC9C;IAEA,IAAID,WAAW,EAAE;MACf,IAAI,CAACD,kBAAkB,EAAE;QACvBC,WAAW,IAAI,GAAG;MACpB;MAEAL,GAAG,IAAIK,WAAW;IACpB;EACF;EAEA,IAAIL,GAAG,EAAER,IAAI,CAACe,IAAI,CAAC,IAAAC,gBAAQ,EAAC,IAAAC,oBAAa,EAACT,GAAG,CAAC,EAAET,KAAK,CAAC,CAAC;AACzD","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = shallowEqual;
function shallowEqual(actual, expected) {
const keys = Object.keys(expected);
for (const key of keys) {
if (actual[key] !== expected[key]) {
return false;
}
}
return true;
}
//# sourceMappingURL=shallowEqual.js.map
{"version":3,"names":["shallowEqual","actual","expected","keys","Object","key"],"sources":["../../src/utils/shallowEqual.ts"],"sourcesContent":["export default function shallowEqual<T extends object>(\n actual: object,\n expected: T,\n): actual is T {\n const keys = Object.keys(expected) as (keyof T)[];\n\n for (const key of keys) {\n if (\n // @ts-expect-error maybe we should check whether key exists first\n actual[key] !== expected[key]\n ) {\n return false;\n }\n }\n\n return true;\n}\n"],"mappings":";;;;;;AAAe,SAASA,YAAYA,CAClCC,MAAc,EACdC,QAAW,EACE;EACb,MAAMC,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACD,QAAQ,CAAgB;EAEjD,KAAK,MAAMG,GAAG,IAAIF,IAAI,EAAE;IACtB,IAEEF,MAAM,CAACI,GAAG,CAAC,KAAKH,QAAQ,CAACG,GAAG,CAAC,EAC7B;MACA,OAAO,KAAK;IACd;EACF;EAEA,OAAO,IAAI;AACb","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = buildMatchMemberExpression;
var _matchesPattern = require("./matchesPattern.js");
function buildMatchMemberExpression(match, allowPartial) {
const parts = match.split(".");
return member => (0, _matchesPattern.default)(member, parts, allowPartial);
}
//# sourceMappingURL=buildMatchMemberExpression.js.map
{"version":3,"names":["_matchesPattern","require","buildMatchMemberExpression","match","allowPartial","parts","split","member","matchesPattern"],"sources":["../../src/validators/buildMatchMemberExpression.ts"],"sourcesContent":["import matchesPattern from \"./matchesPattern.ts\";\nimport type * as t from \"../index.ts\";\n\n/**\n * Build a function that when called will return whether or not the\n * input `node` `MemberExpression` matches the input `match`.\n *\n * For example, given the match `React.createClass` it would match the\n * parsed nodes of `React.createClass` and `React[\"createClass\"]`.\n */\nexport default function buildMatchMemberExpression(\n match: string,\n allowPartial?: boolean,\n) {\n const parts = match.split(\".\");\n\n return (member: t.Node) => matchesPattern(member, parts, allowPartial);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAUe,SAASC,0BAA0BA,CAChDC,KAAa,EACbC,YAAsB,EACtB;EACA,MAAMC,KAAK,GAAGF,KAAK,CAACG,KAAK,CAAC,GAAG,CAAC;EAE9B,OAAQC,MAAc,IAAK,IAAAC,uBAAc,EAACD,MAAM,EAAEF,KAAK,EAAED,YAAY,CAAC;AACxE","ignoreList":[]}
\ No newline at end of file
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isAccessor = isAccessor;
exports.isAnyTypeAnnotation = isAnyTypeAnnotation;
exports.isArgumentPlaceholder = isArgumentPlaceholder;
exports.isArrayExpression = isArrayExpression;
exports.isArrayPattern = isArrayPattern;
exports.isArrayTypeAnnotation = isArrayTypeAnnotation;
exports.isArrowFunctionExpression = isArrowFunctionExpression;
exports.isAssignmentExpression = isAssignmentExpression;
exports.isAssignmentPattern = isAssignmentPattern;
exports.isAwaitExpression = isAwaitExpression;
exports.isBigIntLiteral = isBigIntLiteral;
exports.isBinary = isBinary;
exports.isBinaryExpression = isBinaryExpression;
exports.isBindExpression = isBindExpression;
exports.isBlock = isBlock;
exports.isBlockParent = isBlockParent;
exports.isBlockStatement = isBlockStatement;
exports.isBooleanLiteral = isBooleanLiteral;
exports.isBooleanLiteralTypeAnnotation = isBooleanLiteralTypeAnnotation;
exports.isBooleanTypeAnnotation = isBooleanTypeAnnotation;
exports.isBreakStatement = isBreakStatement;
exports.isCallExpression = isCallExpression;
exports.isCatchClause = isCatchClause;
exports.isClass = isClass;
exports.isClassAccessorProperty = isClassAccessorProperty;
exports.isClassBody = isClassBody;
exports.isClassDeclaration = isClassDeclaration;
exports.isClassExpression = isClassExpression;
exports.isClassImplements = isClassImplements;
exports.isClassMethod = isClassMethod;
exports.isClassPrivateMethod = isClassPrivateMethod;
exports.isClassPrivateProperty = isClassPrivateProperty;
exports.isClassProperty = isClassProperty;
exports.isCompletionStatement = isCompletionStatement;
exports.isConditional = isConditional;
exports.isConditionalExpression = isConditionalExpression;
exports.isContinueStatement = isContinueStatement;
exports.isDebuggerStatement = isDebuggerStatement;
exports.isDecimalLiteral = isDecimalLiteral;
exports.isDeclaration = isDeclaration;
exports.isDeclareClass = isDeclareClass;
exports.isDeclareExportAllDeclaration = isDeclareExportAllDeclaration;
exports.isDeclareExportDeclaration = isDeclareExportDeclaration;
exports.isDeclareFunction = isDeclareFunction;
exports.isDeclareInterface = isDeclareInterface;
exports.isDeclareModule = isDeclareModule;
exports.isDeclareModuleExports = isDeclareModuleExports;
exports.isDeclareOpaqueType = isDeclareOpaqueType;
exports.isDeclareTypeAlias = isDeclareTypeAlias;
exports.isDeclareVariable = isDeclareVariable;
exports.isDeclaredPredicate = isDeclaredPredicate;
exports.isDecorator = isDecorator;
exports.isDirective = isDirective;
exports.isDirectiveLiteral = isDirectiveLiteral;
exports.isDoExpression = isDoExpression;
exports.isDoWhileStatement = isDoWhileStatement;
exports.isEmptyStatement = isEmptyStatement;
exports.isEmptyTypeAnnotation = isEmptyTypeAnnotation;
exports.isEnumBody = isEnumBody;
exports.isEnumBooleanBody = isEnumBooleanBody;
exports.isEnumBooleanMember = isEnumBooleanMember;
exports.isEnumDeclaration = isEnumDeclaration;
exports.isEnumDefaultedMember = isEnumDefaultedMember;
exports.isEnumMember = isEnumMember;
exports.isEnumNumberBody = isEnumNumberBody;
exports.isEnumNumberMember = isEnumNumberMember;
exports.isEnumStringBody = isEnumStringBody;
exports.isEnumStringMember = isEnumStringMember;
exports.isEnumSymbolBody = isEnumSymbolBody;
exports.isExistsTypeAnnotation = isExistsTypeAnnotation;
exports.isExportAllDeclaration = isExportAllDeclaration;
exports.isExportDeclaration = isExportDeclaration;
exports.isExportDefaultDeclaration = isExportDefaultDeclaration;
exports.isExportDefaultSpecifier = isExportDefaultSpecifier;
exports.isExportNamedDeclaration = isExportNamedDeclaration;
exports.isExportNamespaceSpecifier = isExportNamespaceSpecifier;
exports.isExportSpecifier = isExportSpecifier;
exports.isExpression = isExpression;
exports.isExpressionStatement = isExpressionStatement;
exports.isExpressionWrapper = isExpressionWrapper;
exports.isFile = isFile;
exports.isFlow = isFlow;
exports.isFlowBaseAnnotation = isFlowBaseAnnotation;
exports.isFlowDeclaration = isFlowDeclaration;
exports.isFlowPredicate = isFlowPredicate;
exports.isFlowType = isFlowType;
exports.isFor = isFor;
exports.isForInStatement = isForInStatement;
exports.isForOfStatement = isForOfStatement;
exports.isForStatement = isForStatement;
exports.isForXStatement = isForXStatement;
exports.isFunction = isFunction;
exports.isFunctionDeclaration = isFunctionDeclaration;
exports.isFunctionExpression = isFunctionExpression;
exports.isFunctionParameter = isFunctionParameter;
exports.isFunctionParent = isFunctionParent;
exports.isFunctionTypeAnnotation = isFunctionTypeAnnotation;
exports.isFunctionTypeParam = isFunctionTypeParam;
exports.isGenericTypeAnnotation = isGenericTypeAnnotation;
exports.isIdentifier = isIdentifier;
exports.isIfStatement = isIfStatement;
exports.isImmutable = isImmutable;
exports.isImport = isImport;
exports.isImportAttribute = isImportAttribute;
exports.isImportDeclaration = isImportDeclaration;
exports.isImportDefaultSpecifier = isImportDefaultSpecifier;
exports.isImportExpression = isImportExpression;
exports.isImportNamespaceSpecifier = isImportNamespaceSpecifier;
exports.isImportOrExportDeclaration = isImportOrExportDeclaration;
exports.isImportSpecifier = isImportSpecifier;
exports.isIndexedAccessType = isIndexedAccessType;
exports.isInferredPredicate = isInferredPredicate;
exports.isInterfaceDeclaration = isInterfaceDeclaration;
exports.isInterfaceExtends = isInterfaceExtends;
exports.isInterfaceTypeAnnotation = isInterfaceTypeAnnotation;
exports.isInterpreterDirective = isInterpreterDirective;
exports.isIntersectionTypeAnnotation = isIntersectionTypeAnnotation;
exports.isJSX = isJSX;
exports.isJSXAttribute = isJSXAttribute;
exports.isJSXClosingElement = isJSXClosingElement;
exports.isJSXClosingFragment = isJSXClosingFragment;
exports.isJSXElement = isJSXElement;
exports.isJSXEmptyExpression = isJSXEmptyExpression;
exports.isJSXExpressionContainer = isJSXExpressionContainer;
exports.isJSXFragment = isJSXFragment;
exports.isJSXIdentifier = isJSXIdentifier;
exports.isJSXMemberExpression = isJSXMemberExpression;
exports.isJSXNamespacedName = isJSXNamespacedName;
exports.isJSXOpeningElement = isJSXOpeningElement;
exports.isJSXOpeningFragment = isJSXOpeningFragment;
exports.isJSXSpreadAttribute = isJSXSpreadAttribute;
exports.isJSXSpreadChild = isJSXSpreadChild;
exports.isJSXText = isJSXText;
exports.isLVal = isLVal;
exports.isLabeledStatement = isLabeledStatement;
exports.isLiteral = isLiteral;
exports.isLogicalExpression = isLogicalExpression;
exports.isLoop = isLoop;
exports.isMemberExpression = isMemberExpression;
exports.isMetaProperty = isMetaProperty;
exports.isMethod = isMethod;
exports.isMiscellaneous = isMiscellaneous;
exports.isMixedTypeAnnotation = isMixedTypeAnnotation;
exports.isModuleDeclaration = isModuleDeclaration;
exports.isModuleExpression = isModuleExpression;
exports.isModuleSpecifier = isModuleSpecifier;
exports.isNewExpression = isNewExpression;
exports.isNoop = isNoop;
exports.isNullLiteral = isNullLiteral;
exports.isNullLiteralTypeAnnotation = isNullLiteralTypeAnnotation;
exports.isNullableTypeAnnotation = isNullableTypeAnnotation;
exports.isNumberLiteral = isNumberLiteral;
exports.isNumberLiteralTypeAnnotation = isNumberLiteralTypeAnnotation;
exports.isNumberTypeAnnotation = isNumberTypeAnnotation;
exports.isNumericLiteral = isNumericLiteral;
exports.isObjectExpression = isObjectExpression;
exports.isObjectMember = isObjectMember;
exports.isObjectMethod = isObjectMethod;
exports.isObjectPattern = isObjectPattern;
exports.isObjectProperty = isObjectProperty;
exports.isObjectTypeAnnotation = isObjectTypeAnnotation;
exports.isObjectTypeCallProperty = isObjectTypeCallProperty;
exports.isObjectTypeIndexer = isObjectTypeIndexer;
exports.isObjectTypeInternalSlot = isObjectTypeInternalSlot;
exports.isObjectTypeProperty = isObjectTypeProperty;
exports.isObjectTypeSpreadProperty = isObjectTypeSpreadProperty;
exports.isOpaqueType = isOpaqueType;
exports.isOptionalCallExpression = isOptionalCallExpression;
exports.isOptionalIndexedAccessType = isOptionalIndexedAccessType;
exports.isOptionalMemberExpression = isOptionalMemberExpression;
exports.isParenthesizedExpression = isParenthesizedExpression;
exports.isPattern = isPattern;
exports.isPatternLike = isPatternLike;
exports.isPipelineBareFunction = isPipelineBareFunction;
exports.isPipelinePrimaryTopicReference = isPipelinePrimaryTopicReference;
exports.isPipelineTopicExpression = isPipelineTopicExpression;
exports.isPlaceholder = isPlaceholder;
exports.isPrivate = isPrivate;
exports.isPrivateName = isPrivateName;
exports.isProgram = isProgram;
exports.isProperty = isProperty;
exports.isPureish = isPureish;
exports.isQualifiedTypeIdentifier = isQualifiedTypeIdentifier;
exports.isRecordExpression = isRecordExpression;
exports.isRegExpLiteral = isRegExpLiteral;
exports.isRegexLiteral = isRegexLiteral;
exports.isRestElement = isRestElement;
exports.isRestProperty = isRestProperty;
exports.isReturnStatement = isReturnStatement;
exports.isScopable = isScopable;
exports.isSequenceExpression = isSequenceExpression;
exports.isSpreadElement = isSpreadElement;
exports.isSpreadProperty = isSpreadProperty;
exports.isStandardized = isStandardized;
exports.isStatement = isStatement;
exports.isStaticBlock = isStaticBlock;
exports.isStringLiteral = isStringLiteral;
exports.isStringLiteralTypeAnnotation = isStringLiteralTypeAnnotation;
exports.isStringTypeAnnotation = isStringTypeAnnotation;
exports.isSuper = isSuper;
exports.isSwitchCase = isSwitchCase;
exports.isSwitchStatement = isSwitchStatement;
exports.isSymbolTypeAnnotation = isSymbolTypeAnnotation;
exports.isTSAnyKeyword = isTSAnyKeyword;
exports.isTSArrayType = isTSArrayType;
exports.isTSAsExpression = isTSAsExpression;
exports.isTSBaseType = isTSBaseType;
exports.isTSBigIntKeyword = isTSBigIntKeyword;
exports.isTSBooleanKeyword = isTSBooleanKeyword;
exports.isTSCallSignatureDeclaration = isTSCallSignatureDeclaration;
exports.isTSConditionalType = isTSConditionalType;
exports.isTSConstructSignatureDeclaration = isTSConstructSignatureDeclaration;
exports.isTSConstructorType = isTSConstructorType;
exports.isTSDeclareFunction = isTSDeclareFunction;
exports.isTSDeclareMethod = isTSDeclareMethod;
exports.isTSEntityName = isTSEntityName;
exports.isTSEnumBody = isTSEnumBody;
exports.isTSEnumDeclaration = isTSEnumDeclaration;
exports.isTSEnumMember = isTSEnumMember;
exports.isTSExportAssignment = isTSExportAssignment;
exports.isTSExpressionWithTypeArguments = isTSExpressionWithTypeArguments;
exports.isTSExternalModuleReference = isTSExternalModuleReference;
exports.isTSFunctionType = isTSFunctionType;
exports.isTSImportEqualsDeclaration = isTSImportEqualsDeclaration;
exports.isTSImportType = isTSImportType;
exports.isTSIndexSignature = isTSIndexSignature;
exports.isTSIndexedAccessType = isTSIndexedAccessType;
exports.isTSInferType = isTSInferType;
exports.isTSInstantiationExpression = isTSInstantiationExpression;
exports.isTSInterfaceBody = isTSInterfaceBody;
exports.isTSInterfaceDeclaration = isTSInterfaceDeclaration;
exports.isTSIntersectionType = isTSIntersectionType;
exports.isTSIntrinsicKeyword = isTSIntrinsicKeyword;
exports.isTSLiteralType = isTSLiteralType;
exports.isTSMappedType = isTSMappedType;
exports.isTSMethodSignature = isTSMethodSignature;
exports.isTSModuleBlock = isTSModuleBlock;
exports.isTSModuleDeclaration = isTSModuleDeclaration;
exports.isTSNamedTupleMember = isTSNamedTupleMember;
exports.isTSNamespaceExportDeclaration = isTSNamespaceExportDeclaration;
exports.isTSNeverKeyword = isTSNeverKeyword;
exports.isTSNonNullExpression = isTSNonNullExpression;
exports.isTSNullKeyword = isTSNullKeyword;
exports.isTSNumberKeyword = isTSNumberKeyword;
exports.isTSObjectKeyword = isTSObjectKeyword;
exports.isTSOptionalType = isTSOptionalType;
exports.isTSParameterProperty = isTSParameterProperty;
exports.isTSParenthesizedType = isTSParenthesizedType;
exports.isTSPropertySignature = isTSPropertySignature;
exports.isTSQualifiedName = isTSQualifiedName;
exports.isTSRestType = isTSRestType;
exports.isTSSatisfiesExpression = isTSSatisfiesExpression;
exports.isTSStringKeyword = isTSStringKeyword;
exports.isTSSymbolKeyword = isTSSymbolKeyword;
exports.isTSTemplateLiteralType = isTSTemplateLiteralType;
exports.isTSThisType = isTSThisType;
exports.isTSTupleType = isTSTupleType;
exports.isTSType = isTSType;
exports.isTSTypeAliasDeclaration = isTSTypeAliasDeclaration;
exports.isTSTypeAnnotation = isTSTypeAnnotation;
exports.isTSTypeAssertion = isTSTypeAssertion;
exports.isTSTypeElement = isTSTypeElement;
exports.isTSTypeLiteral = isTSTypeLiteral;
exports.isTSTypeOperator = isTSTypeOperator;
exports.isTSTypeParameter = isTSTypeParameter;
exports.isTSTypeParameterDeclaration = isTSTypeParameterDeclaration;
exports.isTSTypeParameterInstantiation = isTSTypeParameterInstantiation;
exports.isTSTypePredicate = isTSTypePredicate;
exports.isTSTypeQuery = isTSTypeQuery;
exports.isTSTypeReference = isTSTypeReference;
exports.isTSUndefinedKeyword = isTSUndefinedKeyword;
exports.isTSUnionType = isTSUnionType;
exports.isTSUnknownKeyword = isTSUnknownKeyword;
exports.isTSVoidKeyword = isTSVoidKeyword;
exports.isTaggedTemplateExpression = isTaggedTemplateExpression;
exports.isTemplateElement = isTemplateElement;
exports.isTemplateLiteral = isTemplateLiteral;
exports.isTerminatorless = isTerminatorless;
exports.isThisExpression = isThisExpression;
exports.isThisTypeAnnotation = isThisTypeAnnotation;
exports.isThrowStatement = isThrowStatement;
exports.isTopicReference = isTopicReference;
exports.isTryStatement = isTryStatement;
exports.isTupleExpression = isTupleExpression;
exports.isTupleTypeAnnotation = isTupleTypeAnnotation;
exports.isTypeAlias = isTypeAlias;
exports.isTypeAnnotation = isTypeAnnotation;
exports.isTypeCastExpression = isTypeCastExpression;
exports.isTypeParameter = isTypeParameter;
exports.isTypeParameterDeclaration = isTypeParameterDeclaration;
exports.isTypeParameterInstantiation = isTypeParameterInstantiation;
exports.isTypeScript = isTypeScript;
exports.isTypeofTypeAnnotation = isTypeofTypeAnnotation;
exports.isUnaryExpression = isUnaryExpression;
exports.isUnaryLike = isUnaryLike;
exports.isUnionTypeAnnotation = isUnionTypeAnnotation;
exports.isUpdateExpression = isUpdateExpression;
exports.isUserWhitespacable = isUserWhitespacable;
exports.isV8IntrinsicIdentifier = isV8IntrinsicIdentifier;
exports.isVariableDeclaration = isVariableDeclaration;
exports.isVariableDeclarator = isVariableDeclarator;
exports.isVariance = isVariance;
exports.isVoidPattern = isVoidPattern;
exports.isVoidTypeAnnotation = isVoidTypeAnnotation;
exports.isWhile = isWhile;
exports.isWhileStatement = isWhileStatement;
exports.isWithStatement = isWithStatement;
exports.isYieldExpression = isYieldExpression;
var _shallowEqual = require("../../utils/shallowEqual.js");
var _deprecationWarning = require("../../utils/deprecationWarning.js");
function isArrayExpression(node, opts) {
if (!node) return false;
if (node.type !== "ArrayExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isAssignmentExpression(node, opts) {
if (!node) return false;
if (node.type !== "AssignmentExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBinaryExpression(node, opts) {
if (!node) return false;
if (node.type !== "BinaryExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isInterpreterDirective(node, opts) {
if (!node) return false;
if (node.type !== "InterpreterDirective") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDirective(node, opts) {
if (!node) return false;
if (node.type !== "Directive") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDirectiveLiteral(node, opts) {
if (!node) return false;
if (node.type !== "DirectiveLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBlockStatement(node, opts) {
if (!node) return false;
if (node.type !== "BlockStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBreakStatement(node, opts) {
if (!node) return false;
if (node.type !== "BreakStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isCallExpression(node, opts) {
if (!node) return false;
if (node.type !== "CallExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isCatchClause(node, opts) {
if (!node) return false;
if (node.type !== "CatchClause") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isConditionalExpression(node, opts) {
if (!node) return false;
if (node.type !== "ConditionalExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isContinueStatement(node, opts) {
if (!node) return false;
if (node.type !== "ContinueStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDebuggerStatement(node, opts) {
if (!node) return false;
if (node.type !== "DebuggerStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDoWhileStatement(node, opts) {
if (!node) return false;
if (node.type !== "DoWhileStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEmptyStatement(node, opts) {
if (!node) return false;
if (node.type !== "EmptyStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExpressionStatement(node, opts) {
if (!node) return false;
if (node.type !== "ExpressionStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFile(node, opts) {
if (!node) return false;
if (node.type !== "File") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isForInStatement(node, opts) {
if (!node) return false;
if (node.type !== "ForInStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isForStatement(node, opts) {
if (!node) return false;
if (node.type !== "ForStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "FunctionDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionExpression(node, opts) {
if (!node) return false;
if (node.type !== "FunctionExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isIdentifier(node, opts) {
if (!node) return false;
if (node.type !== "Identifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isIfStatement(node, opts) {
if (!node) return false;
if (node.type !== "IfStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isLabeledStatement(node, opts) {
if (!node) return false;
if (node.type !== "LabeledStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStringLiteral(node, opts) {
if (!node) return false;
if (node.type !== "StringLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNumericLiteral(node, opts) {
if (!node) return false;
if (node.type !== "NumericLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNullLiteral(node, opts) {
if (!node) return false;
if (node.type !== "NullLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBooleanLiteral(node, opts) {
if (!node) return false;
if (node.type !== "BooleanLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isRegExpLiteral(node, opts) {
if (!node) return false;
if (node.type !== "RegExpLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isLogicalExpression(node, opts) {
if (!node) return false;
if (node.type !== "LogicalExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isMemberExpression(node, opts) {
if (!node) return false;
if (node.type !== "MemberExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNewExpression(node, opts) {
if (!node) return false;
if (node.type !== "NewExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isProgram(node, opts) {
if (!node) return false;
if (node.type !== "Program") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectExpression(node, opts) {
if (!node) return false;
if (node.type !== "ObjectExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectMethod(node, opts) {
if (!node) return false;
if (node.type !== "ObjectMethod") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectProperty(node, opts) {
if (!node) return false;
if (node.type !== "ObjectProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isRestElement(node, opts) {
if (!node) return false;
if (node.type !== "RestElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isReturnStatement(node, opts) {
if (!node) return false;
if (node.type !== "ReturnStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSequenceExpression(node, opts) {
if (!node) return false;
if (node.type !== "SequenceExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isParenthesizedExpression(node, opts) {
if (!node) return false;
if (node.type !== "ParenthesizedExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSwitchCase(node, opts) {
if (!node) return false;
if (node.type !== "SwitchCase") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSwitchStatement(node, opts) {
if (!node) return false;
if (node.type !== "SwitchStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isThisExpression(node, opts) {
if (!node) return false;
if (node.type !== "ThisExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isThrowStatement(node, opts) {
if (!node) return false;
if (node.type !== "ThrowStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTryStatement(node, opts) {
if (!node) return false;
if (node.type !== "TryStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isUnaryExpression(node, opts) {
if (!node) return false;
if (node.type !== "UnaryExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isUpdateExpression(node, opts) {
if (!node) return false;
if (node.type !== "UpdateExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isVariableDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "VariableDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isVariableDeclarator(node, opts) {
if (!node) return false;
if (node.type !== "VariableDeclarator") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isWhileStatement(node, opts) {
if (!node) return false;
if (node.type !== "WhileStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isWithStatement(node, opts) {
if (!node) return false;
if (node.type !== "WithStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isAssignmentPattern(node, opts) {
if (!node) return false;
if (node.type !== "AssignmentPattern") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isArrayPattern(node, opts) {
if (!node) return false;
if (node.type !== "ArrayPattern") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isArrowFunctionExpression(node, opts) {
if (!node) return false;
if (node.type !== "ArrowFunctionExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassBody(node, opts) {
if (!node) return false;
if (node.type !== "ClassBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassExpression(node, opts) {
if (!node) return false;
if (node.type !== "ClassExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "ClassDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportAllDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "ExportAllDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportDefaultDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "ExportDefaultDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportNamedDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "ExportNamedDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ExportSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isForOfStatement(node, opts) {
if (!node) return false;
if (node.type !== "ForOfStatement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "ImportDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportDefaultSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ImportDefaultSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportNamespaceSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ImportNamespaceSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ImportSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportExpression(node, opts) {
if (!node) return false;
if (node.type !== "ImportExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isMetaProperty(node, opts) {
if (!node) return false;
if (node.type !== "MetaProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassMethod(node, opts) {
if (!node) return false;
if (node.type !== "ClassMethod") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectPattern(node, opts) {
if (!node) return false;
if (node.type !== "ObjectPattern") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSpreadElement(node, opts) {
if (!node) return false;
if (node.type !== "SpreadElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSuper(node, opts) {
if (!node) return false;
if (node.type !== "Super") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTaggedTemplateExpression(node, opts) {
if (!node) return false;
if (node.type !== "TaggedTemplateExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTemplateElement(node, opts) {
if (!node) return false;
if (node.type !== "TemplateElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTemplateLiteral(node, opts) {
if (!node) return false;
if (node.type !== "TemplateLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isYieldExpression(node, opts) {
if (!node) return false;
if (node.type !== "YieldExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isAwaitExpression(node, opts) {
if (!node) return false;
if (node.type !== "AwaitExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImport(node, opts) {
if (!node) return false;
if (node.type !== "Import") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBigIntLiteral(node, opts) {
if (!node) return false;
if (node.type !== "BigIntLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportNamespaceSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ExportNamespaceSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isOptionalMemberExpression(node, opts) {
if (!node) return false;
if (node.type !== "OptionalMemberExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isOptionalCallExpression(node, opts) {
if (!node) return false;
if (node.type !== "OptionalCallExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassProperty(node, opts) {
if (!node) return false;
if (node.type !== "ClassProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassAccessorProperty(node, opts) {
if (!node) return false;
if (node.type !== "ClassAccessorProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassPrivateProperty(node, opts) {
if (!node) return false;
if (node.type !== "ClassPrivateProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassPrivateMethod(node, opts) {
if (!node) return false;
if (node.type !== "ClassPrivateMethod") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPrivateName(node, opts) {
if (!node) return false;
if (node.type !== "PrivateName") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStaticBlock(node, opts) {
if (!node) return false;
if (node.type !== "StaticBlock") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportAttribute(node, opts) {
if (!node) return false;
if (node.type !== "ImportAttribute") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isAnyTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "AnyTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isArrayTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "ArrayTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBooleanTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "BooleanTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBooleanLiteralTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "BooleanLiteralTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNullLiteralTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "NullLiteralTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClassImplements(node, opts) {
if (!node) return false;
if (node.type !== "ClassImplements") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareClass(node, opts) {
if (!node) return false;
if (node.type !== "DeclareClass") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareFunction(node, opts) {
if (!node) return false;
if (node.type !== "DeclareFunction") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareInterface(node, opts) {
if (!node) return false;
if (node.type !== "DeclareInterface") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareModule(node, opts) {
if (!node) return false;
if (node.type !== "DeclareModule") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareModuleExports(node, opts) {
if (!node) return false;
if (node.type !== "DeclareModuleExports") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareTypeAlias(node, opts) {
if (!node) return false;
if (node.type !== "DeclareTypeAlias") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareOpaqueType(node, opts) {
if (!node) return false;
if (node.type !== "DeclareOpaqueType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareVariable(node, opts) {
if (!node) return false;
if (node.type !== "DeclareVariable") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareExportDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "DeclareExportDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclareExportAllDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "DeclareExportAllDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclaredPredicate(node, opts) {
if (!node) return false;
if (node.type !== "DeclaredPredicate") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExistsTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "ExistsTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "FunctionTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionTypeParam(node, opts) {
if (!node) return false;
if (node.type !== "FunctionTypeParam") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isGenericTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "GenericTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isInferredPredicate(node, opts) {
if (!node) return false;
if (node.type !== "InferredPredicate") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isInterfaceExtends(node, opts) {
if (!node) return false;
if (node.type !== "InterfaceExtends") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isInterfaceDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "InterfaceDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isInterfaceTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "InterfaceTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isIntersectionTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "IntersectionTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isMixedTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "MixedTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEmptyTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "EmptyTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNullableTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "NullableTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNumberLiteralTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "NumberLiteralTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNumberTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "NumberTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeInternalSlot(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeInternalSlot") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeCallProperty(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeCallProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeIndexer(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeIndexer") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeProperty(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectTypeSpreadProperty(node, opts) {
if (!node) return false;
if (node.type !== "ObjectTypeSpreadProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isOpaqueType(node, opts) {
if (!node) return false;
if (node.type !== "OpaqueType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isQualifiedTypeIdentifier(node, opts) {
if (!node) return false;
if (node.type !== "QualifiedTypeIdentifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStringLiteralTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "StringLiteralTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStringTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "StringTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSymbolTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "SymbolTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isThisTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "ThisTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTupleTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "TupleTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeofTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "TypeofTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeAlias(node, opts) {
if (!node) return false;
if (node.type !== "TypeAlias") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "TypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeCastExpression(node, opts) {
if (!node) return false;
if (node.type !== "TypeCastExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeParameter(node, opts) {
if (!node) return false;
if (node.type !== "TypeParameter") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeParameterDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TypeParameterDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeParameterInstantiation(node, opts) {
if (!node) return false;
if (node.type !== "TypeParameterInstantiation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isUnionTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "UnionTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isVariance(node, opts) {
if (!node) return false;
if (node.type !== "Variance") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isVoidTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "VoidTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "EnumDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumBooleanBody(node, opts) {
if (!node) return false;
if (node.type !== "EnumBooleanBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumNumberBody(node, opts) {
if (!node) return false;
if (node.type !== "EnumNumberBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumStringBody(node, opts) {
if (!node) return false;
if (node.type !== "EnumStringBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumSymbolBody(node, opts) {
if (!node) return false;
if (node.type !== "EnumSymbolBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumBooleanMember(node, opts) {
if (!node) return false;
if (node.type !== "EnumBooleanMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumNumberMember(node, opts) {
if (!node) return false;
if (node.type !== "EnumNumberMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumStringMember(node, opts) {
if (!node) return false;
if (node.type !== "EnumStringMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumDefaultedMember(node, opts) {
if (!node) return false;
if (node.type !== "EnumDefaultedMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isIndexedAccessType(node, opts) {
if (!node) return false;
if (node.type !== "IndexedAccessType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isOptionalIndexedAccessType(node, opts) {
if (!node) return false;
if (node.type !== "OptionalIndexedAccessType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXAttribute(node, opts) {
if (!node) return false;
if (node.type !== "JSXAttribute") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXClosingElement(node, opts) {
if (!node) return false;
if (node.type !== "JSXClosingElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXElement(node, opts) {
if (!node) return false;
if (node.type !== "JSXElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXEmptyExpression(node, opts) {
if (!node) return false;
if (node.type !== "JSXEmptyExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXExpressionContainer(node, opts) {
if (!node) return false;
if (node.type !== "JSXExpressionContainer") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXSpreadChild(node, opts) {
if (!node) return false;
if (node.type !== "JSXSpreadChild") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXIdentifier(node, opts) {
if (!node) return false;
if (node.type !== "JSXIdentifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXMemberExpression(node, opts) {
if (!node) return false;
if (node.type !== "JSXMemberExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXNamespacedName(node, opts) {
if (!node) return false;
if (node.type !== "JSXNamespacedName") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXOpeningElement(node, opts) {
if (!node) return false;
if (node.type !== "JSXOpeningElement") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXSpreadAttribute(node, opts) {
if (!node) return false;
if (node.type !== "JSXSpreadAttribute") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXText(node, opts) {
if (!node) return false;
if (node.type !== "JSXText") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXFragment(node, opts) {
if (!node) return false;
if (node.type !== "JSXFragment") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXOpeningFragment(node, opts) {
if (!node) return false;
if (node.type !== "JSXOpeningFragment") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSXClosingFragment(node, opts) {
if (!node) return false;
if (node.type !== "JSXClosingFragment") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNoop(node, opts) {
if (!node) return false;
if (node.type !== "Noop") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPlaceholder(node, opts) {
if (!node) return false;
if (node.type !== "Placeholder") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isV8IntrinsicIdentifier(node, opts) {
if (!node) return false;
if (node.type !== "V8IntrinsicIdentifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isArgumentPlaceholder(node, opts) {
if (!node) return false;
if (node.type !== "ArgumentPlaceholder") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBindExpression(node, opts) {
if (!node) return false;
if (node.type !== "BindExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDecorator(node, opts) {
if (!node) return false;
if (node.type !== "Decorator") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDoExpression(node, opts) {
if (!node) return false;
if (node.type !== "DoExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportDefaultSpecifier(node, opts) {
if (!node) return false;
if (node.type !== "ExportDefaultSpecifier") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isRecordExpression(node, opts) {
if (!node) return false;
if (node.type !== "RecordExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTupleExpression(node, opts) {
if (!node) return false;
if (node.type !== "TupleExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDecimalLiteral(node, opts) {
if (!node) return false;
if (node.type !== "DecimalLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isModuleExpression(node, opts) {
if (!node) return false;
if (node.type !== "ModuleExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTopicReference(node, opts) {
if (!node) return false;
if (node.type !== "TopicReference") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPipelineTopicExpression(node, opts) {
if (!node) return false;
if (node.type !== "PipelineTopicExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPipelineBareFunction(node, opts) {
if (!node) return false;
if (node.type !== "PipelineBareFunction") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPipelinePrimaryTopicReference(node, opts) {
if (!node) return false;
if (node.type !== "PipelinePrimaryTopicReference") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isVoidPattern(node, opts) {
if (!node) return false;
if (node.type !== "VoidPattern") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSParameterProperty(node, opts) {
if (!node) return false;
if (node.type !== "TSParameterProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSDeclareFunction(node, opts) {
if (!node) return false;
if (node.type !== "TSDeclareFunction") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSDeclareMethod(node, opts) {
if (!node) return false;
if (node.type !== "TSDeclareMethod") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSQualifiedName(node, opts) {
if (!node) return false;
if (node.type !== "TSQualifiedName") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSCallSignatureDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSCallSignatureDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSConstructSignatureDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSConstructSignatureDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSPropertySignature(node, opts) {
if (!node) return false;
if (node.type !== "TSPropertySignature") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSMethodSignature(node, opts) {
if (!node) return false;
if (node.type !== "TSMethodSignature") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSIndexSignature(node, opts) {
if (!node) return false;
if (node.type !== "TSIndexSignature") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSAnyKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSAnyKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSBooleanKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSBooleanKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSBigIntKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSBigIntKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSIntrinsicKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSIntrinsicKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNeverKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSNeverKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNullKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSNullKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNumberKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSNumberKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSObjectKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSObjectKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSStringKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSStringKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSSymbolKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSSymbolKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSUndefinedKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSUndefinedKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSUnknownKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSUnknownKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSVoidKeyword(node, opts) {
if (!node) return false;
if (node.type !== "TSVoidKeyword") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSThisType(node, opts) {
if (!node) return false;
if (node.type !== "TSThisType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSFunctionType(node, opts) {
if (!node) return false;
if (node.type !== "TSFunctionType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSConstructorType(node, opts) {
if (!node) return false;
if (node.type !== "TSConstructorType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeReference(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeReference") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypePredicate(node, opts) {
if (!node) return false;
if (node.type !== "TSTypePredicate") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeQuery(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeQuery") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeLiteral(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSArrayType(node, opts) {
if (!node) return false;
if (node.type !== "TSArrayType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTupleType(node, opts) {
if (!node) return false;
if (node.type !== "TSTupleType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSOptionalType(node, opts) {
if (!node) return false;
if (node.type !== "TSOptionalType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSRestType(node, opts) {
if (!node) return false;
if (node.type !== "TSRestType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNamedTupleMember(node, opts) {
if (!node) return false;
if (node.type !== "TSNamedTupleMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSUnionType(node, opts) {
if (!node) return false;
if (node.type !== "TSUnionType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSIntersectionType(node, opts) {
if (!node) return false;
if (node.type !== "TSIntersectionType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSConditionalType(node, opts) {
if (!node) return false;
if (node.type !== "TSConditionalType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSInferType(node, opts) {
if (!node) return false;
if (node.type !== "TSInferType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSParenthesizedType(node, opts) {
if (!node) return false;
if (node.type !== "TSParenthesizedType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeOperator(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeOperator") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSIndexedAccessType(node, opts) {
if (!node) return false;
if (node.type !== "TSIndexedAccessType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSMappedType(node, opts) {
if (!node) return false;
if (node.type !== "TSMappedType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTemplateLiteralType(node, opts) {
if (!node) return false;
if (node.type !== "TSTemplateLiteralType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSLiteralType(node, opts) {
if (!node) return false;
if (node.type !== "TSLiteralType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSExpressionWithTypeArguments(node, opts) {
if (!node) return false;
if (node.type !== "TSExpressionWithTypeArguments") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSInterfaceDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSInterfaceDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSInterfaceBody(node, opts) {
if (!node) return false;
if (node.type !== "TSInterfaceBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeAliasDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeAliasDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSInstantiationExpression(node, opts) {
if (!node) return false;
if (node.type !== "TSInstantiationExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSAsExpression(node, opts) {
if (!node) return false;
if (node.type !== "TSAsExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSSatisfiesExpression(node, opts) {
if (!node) return false;
if (node.type !== "TSSatisfiesExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeAssertion(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeAssertion") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSEnumBody(node, opts) {
if (!node) return false;
if (node.type !== "TSEnumBody") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSEnumDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSEnumDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSEnumMember(node, opts) {
if (!node) return false;
if (node.type !== "TSEnumMember") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSModuleDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSModuleDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSModuleBlock(node, opts) {
if (!node) return false;
if (node.type !== "TSModuleBlock") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSImportType(node, opts) {
if (!node) return false;
if (node.type !== "TSImportType") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSImportEqualsDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSImportEqualsDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSExternalModuleReference(node, opts) {
if (!node) return false;
if (node.type !== "TSExternalModuleReference") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNonNullExpression(node, opts) {
if (!node) return false;
if (node.type !== "TSNonNullExpression") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSExportAssignment(node, opts) {
if (!node) return false;
if (node.type !== "TSExportAssignment") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSNamespaceExportDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSNamespaceExportDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeAnnotation(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeAnnotation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeParameterInstantiation(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeParameterInstantiation") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeParameterDeclaration(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeParameterDeclaration") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeParameter(node, opts) {
if (!node) return false;
if (node.type !== "TSTypeParameter") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStandardized(node, opts) {
if (!node) return false;
switch (node.type) {
case "ArrayExpression":
case "AssignmentExpression":
case "BinaryExpression":
case "InterpreterDirective":
case "Directive":
case "DirectiveLiteral":
case "BlockStatement":
case "BreakStatement":
case "CallExpression":
case "CatchClause":
case "ConditionalExpression":
case "ContinueStatement":
case "DebuggerStatement":
case "DoWhileStatement":
case "EmptyStatement":
case "ExpressionStatement":
case "File":
case "ForInStatement":
case "ForStatement":
case "FunctionDeclaration":
case "FunctionExpression":
case "Identifier":
case "IfStatement":
case "LabeledStatement":
case "StringLiteral":
case "NumericLiteral":
case "NullLiteral":
case "BooleanLiteral":
case "RegExpLiteral":
case "LogicalExpression":
case "MemberExpression":
case "NewExpression":
case "Program":
case "ObjectExpression":
case "ObjectMethod":
case "ObjectProperty":
case "RestElement":
case "ReturnStatement":
case "SequenceExpression":
case "ParenthesizedExpression":
case "SwitchCase":
case "SwitchStatement":
case "ThisExpression":
case "ThrowStatement":
case "TryStatement":
case "UnaryExpression":
case "UpdateExpression":
case "VariableDeclaration":
case "VariableDeclarator":
case "WhileStatement":
case "WithStatement":
case "AssignmentPattern":
case "ArrayPattern":
case "ArrowFunctionExpression":
case "ClassBody":
case "ClassExpression":
case "ClassDeclaration":
case "ExportAllDeclaration":
case "ExportDefaultDeclaration":
case "ExportNamedDeclaration":
case "ExportSpecifier":
case "ForOfStatement":
case "ImportDeclaration":
case "ImportDefaultSpecifier":
case "ImportNamespaceSpecifier":
case "ImportSpecifier":
case "ImportExpression":
case "MetaProperty":
case "ClassMethod":
case "ObjectPattern":
case "SpreadElement":
case "Super":
case "TaggedTemplateExpression":
case "TemplateElement":
case "TemplateLiteral":
case "YieldExpression":
case "AwaitExpression":
case "Import":
case "BigIntLiteral":
case "ExportNamespaceSpecifier":
case "OptionalMemberExpression":
case "OptionalCallExpression":
case "ClassProperty":
case "ClassAccessorProperty":
case "ClassPrivateProperty":
case "ClassPrivateMethod":
case "PrivateName":
case "StaticBlock":
case "ImportAttribute":
break;
case "Placeholder":
switch (node.expectedNode) {
case "Identifier":
case "StringLiteral":
case "BlockStatement":
case "ClassBody":
break;
default:
return false;
}
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExpression(node, opts) {
if (!node) return false;
switch (node.type) {
case "ArrayExpression":
case "AssignmentExpression":
case "BinaryExpression":
case "CallExpression":
case "ConditionalExpression":
case "FunctionExpression":
case "Identifier":
case "StringLiteral":
case "NumericLiteral":
case "NullLiteral":
case "BooleanLiteral":
case "RegExpLiteral":
case "LogicalExpression":
case "MemberExpression":
case "NewExpression":
case "ObjectExpression":
case "SequenceExpression":
case "ParenthesizedExpression":
case "ThisExpression":
case "UnaryExpression":
case "UpdateExpression":
case "ArrowFunctionExpression":
case "ClassExpression":
case "ImportExpression":
case "MetaProperty":
case "Super":
case "TaggedTemplateExpression":
case "TemplateLiteral":
case "YieldExpression":
case "AwaitExpression":
case "Import":
case "BigIntLiteral":
case "OptionalMemberExpression":
case "OptionalCallExpression":
case "TypeCastExpression":
case "JSXElement":
case "JSXFragment":
case "BindExpression":
case "DoExpression":
case "RecordExpression":
case "TupleExpression":
case "DecimalLiteral":
case "ModuleExpression":
case "TopicReference":
case "PipelineTopicExpression":
case "PipelineBareFunction":
case "PipelinePrimaryTopicReference":
case "TSInstantiationExpression":
case "TSAsExpression":
case "TSSatisfiesExpression":
case "TSTypeAssertion":
case "TSNonNullExpression":
break;
case "Placeholder":
switch (node.expectedNode) {
case "Expression":
case "Identifier":
case "StringLiteral":
break;
default:
return false;
}
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBinary(node, opts) {
if (!node) return false;
switch (node.type) {
case "BinaryExpression":
case "LogicalExpression":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isScopable(node, opts) {
if (!node) return false;
switch (node.type) {
case "BlockStatement":
case "CatchClause":
case "DoWhileStatement":
case "ForInStatement":
case "ForStatement":
case "FunctionDeclaration":
case "FunctionExpression":
case "Program":
case "ObjectMethod":
case "SwitchStatement":
case "WhileStatement":
case "ArrowFunctionExpression":
case "ClassExpression":
case "ClassDeclaration":
case "ForOfStatement":
case "ClassMethod":
case "ClassPrivateMethod":
case "StaticBlock":
case "TSModuleBlock":
break;
case "Placeholder":
if (node.expectedNode === "BlockStatement") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBlockParent(node, opts) {
if (!node) return false;
switch (node.type) {
case "BlockStatement":
case "CatchClause":
case "DoWhileStatement":
case "ForInStatement":
case "ForStatement":
case "FunctionDeclaration":
case "FunctionExpression":
case "Program":
case "ObjectMethod":
case "SwitchStatement":
case "WhileStatement":
case "ArrowFunctionExpression":
case "ForOfStatement":
case "ClassMethod":
case "ClassPrivateMethod":
case "StaticBlock":
case "TSModuleBlock":
break;
case "Placeholder":
if (node.expectedNode === "BlockStatement") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isBlock(node, opts) {
if (!node) return false;
switch (node.type) {
case "BlockStatement":
case "Program":
case "TSModuleBlock":
break;
case "Placeholder":
if (node.expectedNode === "BlockStatement") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isStatement(node, opts) {
if (!node) return false;
switch (node.type) {
case "BlockStatement":
case "BreakStatement":
case "ContinueStatement":
case "DebuggerStatement":
case "DoWhileStatement":
case "EmptyStatement":
case "ExpressionStatement":
case "ForInStatement":
case "ForStatement":
case "FunctionDeclaration":
case "IfStatement":
case "LabeledStatement":
case "ReturnStatement":
case "SwitchStatement":
case "ThrowStatement":
case "TryStatement":
case "VariableDeclaration":
case "WhileStatement":
case "WithStatement":
case "ClassDeclaration":
case "ExportAllDeclaration":
case "ExportDefaultDeclaration":
case "ExportNamedDeclaration":
case "ForOfStatement":
case "ImportDeclaration":
case "DeclareClass":
case "DeclareFunction":
case "DeclareInterface":
case "DeclareModule":
case "DeclareModuleExports":
case "DeclareTypeAlias":
case "DeclareOpaqueType":
case "DeclareVariable":
case "DeclareExportDeclaration":
case "DeclareExportAllDeclaration":
case "InterfaceDeclaration":
case "OpaqueType":
case "TypeAlias":
case "EnumDeclaration":
case "TSDeclareFunction":
case "TSInterfaceDeclaration":
case "TSTypeAliasDeclaration":
case "TSEnumDeclaration":
case "TSModuleDeclaration":
case "TSImportEqualsDeclaration":
case "TSExportAssignment":
case "TSNamespaceExportDeclaration":
break;
case "Placeholder":
switch (node.expectedNode) {
case "Statement":
case "Declaration":
case "BlockStatement":
break;
default:
return false;
}
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTerminatorless(node, opts) {
if (!node) return false;
switch (node.type) {
case "BreakStatement":
case "ContinueStatement":
case "ReturnStatement":
case "ThrowStatement":
case "YieldExpression":
case "AwaitExpression":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isCompletionStatement(node, opts) {
if (!node) return false;
switch (node.type) {
case "BreakStatement":
case "ContinueStatement":
case "ReturnStatement":
case "ThrowStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isConditional(node, opts) {
if (!node) return false;
switch (node.type) {
case "ConditionalExpression":
case "IfStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isLoop(node, opts) {
if (!node) return false;
switch (node.type) {
case "DoWhileStatement":
case "ForInStatement":
case "ForStatement":
case "WhileStatement":
case "ForOfStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isWhile(node, opts) {
if (!node) return false;
switch (node.type) {
case "DoWhileStatement":
case "WhileStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExpressionWrapper(node, opts) {
if (!node) return false;
switch (node.type) {
case "ExpressionStatement":
case "ParenthesizedExpression":
case "TypeCastExpression":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFor(node, opts) {
if (!node) return false;
switch (node.type) {
case "ForInStatement":
case "ForStatement":
case "ForOfStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isForXStatement(node, opts) {
if (!node) return false;
switch (node.type) {
case "ForInStatement":
case "ForOfStatement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunction(node, opts) {
if (!node) return false;
switch (node.type) {
case "FunctionDeclaration":
case "FunctionExpression":
case "ObjectMethod":
case "ArrowFunctionExpression":
case "ClassMethod":
case "ClassPrivateMethod":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionParent(node, opts) {
if (!node) return false;
switch (node.type) {
case "FunctionDeclaration":
case "FunctionExpression":
case "ObjectMethod":
case "ArrowFunctionExpression":
case "ClassMethod":
case "ClassPrivateMethod":
case "StaticBlock":
case "TSModuleBlock":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPureish(node, opts) {
if (!node) return false;
switch (node.type) {
case "FunctionDeclaration":
case "FunctionExpression":
case "StringLiteral":
case "NumericLiteral":
case "NullLiteral":
case "BooleanLiteral":
case "RegExpLiteral":
case "ArrowFunctionExpression":
case "BigIntLiteral":
case "DecimalLiteral":
break;
case "Placeholder":
if (node.expectedNode === "StringLiteral") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isDeclaration(node, opts) {
if (!node) return false;
switch (node.type) {
case "FunctionDeclaration":
case "VariableDeclaration":
case "ClassDeclaration":
case "ExportAllDeclaration":
case "ExportDefaultDeclaration":
case "ExportNamedDeclaration":
case "ImportDeclaration":
case "DeclareClass":
case "DeclareFunction":
case "DeclareInterface":
case "DeclareModule":
case "DeclareModuleExports":
case "DeclareTypeAlias":
case "DeclareOpaqueType":
case "DeclareVariable":
case "DeclareExportDeclaration":
case "DeclareExportAllDeclaration":
case "InterfaceDeclaration":
case "OpaqueType":
case "TypeAlias":
case "EnumDeclaration":
case "TSDeclareFunction":
case "TSInterfaceDeclaration":
case "TSTypeAliasDeclaration":
case "TSEnumDeclaration":
case "TSModuleDeclaration":
case "TSImportEqualsDeclaration":
break;
case "Placeholder":
if (node.expectedNode === "Declaration") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFunctionParameter(node, opts) {
if (!node) return false;
switch (node.type) {
case "Identifier":
case "RestElement":
case "AssignmentPattern":
case "ArrayPattern":
case "ObjectPattern":
case "VoidPattern":
break;
case "Placeholder":
if (node.expectedNode === "Identifier") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPatternLike(node, opts) {
if (!node) return false;
switch (node.type) {
case "Identifier":
case "MemberExpression":
case "RestElement":
case "AssignmentPattern":
case "ArrayPattern":
case "ObjectPattern":
case "VoidPattern":
case "TSAsExpression":
case "TSSatisfiesExpression":
case "TSTypeAssertion":
case "TSNonNullExpression":
break;
case "Placeholder":
switch (node.expectedNode) {
case "Pattern":
case "Identifier":
break;
default:
return false;
}
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isLVal(node, opts) {
if (!node) return false;
switch (node.type) {
case "Identifier":
case "MemberExpression":
case "RestElement":
case "AssignmentPattern":
case "ArrayPattern":
case "ObjectPattern":
case "TSParameterProperty":
case "TSAsExpression":
case "TSSatisfiesExpression":
case "TSTypeAssertion":
case "TSNonNullExpression":
break;
case "Placeholder":
switch (node.expectedNode) {
case "Pattern":
case "Identifier":
break;
default:
return false;
}
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSEntityName(node, opts) {
if (!node) return false;
switch (node.type) {
case "Identifier":
case "TSQualifiedName":
break;
case "Placeholder":
if (node.expectedNode === "Identifier") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isLiteral(node, opts) {
if (!node) return false;
switch (node.type) {
case "StringLiteral":
case "NumericLiteral":
case "NullLiteral":
case "BooleanLiteral":
case "RegExpLiteral":
case "TemplateLiteral":
case "BigIntLiteral":
case "DecimalLiteral":
break;
case "Placeholder":
if (node.expectedNode === "StringLiteral") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImmutable(node, opts) {
if (!node) return false;
switch (node.type) {
case "StringLiteral":
case "NumericLiteral":
case "NullLiteral":
case "BooleanLiteral":
case "BigIntLiteral":
case "JSXAttribute":
case "JSXClosingElement":
case "JSXElement":
case "JSXExpressionContainer":
case "JSXSpreadChild":
case "JSXOpeningElement":
case "JSXText":
case "JSXFragment":
case "JSXOpeningFragment":
case "JSXClosingFragment":
case "DecimalLiteral":
break;
case "Placeholder":
if (node.expectedNode === "StringLiteral") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isUserWhitespacable(node, opts) {
if (!node) return false;
switch (node.type) {
case "ObjectMethod":
case "ObjectProperty":
case "ObjectTypeInternalSlot":
case "ObjectTypeCallProperty":
case "ObjectTypeIndexer":
case "ObjectTypeProperty":
case "ObjectTypeSpreadProperty":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isMethod(node, opts) {
if (!node) return false;
switch (node.type) {
case "ObjectMethod":
case "ClassMethod":
case "ClassPrivateMethod":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isObjectMember(node, opts) {
if (!node) return false;
switch (node.type) {
case "ObjectMethod":
case "ObjectProperty":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isProperty(node, opts) {
if (!node) return false;
switch (node.type) {
case "ObjectProperty":
case "ClassProperty":
case "ClassAccessorProperty":
case "ClassPrivateProperty":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isUnaryLike(node, opts) {
if (!node) return false;
switch (node.type) {
case "UnaryExpression":
case "SpreadElement":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPattern(node, opts) {
if (!node) return false;
switch (node.type) {
case "AssignmentPattern":
case "ArrayPattern":
case "ObjectPattern":
case "VoidPattern":
break;
case "Placeholder":
if (node.expectedNode === "Pattern") break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isClass(node, opts) {
if (!node) return false;
switch (node.type) {
case "ClassExpression":
case "ClassDeclaration":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isImportOrExportDeclaration(node, opts) {
if (!node) return false;
switch (node.type) {
case "ExportAllDeclaration":
case "ExportDefaultDeclaration":
case "ExportNamedDeclaration":
case "ImportDeclaration":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isExportDeclaration(node, opts) {
if (!node) return false;
switch (node.type) {
case "ExportAllDeclaration":
case "ExportDefaultDeclaration":
case "ExportNamedDeclaration":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isModuleSpecifier(node, opts) {
if (!node) return false;
switch (node.type) {
case "ExportSpecifier":
case "ImportDefaultSpecifier":
case "ImportNamespaceSpecifier":
case "ImportSpecifier":
case "ExportNamespaceSpecifier":
case "ExportDefaultSpecifier":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isAccessor(node, opts) {
if (!node) return false;
switch (node.type) {
case "ClassAccessorProperty":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isPrivate(node, opts) {
if (!node) return false;
switch (node.type) {
case "ClassPrivateProperty":
case "ClassPrivateMethod":
case "PrivateName":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFlow(node, opts) {
if (!node) return false;
switch (node.type) {
case "AnyTypeAnnotation":
case "ArrayTypeAnnotation":
case "BooleanTypeAnnotation":
case "BooleanLiteralTypeAnnotation":
case "NullLiteralTypeAnnotation":
case "ClassImplements":
case "DeclareClass":
case "DeclareFunction":
case "DeclareInterface":
case "DeclareModule":
case "DeclareModuleExports":
case "DeclareTypeAlias":
case "DeclareOpaqueType":
case "DeclareVariable":
case "DeclareExportDeclaration":
case "DeclareExportAllDeclaration":
case "DeclaredPredicate":
case "ExistsTypeAnnotation":
case "FunctionTypeAnnotation":
case "FunctionTypeParam":
case "GenericTypeAnnotation":
case "InferredPredicate":
case "InterfaceExtends":
case "InterfaceDeclaration":
case "InterfaceTypeAnnotation":
case "IntersectionTypeAnnotation":
case "MixedTypeAnnotation":
case "EmptyTypeAnnotation":
case "NullableTypeAnnotation":
case "NumberLiteralTypeAnnotation":
case "NumberTypeAnnotation":
case "ObjectTypeAnnotation":
case "ObjectTypeInternalSlot":
case "ObjectTypeCallProperty":
case "ObjectTypeIndexer":
case "ObjectTypeProperty":
case "ObjectTypeSpreadProperty":
case "OpaqueType":
case "QualifiedTypeIdentifier":
case "StringLiteralTypeAnnotation":
case "StringTypeAnnotation":
case "SymbolTypeAnnotation":
case "ThisTypeAnnotation":
case "TupleTypeAnnotation":
case "TypeofTypeAnnotation":
case "TypeAlias":
case "TypeAnnotation":
case "TypeCastExpression":
case "TypeParameter":
case "TypeParameterDeclaration":
case "TypeParameterInstantiation":
case "UnionTypeAnnotation":
case "Variance":
case "VoidTypeAnnotation":
case "EnumDeclaration":
case "EnumBooleanBody":
case "EnumNumberBody":
case "EnumStringBody":
case "EnumSymbolBody":
case "EnumBooleanMember":
case "EnumNumberMember":
case "EnumStringMember":
case "EnumDefaultedMember":
case "IndexedAccessType":
case "OptionalIndexedAccessType":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFlowType(node, opts) {
if (!node) return false;
switch (node.type) {
case "AnyTypeAnnotation":
case "ArrayTypeAnnotation":
case "BooleanTypeAnnotation":
case "BooleanLiteralTypeAnnotation":
case "NullLiteralTypeAnnotation":
case "ExistsTypeAnnotation":
case "FunctionTypeAnnotation":
case "GenericTypeAnnotation":
case "InterfaceTypeAnnotation":
case "IntersectionTypeAnnotation":
case "MixedTypeAnnotation":
case "EmptyTypeAnnotation":
case "NullableTypeAnnotation":
case "NumberLiteralTypeAnnotation":
case "NumberTypeAnnotation":
case "ObjectTypeAnnotation":
case "StringLiteralTypeAnnotation":
case "StringTypeAnnotation":
case "SymbolTypeAnnotation":
case "ThisTypeAnnotation":
case "TupleTypeAnnotation":
case "TypeofTypeAnnotation":
case "UnionTypeAnnotation":
case "VoidTypeAnnotation":
case "IndexedAccessType":
case "OptionalIndexedAccessType":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFlowBaseAnnotation(node, opts) {
if (!node) return false;
switch (node.type) {
case "AnyTypeAnnotation":
case "BooleanTypeAnnotation":
case "NullLiteralTypeAnnotation":
case "MixedTypeAnnotation":
case "EmptyTypeAnnotation":
case "NumberTypeAnnotation":
case "StringTypeAnnotation":
case "SymbolTypeAnnotation":
case "ThisTypeAnnotation":
case "VoidTypeAnnotation":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFlowDeclaration(node, opts) {
if (!node) return false;
switch (node.type) {
case "DeclareClass":
case "DeclareFunction":
case "DeclareInterface":
case "DeclareModule":
case "DeclareModuleExports":
case "DeclareTypeAlias":
case "DeclareOpaqueType":
case "DeclareVariable":
case "DeclareExportDeclaration":
case "DeclareExportAllDeclaration":
case "InterfaceDeclaration":
case "OpaqueType":
case "TypeAlias":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isFlowPredicate(node, opts) {
if (!node) return false;
switch (node.type) {
case "DeclaredPredicate":
case "InferredPredicate":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumBody(node, opts) {
if (!node) return false;
switch (node.type) {
case "EnumBooleanBody":
case "EnumNumberBody":
case "EnumStringBody":
case "EnumSymbolBody":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isEnumMember(node, opts) {
if (!node) return false;
switch (node.type) {
case "EnumBooleanMember":
case "EnumNumberMember":
case "EnumStringMember":
case "EnumDefaultedMember":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isJSX(node, opts) {
if (!node) return false;
switch (node.type) {
case "JSXAttribute":
case "JSXClosingElement":
case "JSXElement":
case "JSXEmptyExpression":
case "JSXExpressionContainer":
case "JSXSpreadChild":
case "JSXIdentifier":
case "JSXMemberExpression":
case "JSXNamespacedName":
case "JSXOpeningElement":
case "JSXSpreadAttribute":
case "JSXText":
case "JSXFragment":
case "JSXOpeningFragment":
case "JSXClosingFragment":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isMiscellaneous(node, opts) {
if (!node) return false;
switch (node.type) {
case "Noop":
case "Placeholder":
case "V8IntrinsicIdentifier":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTypeScript(node, opts) {
if (!node) return false;
switch (node.type) {
case "TSParameterProperty":
case "TSDeclareFunction":
case "TSDeclareMethod":
case "TSQualifiedName":
case "TSCallSignatureDeclaration":
case "TSConstructSignatureDeclaration":
case "TSPropertySignature":
case "TSMethodSignature":
case "TSIndexSignature":
case "TSAnyKeyword":
case "TSBooleanKeyword":
case "TSBigIntKeyword":
case "TSIntrinsicKeyword":
case "TSNeverKeyword":
case "TSNullKeyword":
case "TSNumberKeyword":
case "TSObjectKeyword":
case "TSStringKeyword":
case "TSSymbolKeyword":
case "TSUndefinedKeyword":
case "TSUnknownKeyword":
case "TSVoidKeyword":
case "TSThisType":
case "TSFunctionType":
case "TSConstructorType":
case "TSTypeReference":
case "TSTypePredicate":
case "TSTypeQuery":
case "TSTypeLiteral":
case "TSArrayType":
case "TSTupleType":
case "TSOptionalType":
case "TSRestType":
case "TSNamedTupleMember":
case "TSUnionType":
case "TSIntersectionType":
case "TSConditionalType":
case "TSInferType":
case "TSParenthesizedType":
case "TSTypeOperator":
case "TSIndexedAccessType":
case "TSMappedType":
case "TSTemplateLiteralType":
case "TSLiteralType":
case "TSExpressionWithTypeArguments":
case "TSInterfaceDeclaration":
case "TSInterfaceBody":
case "TSTypeAliasDeclaration":
case "TSInstantiationExpression":
case "TSAsExpression":
case "TSSatisfiesExpression":
case "TSTypeAssertion":
case "TSEnumBody":
case "TSEnumDeclaration":
case "TSEnumMember":
case "TSModuleDeclaration":
case "TSModuleBlock":
case "TSImportType":
case "TSImportEqualsDeclaration":
case "TSExternalModuleReference":
case "TSNonNullExpression":
case "TSExportAssignment":
case "TSNamespaceExportDeclaration":
case "TSTypeAnnotation":
case "TSTypeParameterInstantiation":
case "TSTypeParameterDeclaration":
case "TSTypeParameter":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSTypeElement(node, opts) {
if (!node) return false;
switch (node.type) {
case "TSCallSignatureDeclaration":
case "TSConstructSignatureDeclaration":
case "TSPropertySignature":
case "TSMethodSignature":
case "TSIndexSignature":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSType(node, opts) {
if (!node) return false;
switch (node.type) {
case "TSAnyKeyword":
case "TSBooleanKeyword":
case "TSBigIntKeyword":
case "TSIntrinsicKeyword":
case "TSNeverKeyword":
case "TSNullKeyword":
case "TSNumberKeyword":
case "TSObjectKeyword":
case "TSStringKeyword":
case "TSSymbolKeyword":
case "TSUndefinedKeyword":
case "TSUnknownKeyword":
case "TSVoidKeyword":
case "TSThisType":
case "TSFunctionType":
case "TSConstructorType":
case "TSTypeReference":
case "TSTypePredicate":
case "TSTypeQuery":
case "TSTypeLiteral":
case "TSArrayType":
case "TSTupleType":
case "TSOptionalType":
case "TSRestType":
case "TSUnionType":
case "TSIntersectionType":
case "TSConditionalType":
case "TSInferType":
case "TSParenthesizedType":
case "TSTypeOperator":
case "TSIndexedAccessType":
case "TSMappedType":
case "TSTemplateLiteralType":
case "TSLiteralType":
case "TSExpressionWithTypeArguments":
case "TSImportType":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isTSBaseType(node, opts) {
if (!node) return false;
switch (node.type) {
case "TSAnyKeyword":
case "TSBooleanKeyword":
case "TSBigIntKeyword":
case "TSIntrinsicKeyword":
case "TSNeverKeyword":
case "TSNullKeyword":
case "TSNumberKeyword":
case "TSObjectKeyword":
case "TSStringKeyword":
case "TSSymbolKeyword":
case "TSUndefinedKeyword":
case "TSUnknownKeyword":
case "TSVoidKeyword":
case "TSThisType":
case "TSTemplateLiteralType":
case "TSLiteralType":
break;
default:
return false;
}
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isNumberLiteral(node, opts) {
(0, _deprecationWarning.default)("isNumberLiteral", "isNumericLiteral");
if (!node) return false;
if (node.type !== "NumberLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isRegexLiteral(node, opts) {
(0, _deprecationWarning.default)("isRegexLiteral", "isRegExpLiteral");
if (!node) return false;
if (node.type !== "RegexLiteral") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isRestProperty(node, opts) {
(0, _deprecationWarning.default)("isRestProperty", "isRestElement");
if (!node) return false;
if (node.type !== "RestProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isSpreadProperty(node, opts) {
(0, _deprecationWarning.default)("isSpreadProperty", "isSpreadElement");
if (!node) return false;
if (node.type !== "SpreadProperty") return false;
return opts == null || (0, _shallowEqual.default)(node, opts);
}
function isModuleDeclaration(node, opts) {
(0, _deprecationWarning.default)("isModuleDeclaration", "isImportOrExportDeclaration");
return isImportOrExportDeclaration(node, opts);
}
//# sourceMappingURL=index.js.map
{"version":3,"names":["_shallowEqual","require","_deprecationWarning","isArrayExpression","node","opts","type","shallowEqual","isAssignmentExpression","isBinaryExpression","isInterpreterDirective","isDirective","isDirectiveLiteral","isBlockStatement","isBreakStatement","isCallExpression","isCatchClause","isConditionalExpression","isContinueStatement","isDebuggerStatement","isDoWhileStatement","isEmptyStatement","isExpressionStatement","isFile","isForInStatement","isForStatement","isFunctionDeclaration","isFunctionExpression","isIdentifier","isIfStatement","isLabeledStatement","isStringLiteral","isNumericLiteral","isNullLiteral","isBooleanLiteral","isRegExpLiteral","isLogicalExpression","isMemberExpression","isNewExpression","isProgram","isObjectExpression","isObjectMethod","isObjectProperty","isRestElement","isReturnStatement","isSequenceExpression","isParenthesizedExpression","isSwitchCase","isSwitchStatement","isThisExpression","isThrowStatement","isTryStatement","isUnaryExpression","isUpdateExpression","isVariableDeclaration","isVariableDeclarator","isWhileStatement","isWithStatement","isAssignmentPattern","isArrayPattern","isArrowFunctionExpression","isClassBody","isClassExpression","isClassDeclaration","isExportAllDeclaration","isExportDefaultDeclaration","isExportNamedDeclaration","isExportSpecifier","isForOfStatement","isImportDeclaration","isImportDefaultSpecifier","isImportNamespaceSpecifier","isImportSpecifier","isImportExpression","isMetaProperty","isClassMethod","isObjectPattern","isSpreadElement","isSuper","isTaggedTemplateExpression","isTemplateElement","isTemplateLiteral","isYieldExpression","isAwaitExpression","isImport","isBigIntLiteral","isExportNamespaceSpecifier","isOptionalMemberExpression","isOptionalCallExpression","isClassProperty","isClassAccessorProperty","isClassPrivateProperty","isClassPrivateMethod","isPrivateName","isStaticBlock","isImportAttribute","isAnyTypeAnnotation","isArrayTypeAnnotation","isBooleanTypeAnnotation","isBooleanLiteralTypeAnnotation","isNullLiteralTypeAnnotation","isClassImplements","isDeclareClass","isDeclareFunction","isDeclareInterface","isDeclareModule","isDeclareModuleExports","isDeclareTypeAlias","isDeclareOpaqueType","isDeclareVariable","isDeclareExportDeclaration","isDeclareExportAllDeclaration","isDeclaredPredicate","isExistsTypeAnnotation","isFunctionTypeAnnotation","isFunctionTypeParam","isGenericTypeAnnotation","isInferredPredicate","isInterfaceExtends","isInterfaceDeclaration","isInterfaceTypeAnnotation","isIntersectionTypeAnnotation","isMixedTypeAnnotation","isEmptyTypeAnnotation","isNullableTypeAnnotation","isNumberLiteralTypeAnnotation","isNumberTypeAnnotation","isObjectTypeAnnotation","isObjectTypeInternalSlot","isObjectTypeCallProperty","isObjectTypeIndexer","isObjectTypeProperty","isObjectTypeSpreadProperty","isOpaqueType","isQualifiedTypeIdentifier","isStringLiteralTypeAnnotation","isStringTypeAnnotation","isSymbolTypeAnnotation","isThisTypeAnnotation","isTupleTypeAnnotation","isTypeofTypeAnnotation","isTypeAlias","isTypeAnnotation","isTypeCastExpression","isTypeParameter","isTypeParameterDeclaration","isTypeParameterInstantiation","isUnionTypeAnnotation","isVariance","isVoidTypeAnnotation","isEnumDeclaration","isEnumBooleanBody","isEnumNumberBody","isEnumStringBody","isEnumSymbolBody","isEnumBooleanMember","isEnumNumberMember","isEnumStringMember","isEnumDefaultedMember","isIndexedAccessType","isOptionalIndexedAccessType","isJSXAttribute","isJSXClosingElement","isJSXElement","isJSXEmptyExpression","isJSXExpressionContainer","isJSXSpreadChild","isJSXIdentifier","isJSXMemberExpression","isJSXNamespacedName","isJSXOpeningElement","isJSXSpreadAttribute","isJSXText","isJSXFragment","isJSXOpeningFragment","isJSXClosingFragment","isNoop","isPlaceholder","isV8IntrinsicIdentifier","isArgumentPlaceholder","isBindExpression","isDecorator","isDoExpression","isExportDefaultSpecifier","isRecordExpression","isTupleExpression","isDecimalLiteral","isModuleExpression","isTopicReference","isPipelineTopicExpression","isPipelineBareFunction","isPipelinePrimaryTopicReference","isVoidPattern","isTSParameterProperty","isTSDeclareFunction","isTSDeclareMethod","isTSQualifiedName","isTSCallSignatureDeclaration","isTSConstructSignatureDeclaration","isTSPropertySignature","isTSMethodSignature","isTSIndexSignature","isTSAnyKeyword","isTSBooleanKeyword","isTSBigIntKeyword","isTSIntrinsicKeyword","isTSNeverKeyword","isTSNullKeyword","isTSNumberKeyword","isTSObjectKeyword","isTSStringKeyword","isTSSymbolKeyword","isTSUndefinedKeyword","isTSUnknownKeyword","isTSVoidKeyword","isTSThisType","isTSFunctionType","isTSConstructorType","isTSTypeReference","isTSTypePredicate","isTSTypeQuery","isTSTypeLiteral","isTSArrayType","isTSTupleType","isTSOptionalType","isTSRestType","isTSNamedTupleMember","isTSUnionType","isTSIntersectionType","isTSConditionalType","isTSInferType","isTSParenthesizedType","isTSTypeOperator","isTSIndexedAccessType","isTSMappedType","isTSTemplateLiteralType","isTSLiteralType","isTSExpressionWithTypeArguments","isTSInterfaceDeclaration","isTSInterfaceBody","isTSTypeAliasDeclaration","isTSInstantiationExpression","isTSAsExpression","isTSSatisfiesExpression","isTSTypeAssertion","isTSEnumBody","isTSEnumDeclaration","isTSEnumMember","isTSModuleDeclaration","isTSModuleBlock","isTSImportType","isTSImportEqualsDeclaration","isTSExternalModuleReference","isTSNonNullExpression","isTSExportAssignment","isTSNamespaceExportDeclaration","isTSTypeAnnotation","isTSTypeParameterInstantiation","isTSTypeParameterDeclaration","isTSTypeParameter","isStandardized","expectedNode","isExpression","isBinary","isScopable","isBlockParent","isBlock","isStatement","isTerminatorless","isCompletionStatement","isConditional","isLoop","isWhile","isExpressionWrapper","isFor","isForXStatement","isFunction","isFunctionParent","isPureish","isDeclaration","isFunctionParameter","isPatternLike","isLVal","isTSEntityName","isLiteral","isImmutable","isUserWhitespacable","isMethod","isObjectMember","isProperty","isUnaryLike","isPattern","isClass","isImportOrExportDeclaration","isExportDeclaration","isModuleSpecifier","isAccessor","isPrivate","isFlow","isFlowType","isFlowBaseAnnotation","isFlowDeclaration","isFlowPredicate","isEnumBody","isEnumMember","isJSX","isMiscellaneous","isTypeScript","isTSTypeElement","isTSType","isTSBaseType","isNumberLiteral","deprecationWarning","isRegexLiteral","isRestProperty","isSpreadProperty","isModuleDeclaration"],"sources":["../../../src/validators/generated/index.ts"],"sourcesContent":["/*\n * This file is auto-generated! Do not modify it directly.\n * To re-generate run 'make build'\n */\n\n/* eslint-disable no-fallthrough */\n\nimport shallowEqual from \"../../utils/shallowEqual.ts\";\nimport type * as t from \"../../index.ts\";\nimport deprecationWarning from \"../../utils/deprecationWarning.ts\";\n\ntype Opts<Obj> = Partial<{\n [Prop in keyof Obj]: Obj[Prop] extends t.Node\n ? t.Node\n : Obj[Prop] extends t.Node[]\n ? t.Node[]\n : Obj[Prop];\n}>;\n\nexport function isArrayExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ArrayExpression> | null,\n): node is t.ArrayExpression {\n if (!node) return false;\n\n if (node.type !== \"ArrayExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isAssignmentExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.AssignmentExpression> | null,\n): node is t.AssignmentExpression {\n if (!node) return false;\n\n if (node.type !== \"AssignmentExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBinaryExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.BinaryExpression> | null,\n): node is t.BinaryExpression {\n if (!node) return false;\n\n if (node.type !== \"BinaryExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isInterpreterDirective(\n node: t.Node | null | undefined,\n opts?: Opts<t.InterpreterDirective> | null,\n): node is t.InterpreterDirective {\n if (!node) return false;\n\n if (node.type !== \"InterpreterDirective\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDirective(\n node: t.Node | null | undefined,\n opts?: Opts<t.Directive> | null,\n): node is t.Directive {\n if (!node) return false;\n\n if (node.type !== \"Directive\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDirectiveLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.DirectiveLiteral> | null,\n): node is t.DirectiveLiteral {\n if (!node) return false;\n\n if (node.type !== \"DirectiveLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBlockStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.BlockStatement> | null,\n): node is t.BlockStatement {\n if (!node) return false;\n\n if (node.type !== \"BlockStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBreakStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.BreakStatement> | null,\n): node is t.BreakStatement {\n if (!node) return false;\n\n if (node.type !== \"BreakStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isCallExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.CallExpression> | null,\n): node is t.CallExpression {\n if (!node) return false;\n\n if (node.type !== \"CallExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isCatchClause(\n node: t.Node | null | undefined,\n opts?: Opts<t.CatchClause> | null,\n): node is t.CatchClause {\n if (!node) return false;\n\n if (node.type !== \"CatchClause\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isConditionalExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ConditionalExpression> | null,\n): node is t.ConditionalExpression {\n if (!node) return false;\n\n if (node.type !== \"ConditionalExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isContinueStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ContinueStatement> | null,\n): node is t.ContinueStatement {\n if (!node) return false;\n\n if (node.type !== \"ContinueStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDebuggerStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.DebuggerStatement> | null,\n): node is t.DebuggerStatement {\n if (!node) return false;\n\n if (node.type !== \"DebuggerStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDoWhileStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.DoWhileStatement> | null,\n): node is t.DoWhileStatement {\n if (!node) return false;\n\n if (node.type !== \"DoWhileStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEmptyStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.EmptyStatement> | null,\n): node is t.EmptyStatement {\n if (!node) return false;\n\n if (node.type !== \"EmptyStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExpressionStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExpressionStatement> | null,\n): node is t.ExpressionStatement {\n if (!node) return false;\n\n if (node.type !== \"ExpressionStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFile(\n node: t.Node | null | undefined,\n opts?: Opts<t.File> | null,\n): node is t.File {\n if (!node) return false;\n\n if (node.type !== \"File\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isForInStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ForInStatement> | null,\n): node is t.ForInStatement {\n if (!node) return false;\n\n if (node.type !== \"ForInStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isForStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ForStatement> | null,\n): node is t.ForStatement {\n if (!node) return false;\n\n if (node.type !== \"ForStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionDeclaration> | null,\n): node is t.FunctionDeclaration {\n if (!node) return false;\n\n if (node.type !== \"FunctionDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionExpression> | null,\n): node is t.FunctionExpression {\n if (!node) return false;\n\n if (node.type !== \"FunctionExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isIdentifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.Identifier> | null,\n): node is t.Identifier {\n if (!node) return false;\n\n if (node.type !== \"Identifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isIfStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.IfStatement> | null,\n): node is t.IfStatement {\n if (!node) return false;\n\n if (node.type !== \"IfStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isLabeledStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.LabeledStatement> | null,\n): node is t.LabeledStatement {\n if (!node) return false;\n\n if (node.type !== \"LabeledStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStringLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.StringLiteral> | null,\n): node is t.StringLiteral {\n if (!node) return false;\n\n if (node.type !== \"StringLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNumericLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.NumericLiteral> | null,\n): node is t.NumericLiteral {\n if (!node) return false;\n\n if (node.type !== \"NumericLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNullLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.NullLiteral> | null,\n): node is t.NullLiteral {\n if (!node) return false;\n\n if (node.type !== \"NullLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBooleanLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.BooleanLiteral> | null,\n): node is t.BooleanLiteral {\n if (!node) return false;\n\n if (node.type !== \"BooleanLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isRegExpLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.RegExpLiteral> | null,\n): node is t.RegExpLiteral {\n if (!node) return false;\n\n if (node.type !== \"RegExpLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isLogicalExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.LogicalExpression> | null,\n): node is t.LogicalExpression {\n if (!node) return false;\n\n if (node.type !== \"LogicalExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isMemberExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.MemberExpression> | null,\n): node is t.MemberExpression {\n if (!node) return false;\n\n if (node.type !== \"MemberExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNewExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.NewExpression> | null,\n): node is t.NewExpression {\n if (!node) return false;\n\n if (node.type !== \"NewExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isProgram(\n node: t.Node | null | undefined,\n opts?: Opts<t.Program> | null,\n): node is t.Program {\n if (!node) return false;\n\n if (node.type !== \"Program\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectExpression> | null,\n): node is t.ObjectExpression {\n if (!node) return false;\n\n if (node.type !== \"ObjectExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectMethod(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectMethod> | null,\n): node is t.ObjectMethod {\n if (!node) return false;\n\n if (node.type !== \"ObjectMethod\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectProperty> | null,\n): node is t.ObjectProperty {\n if (!node) return false;\n\n if (node.type !== \"ObjectProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isRestElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.RestElement> | null,\n): node is t.RestElement {\n if (!node) return false;\n\n if (node.type !== \"RestElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isReturnStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ReturnStatement> | null,\n): node is t.ReturnStatement {\n if (!node) return false;\n\n if (node.type !== \"ReturnStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSequenceExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.SequenceExpression> | null,\n): node is t.SequenceExpression {\n if (!node) return false;\n\n if (node.type !== \"SequenceExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isParenthesizedExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ParenthesizedExpression> | null,\n): node is t.ParenthesizedExpression {\n if (!node) return false;\n\n if (node.type !== \"ParenthesizedExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSwitchCase(\n node: t.Node | null | undefined,\n opts?: Opts<t.SwitchCase> | null,\n): node is t.SwitchCase {\n if (!node) return false;\n\n if (node.type !== \"SwitchCase\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSwitchStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.SwitchStatement> | null,\n): node is t.SwitchStatement {\n if (!node) return false;\n\n if (node.type !== \"SwitchStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isThisExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ThisExpression> | null,\n): node is t.ThisExpression {\n if (!node) return false;\n\n if (node.type !== \"ThisExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isThrowStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ThrowStatement> | null,\n): node is t.ThrowStatement {\n if (!node) return false;\n\n if (node.type !== \"ThrowStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTryStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.TryStatement> | null,\n): node is t.TryStatement {\n if (!node) return false;\n\n if (node.type !== \"TryStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isUnaryExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.UnaryExpression> | null,\n): node is t.UnaryExpression {\n if (!node) return false;\n\n if (node.type !== \"UnaryExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isUpdateExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.UpdateExpression> | null,\n): node is t.UpdateExpression {\n if (!node) return false;\n\n if (node.type !== \"UpdateExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isVariableDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.VariableDeclaration> | null,\n): node is t.VariableDeclaration {\n if (!node) return false;\n\n if (node.type !== \"VariableDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isVariableDeclarator(\n node: t.Node | null | undefined,\n opts?: Opts<t.VariableDeclarator> | null,\n): node is t.VariableDeclarator {\n if (!node) return false;\n\n if (node.type !== \"VariableDeclarator\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isWhileStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.WhileStatement> | null,\n): node is t.WhileStatement {\n if (!node) return false;\n\n if (node.type !== \"WhileStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isWithStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.WithStatement> | null,\n): node is t.WithStatement {\n if (!node) return false;\n\n if (node.type !== \"WithStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isAssignmentPattern(\n node: t.Node | null | undefined,\n opts?: Opts<t.AssignmentPattern> | null,\n): node is t.AssignmentPattern {\n if (!node) return false;\n\n if (node.type !== \"AssignmentPattern\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isArrayPattern(\n node: t.Node | null | undefined,\n opts?: Opts<t.ArrayPattern> | null,\n): node is t.ArrayPattern {\n if (!node) return false;\n\n if (node.type !== \"ArrayPattern\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isArrowFunctionExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ArrowFunctionExpression> | null,\n): node is t.ArrowFunctionExpression {\n if (!node) return false;\n\n if (node.type !== \"ArrowFunctionExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassBody> | null,\n): node is t.ClassBody {\n if (!node) return false;\n\n if (node.type !== \"ClassBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassExpression> | null,\n): node is t.ClassExpression {\n if (!node) return false;\n\n if (node.type !== \"ClassExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassDeclaration> | null,\n): node is t.ClassDeclaration {\n if (!node) return false;\n\n if (node.type !== \"ClassDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportAllDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportAllDeclaration> | null,\n): node is t.ExportAllDeclaration {\n if (!node) return false;\n\n if (node.type !== \"ExportAllDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportDefaultDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportDefaultDeclaration> | null,\n): node is t.ExportDefaultDeclaration {\n if (!node) return false;\n\n if (node.type !== \"ExportDefaultDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportNamedDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportNamedDeclaration> | null,\n): node is t.ExportNamedDeclaration {\n if (!node) return false;\n\n if (node.type !== \"ExportNamedDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportSpecifier> | null,\n): node is t.ExportSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ExportSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isForOfStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ForOfStatement> | null,\n): node is t.ForOfStatement {\n if (!node) return false;\n\n if (node.type !== \"ForOfStatement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportDeclaration> | null,\n): node is t.ImportDeclaration {\n if (!node) return false;\n\n if (node.type !== \"ImportDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportDefaultSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportDefaultSpecifier> | null,\n): node is t.ImportDefaultSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ImportDefaultSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportNamespaceSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportNamespaceSpecifier> | null,\n): node is t.ImportNamespaceSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ImportNamespaceSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportSpecifier> | null,\n): node is t.ImportSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ImportSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportExpression> | null,\n): node is t.ImportExpression {\n if (!node) return false;\n\n if (node.type !== \"ImportExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isMetaProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.MetaProperty> | null,\n): node is t.MetaProperty {\n if (!node) return false;\n\n if (node.type !== \"MetaProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassMethod(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassMethod> | null,\n): node is t.ClassMethod {\n if (!node) return false;\n\n if (node.type !== \"ClassMethod\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectPattern(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectPattern> | null,\n): node is t.ObjectPattern {\n if (!node) return false;\n\n if (node.type !== \"ObjectPattern\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSpreadElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.SpreadElement> | null,\n): node is t.SpreadElement {\n if (!node) return false;\n\n if (node.type !== \"SpreadElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSuper(\n node: t.Node | null | undefined,\n opts?: Opts<t.Super> | null,\n): node is t.Super {\n if (!node) return false;\n\n if (node.type !== \"Super\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTaggedTemplateExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TaggedTemplateExpression> | null,\n): node is t.TaggedTemplateExpression {\n if (!node) return false;\n\n if (node.type !== \"TaggedTemplateExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTemplateElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.TemplateElement> | null,\n): node is t.TemplateElement {\n if (!node) return false;\n\n if (node.type !== \"TemplateElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTemplateLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.TemplateLiteral> | null,\n): node is t.TemplateLiteral {\n if (!node) return false;\n\n if (node.type !== \"TemplateLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isYieldExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.YieldExpression> | null,\n): node is t.YieldExpression {\n if (!node) return false;\n\n if (node.type !== \"YieldExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isAwaitExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.AwaitExpression> | null,\n): node is t.AwaitExpression {\n if (!node) return false;\n\n if (node.type !== \"AwaitExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImport(\n node: t.Node | null | undefined,\n opts?: Opts<t.Import> | null,\n): node is t.Import {\n if (!node) return false;\n\n if (node.type !== \"Import\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBigIntLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.BigIntLiteral> | null,\n): node is t.BigIntLiteral {\n if (!node) return false;\n\n if (node.type !== \"BigIntLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportNamespaceSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportNamespaceSpecifier> | null,\n): node is t.ExportNamespaceSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ExportNamespaceSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isOptionalMemberExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.OptionalMemberExpression> | null,\n): node is t.OptionalMemberExpression {\n if (!node) return false;\n\n if (node.type !== \"OptionalMemberExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isOptionalCallExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.OptionalCallExpression> | null,\n): node is t.OptionalCallExpression {\n if (!node) return false;\n\n if (node.type !== \"OptionalCallExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassProperty> | null,\n): node is t.ClassProperty {\n if (!node) return false;\n\n if (node.type !== \"ClassProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassAccessorProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassAccessorProperty> | null,\n): node is t.ClassAccessorProperty {\n if (!node) return false;\n\n if (node.type !== \"ClassAccessorProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassPrivateProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassPrivateProperty> | null,\n): node is t.ClassPrivateProperty {\n if (!node) return false;\n\n if (node.type !== \"ClassPrivateProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassPrivateMethod(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassPrivateMethod> | null,\n): node is t.ClassPrivateMethod {\n if (!node) return false;\n\n if (node.type !== \"ClassPrivateMethod\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPrivateName(\n node: t.Node | null | undefined,\n opts?: Opts<t.PrivateName> | null,\n): node is t.PrivateName {\n if (!node) return false;\n\n if (node.type !== \"PrivateName\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStaticBlock(\n node: t.Node | null | undefined,\n opts?: Opts<t.StaticBlock> | null,\n): node is t.StaticBlock {\n if (!node) return false;\n\n if (node.type !== \"StaticBlock\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportAttribute(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportAttribute> | null,\n): node is t.ImportAttribute {\n if (!node) return false;\n\n if (node.type !== \"ImportAttribute\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isAnyTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.AnyTypeAnnotation> | null,\n): node is t.AnyTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"AnyTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isArrayTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.ArrayTypeAnnotation> | null,\n): node is t.ArrayTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"ArrayTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBooleanTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.BooleanTypeAnnotation> | null,\n): node is t.BooleanTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"BooleanTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBooleanLiteralTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.BooleanLiteralTypeAnnotation> | null,\n): node is t.BooleanLiteralTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"BooleanLiteralTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNullLiteralTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.NullLiteralTypeAnnotation> | null,\n): node is t.NullLiteralTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"NullLiteralTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClassImplements(\n node: t.Node | null | undefined,\n opts?: Opts<t.ClassImplements> | null,\n): node is t.ClassImplements {\n if (!node) return false;\n\n if (node.type !== \"ClassImplements\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareClass(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareClass> | null,\n): node is t.DeclareClass {\n if (!node) return false;\n\n if (node.type !== \"DeclareClass\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareFunction(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareFunction> | null,\n): node is t.DeclareFunction {\n if (!node) return false;\n\n if (node.type !== \"DeclareFunction\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareInterface(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareInterface> | null,\n): node is t.DeclareInterface {\n if (!node) return false;\n\n if (node.type !== \"DeclareInterface\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareModule(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareModule> | null,\n): node is t.DeclareModule {\n if (!node) return false;\n\n if (node.type !== \"DeclareModule\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareModuleExports(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareModuleExports> | null,\n): node is t.DeclareModuleExports {\n if (!node) return false;\n\n if (node.type !== \"DeclareModuleExports\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareTypeAlias(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareTypeAlias> | null,\n): node is t.DeclareTypeAlias {\n if (!node) return false;\n\n if (node.type !== \"DeclareTypeAlias\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareOpaqueType(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareOpaqueType> | null,\n): node is t.DeclareOpaqueType {\n if (!node) return false;\n\n if (node.type !== \"DeclareOpaqueType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareVariable(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareVariable> | null,\n): node is t.DeclareVariable {\n if (!node) return false;\n\n if (node.type !== \"DeclareVariable\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareExportDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareExportDeclaration> | null,\n): node is t.DeclareExportDeclaration {\n if (!node) return false;\n\n if (node.type !== \"DeclareExportDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclareExportAllDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclareExportAllDeclaration> | null,\n): node is t.DeclareExportAllDeclaration {\n if (!node) return false;\n\n if (node.type !== \"DeclareExportAllDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclaredPredicate(\n node: t.Node | null | undefined,\n opts?: Opts<t.DeclaredPredicate> | null,\n): node is t.DeclaredPredicate {\n if (!node) return false;\n\n if (node.type !== \"DeclaredPredicate\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExistsTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExistsTypeAnnotation> | null,\n): node is t.ExistsTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"ExistsTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionTypeAnnotation> | null,\n): node is t.FunctionTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"FunctionTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionTypeParam(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionTypeParam> | null,\n): node is t.FunctionTypeParam {\n if (!node) return false;\n\n if (node.type !== \"FunctionTypeParam\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isGenericTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.GenericTypeAnnotation> | null,\n): node is t.GenericTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"GenericTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isInferredPredicate(\n node: t.Node | null | undefined,\n opts?: Opts<t.InferredPredicate> | null,\n): node is t.InferredPredicate {\n if (!node) return false;\n\n if (node.type !== \"InferredPredicate\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isInterfaceExtends(\n node: t.Node | null | undefined,\n opts?: Opts<t.InterfaceExtends> | null,\n): node is t.InterfaceExtends {\n if (!node) return false;\n\n if (node.type !== \"InterfaceExtends\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isInterfaceDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.InterfaceDeclaration> | null,\n): node is t.InterfaceDeclaration {\n if (!node) return false;\n\n if (node.type !== \"InterfaceDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isInterfaceTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.InterfaceTypeAnnotation> | null,\n): node is t.InterfaceTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"InterfaceTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isIntersectionTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.IntersectionTypeAnnotation> | null,\n): node is t.IntersectionTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"IntersectionTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isMixedTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.MixedTypeAnnotation> | null,\n): node is t.MixedTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"MixedTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEmptyTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.EmptyTypeAnnotation> | null,\n): node is t.EmptyTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"EmptyTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNullableTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.NullableTypeAnnotation> | null,\n): node is t.NullableTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"NullableTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNumberLiteralTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.NumberLiteralTypeAnnotation> | null,\n): node is t.NumberLiteralTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"NumberLiteralTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNumberTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.NumberTypeAnnotation> | null,\n): node is t.NumberTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"NumberTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeAnnotation> | null,\n): node is t.ObjectTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeInternalSlot(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeInternalSlot> | null,\n): node is t.ObjectTypeInternalSlot {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeInternalSlot\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeCallProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeCallProperty> | null,\n): node is t.ObjectTypeCallProperty {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeCallProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeIndexer(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeIndexer> | null,\n): node is t.ObjectTypeIndexer {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeIndexer\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeProperty> | null,\n): node is t.ObjectTypeProperty {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectTypeSpreadProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectTypeSpreadProperty> | null,\n): node is t.ObjectTypeSpreadProperty {\n if (!node) return false;\n\n if (node.type !== \"ObjectTypeSpreadProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isOpaqueType(\n node: t.Node | null | undefined,\n opts?: Opts<t.OpaqueType> | null,\n): node is t.OpaqueType {\n if (!node) return false;\n\n if (node.type !== \"OpaqueType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isQualifiedTypeIdentifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.QualifiedTypeIdentifier> | null,\n): node is t.QualifiedTypeIdentifier {\n if (!node) return false;\n\n if (node.type !== \"QualifiedTypeIdentifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStringLiteralTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.StringLiteralTypeAnnotation> | null,\n): node is t.StringLiteralTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"StringLiteralTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStringTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.StringTypeAnnotation> | null,\n): node is t.StringTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"StringTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isSymbolTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.SymbolTypeAnnotation> | null,\n): node is t.SymbolTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"SymbolTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isThisTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.ThisTypeAnnotation> | null,\n): node is t.ThisTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"ThisTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTupleTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TupleTypeAnnotation> | null,\n): node is t.TupleTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"TupleTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeofTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeofTypeAnnotation> | null,\n): node is t.TypeofTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"TypeofTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeAlias(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeAlias> | null,\n): node is t.TypeAlias {\n if (!node) return false;\n\n if (node.type !== \"TypeAlias\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeAnnotation> | null,\n): node is t.TypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"TypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeCastExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeCastExpression> | null,\n): node is t.TypeCastExpression {\n if (!node) return false;\n\n if (node.type !== \"TypeCastExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeParameter(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeParameter> | null,\n): node is t.TypeParameter {\n if (!node) return false;\n\n if (node.type !== \"TypeParameter\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeParameterDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeParameterDeclaration> | null,\n): node is t.TypeParameterDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TypeParameterDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeParameterInstantiation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeParameterInstantiation> | null,\n): node is t.TypeParameterInstantiation {\n if (!node) return false;\n\n if (node.type !== \"TypeParameterInstantiation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isUnionTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.UnionTypeAnnotation> | null,\n): node is t.UnionTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"UnionTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isVariance(\n node: t.Node | null | undefined,\n opts?: Opts<t.Variance> | null,\n): node is t.Variance {\n if (!node) return false;\n\n if (node.type !== \"Variance\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isVoidTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.VoidTypeAnnotation> | null,\n): node is t.VoidTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"VoidTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumDeclaration> | null,\n): node is t.EnumDeclaration {\n if (!node) return false;\n\n if (node.type !== \"EnumDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumBooleanBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumBooleanBody> | null,\n): node is t.EnumBooleanBody {\n if (!node) return false;\n\n if (node.type !== \"EnumBooleanBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumNumberBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumNumberBody> | null,\n): node is t.EnumNumberBody {\n if (!node) return false;\n\n if (node.type !== \"EnumNumberBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumStringBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumStringBody> | null,\n): node is t.EnumStringBody {\n if (!node) return false;\n\n if (node.type !== \"EnumStringBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumSymbolBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumSymbolBody> | null,\n): node is t.EnumSymbolBody {\n if (!node) return false;\n\n if (node.type !== \"EnumSymbolBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumBooleanMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumBooleanMember> | null,\n): node is t.EnumBooleanMember {\n if (!node) return false;\n\n if (node.type !== \"EnumBooleanMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumNumberMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumNumberMember> | null,\n): node is t.EnumNumberMember {\n if (!node) return false;\n\n if (node.type !== \"EnumNumberMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumStringMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumStringMember> | null,\n): node is t.EnumStringMember {\n if (!node) return false;\n\n if (node.type !== \"EnumStringMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumDefaultedMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumDefaultedMember> | null,\n): node is t.EnumDefaultedMember {\n if (!node) return false;\n\n if (node.type !== \"EnumDefaultedMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isIndexedAccessType(\n node: t.Node | null | undefined,\n opts?: Opts<t.IndexedAccessType> | null,\n): node is t.IndexedAccessType {\n if (!node) return false;\n\n if (node.type !== \"IndexedAccessType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isOptionalIndexedAccessType(\n node: t.Node | null | undefined,\n opts?: Opts<t.OptionalIndexedAccessType> | null,\n): node is t.OptionalIndexedAccessType {\n if (!node) return false;\n\n if (node.type !== \"OptionalIndexedAccessType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXAttribute(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXAttribute> | null,\n): node is t.JSXAttribute {\n if (!node) return false;\n\n if (node.type !== \"JSXAttribute\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXClosingElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXClosingElement> | null,\n): node is t.JSXClosingElement {\n if (!node) return false;\n\n if (node.type !== \"JSXClosingElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXElement> | null,\n): node is t.JSXElement {\n if (!node) return false;\n\n if (node.type !== \"JSXElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXEmptyExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXEmptyExpression> | null,\n): node is t.JSXEmptyExpression {\n if (!node) return false;\n\n if (node.type !== \"JSXEmptyExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXExpressionContainer(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXExpressionContainer> | null,\n): node is t.JSXExpressionContainer {\n if (!node) return false;\n\n if (node.type !== \"JSXExpressionContainer\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXSpreadChild(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXSpreadChild> | null,\n): node is t.JSXSpreadChild {\n if (!node) return false;\n\n if (node.type !== \"JSXSpreadChild\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXIdentifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXIdentifier> | null,\n): node is t.JSXIdentifier {\n if (!node) return false;\n\n if (node.type !== \"JSXIdentifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXMemberExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXMemberExpression> | null,\n): node is t.JSXMemberExpression {\n if (!node) return false;\n\n if (node.type !== \"JSXMemberExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXNamespacedName(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXNamespacedName> | null,\n): node is t.JSXNamespacedName {\n if (!node) return false;\n\n if (node.type !== \"JSXNamespacedName\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXOpeningElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXOpeningElement> | null,\n): node is t.JSXOpeningElement {\n if (!node) return false;\n\n if (node.type !== \"JSXOpeningElement\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXSpreadAttribute(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXSpreadAttribute> | null,\n): node is t.JSXSpreadAttribute {\n if (!node) return false;\n\n if (node.type !== \"JSXSpreadAttribute\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXText(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXText> | null,\n): node is t.JSXText {\n if (!node) return false;\n\n if (node.type !== \"JSXText\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXFragment(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXFragment> | null,\n): node is t.JSXFragment {\n if (!node) return false;\n\n if (node.type !== \"JSXFragment\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXOpeningFragment(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXOpeningFragment> | null,\n): node is t.JSXOpeningFragment {\n if (!node) return false;\n\n if (node.type !== \"JSXOpeningFragment\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSXClosingFragment(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSXClosingFragment> | null,\n): node is t.JSXClosingFragment {\n if (!node) return false;\n\n if (node.type !== \"JSXClosingFragment\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isNoop(\n node: t.Node | null | undefined,\n opts?: Opts<t.Noop> | null,\n): node is t.Noop {\n if (!node) return false;\n\n if (node.type !== \"Noop\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPlaceholder(\n node: t.Node | null | undefined,\n opts?: Opts<t.Placeholder> | null,\n): node is t.Placeholder {\n if (!node) return false;\n\n if (node.type !== \"Placeholder\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isV8IntrinsicIdentifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.V8IntrinsicIdentifier> | null,\n): node is t.V8IntrinsicIdentifier {\n if (!node) return false;\n\n if (node.type !== \"V8IntrinsicIdentifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isArgumentPlaceholder(\n node: t.Node | null | undefined,\n opts?: Opts<t.ArgumentPlaceholder> | null,\n): node is t.ArgumentPlaceholder {\n if (!node) return false;\n\n if (node.type !== \"ArgumentPlaceholder\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBindExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.BindExpression> | null,\n): node is t.BindExpression {\n if (!node) return false;\n\n if (node.type !== \"BindExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDecorator(\n node: t.Node | null | undefined,\n opts?: Opts<t.Decorator> | null,\n): node is t.Decorator {\n if (!node) return false;\n\n if (node.type !== \"Decorator\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDoExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.DoExpression> | null,\n): node is t.DoExpression {\n if (!node) return false;\n\n if (node.type !== \"DoExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportDefaultSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportDefaultSpecifier> | null,\n): node is t.ExportDefaultSpecifier {\n if (!node) return false;\n\n if (node.type !== \"ExportDefaultSpecifier\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isRecordExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.RecordExpression> | null,\n): node is t.RecordExpression {\n if (!node) return false;\n\n if (node.type !== \"RecordExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTupleExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TupleExpression> | null,\n): node is t.TupleExpression {\n if (!node) return false;\n\n if (node.type !== \"TupleExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDecimalLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.DecimalLiteral> | null,\n): node is t.DecimalLiteral {\n if (!node) return false;\n\n if (node.type !== \"DecimalLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isModuleExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.ModuleExpression> | null,\n): node is t.ModuleExpression {\n if (!node) return false;\n\n if (node.type !== \"ModuleExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTopicReference(\n node: t.Node | null | undefined,\n opts?: Opts<t.TopicReference> | null,\n): node is t.TopicReference {\n if (!node) return false;\n\n if (node.type !== \"TopicReference\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPipelineTopicExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.PipelineTopicExpression> | null,\n): node is t.PipelineTopicExpression {\n if (!node) return false;\n\n if (node.type !== \"PipelineTopicExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPipelineBareFunction(\n node: t.Node | null | undefined,\n opts?: Opts<t.PipelineBareFunction> | null,\n): node is t.PipelineBareFunction {\n if (!node) return false;\n\n if (node.type !== \"PipelineBareFunction\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPipelinePrimaryTopicReference(\n node: t.Node | null | undefined,\n opts?: Opts<t.PipelinePrimaryTopicReference> | null,\n): node is t.PipelinePrimaryTopicReference {\n if (!node) return false;\n\n if (node.type !== \"PipelinePrimaryTopicReference\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isVoidPattern(\n node: t.Node | null | undefined,\n opts?: Opts<t.VoidPattern> | null,\n): node is t.VoidPattern {\n if (!node) return false;\n\n if (node.type !== \"VoidPattern\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSParameterProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSParameterProperty> | null,\n): node is t.TSParameterProperty {\n if (!node) return false;\n\n if (node.type !== \"TSParameterProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSDeclareFunction(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSDeclareFunction> | null,\n): node is t.TSDeclareFunction {\n if (!node) return false;\n\n if (node.type !== \"TSDeclareFunction\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSDeclareMethod(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSDeclareMethod> | null,\n): node is t.TSDeclareMethod {\n if (!node) return false;\n\n if (node.type !== \"TSDeclareMethod\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSQualifiedName(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSQualifiedName> | null,\n): node is t.TSQualifiedName {\n if (!node) return false;\n\n if (node.type !== \"TSQualifiedName\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSCallSignatureDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSCallSignatureDeclaration> | null,\n): node is t.TSCallSignatureDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSCallSignatureDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSConstructSignatureDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSConstructSignatureDeclaration> | null,\n): node is t.TSConstructSignatureDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSConstructSignatureDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSPropertySignature(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSPropertySignature> | null,\n): node is t.TSPropertySignature {\n if (!node) return false;\n\n if (node.type !== \"TSPropertySignature\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSMethodSignature(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSMethodSignature> | null,\n): node is t.TSMethodSignature {\n if (!node) return false;\n\n if (node.type !== \"TSMethodSignature\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSIndexSignature(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSIndexSignature> | null,\n): node is t.TSIndexSignature {\n if (!node) return false;\n\n if (node.type !== \"TSIndexSignature\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSAnyKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSAnyKeyword> | null,\n): node is t.TSAnyKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSAnyKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSBooleanKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSBooleanKeyword> | null,\n): node is t.TSBooleanKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSBooleanKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSBigIntKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSBigIntKeyword> | null,\n): node is t.TSBigIntKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSBigIntKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSIntrinsicKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSIntrinsicKeyword> | null,\n): node is t.TSIntrinsicKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSIntrinsicKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNeverKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNeverKeyword> | null,\n): node is t.TSNeverKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSNeverKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNullKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNullKeyword> | null,\n): node is t.TSNullKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSNullKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNumberKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNumberKeyword> | null,\n): node is t.TSNumberKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSNumberKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSObjectKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSObjectKeyword> | null,\n): node is t.TSObjectKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSObjectKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSStringKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSStringKeyword> | null,\n): node is t.TSStringKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSStringKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSSymbolKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSSymbolKeyword> | null,\n): node is t.TSSymbolKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSSymbolKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSUndefinedKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSUndefinedKeyword> | null,\n): node is t.TSUndefinedKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSUndefinedKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSUnknownKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSUnknownKeyword> | null,\n): node is t.TSUnknownKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSUnknownKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSVoidKeyword(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSVoidKeyword> | null,\n): node is t.TSVoidKeyword {\n if (!node) return false;\n\n if (node.type !== \"TSVoidKeyword\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSThisType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSThisType> | null,\n): node is t.TSThisType {\n if (!node) return false;\n\n if (node.type !== \"TSThisType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSFunctionType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSFunctionType> | null,\n): node is t.TSFunctionType {\n if (!node) return false;\n\n if (node.type !== \"TSFunctionType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSConstructorType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSConstructorType> | null,\n): node is t.TSConstructorType {\n if (!node) return false;\n\n if (node.type !== \"TSConstructorType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeReference(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeReference> | null,\n): node is t.TSTypeReference {\n if (!node) return false;\n\n if (node.type !== \"TSTypeReference\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypePredicate(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypePredicate> | null,\n): node is t.TSTypePredicate {\n if (!node) return false;\n\n if (node.type !== \"TSTypePredicate\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeQuery(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeQuery> | null,\n): node is t.TSTypeQuery {\n if (!node) return false;\n\n if (node.type !== \"TSTypeQuery\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeLiteral> | null,\n): node is t.TSTypeLiteral {\n if (!node) return false;\n\n if (node.type !== \"TSTypeLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSArrayType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSArrayType> | null,\n): node is t.TSArrayType {\n if (!node) return false;\n\n if (node.type !== \"TSArrayType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTupleType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTupleType> | null,\n): node is t.TSTupleType {\n if (!node) return false;\n\n if (node.type !== \"TSTupleType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSOptionalType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSOptionalType> | null,\n): node is t.TSOptionalType {\n if (!node) return false;\n\n if (node.type !== \"TSOptionalType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSRestType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSRestType> | null,\n): node is t.TSRestType {\n if (!node) return false;\n\n if (node.type !== \"TSRestType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNamedTupleMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNamedTupleMember> | null,\n): node is t.TSNamedTupleMember {\n if (!node) return false;\n\n if (node.type !== \"TSNamedTupleMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSUnionType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSUnionType> | null,\n): node is t.TSUnionType {\n if (!node) return false;\n\n if (node.type !== \"TSUnionType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSIntersectionType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSIntersectionType> | null,\n): node is t.TSIntersectionType {\n if (!node) return false;\n\n if (node.type !== \"TSIntersectionType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSConditionalType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSConditionalType> | null,\n): node is t.TSConditionalType {\n if (!node) return false;\n\n if (node.type !== \"TSConditionalType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSInferType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSInferType> | null,\n): node is t.TSInferType {\n if (!node) return false;\n\n if (node.type !== \"TSInferType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSParenthesizedType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSParenthesizedType> | null,\n): node is t.TSParenthesizedType {\n if (!node) return false;\n\n if (node.type !== \"TSParenthesizedType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeOperator(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeOperator> | null,\n): node is t.TSTypeOperator {\n if (!node) return false;\n\n if (node.type !== \"TSTypeOperator\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSIndexedAccessType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSIndexedAccessType> | null,\n): node is t.TSIndexedAccessType {\n if (!node) return false;\n\n if (node.type !== \"TSIndexedAccessType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSMappedType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSMappedType> | null,\n): node is t.TSMappedType {\n if (!node) return false;\n\n if (node.type !== \"TSMappedType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTemplateLiteralType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTemplateLiteralType> | null,\n): node is t.TSTemplateLiteralType {\n if (!node) return false;\n\n if (node.type !== \"TSTemplateLiteralType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSLiteralType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSLiteralType> | null,\n): node is t.TSLiteralType {\n if (!node) return false;\n\n if (node.type !== \"TSLiteralType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSExpressionWithTypeArguments(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSExpressionWithTypeArguments> | null,\n): node is t.TSExpressionWithTypeArguments {\n if (!node) return false;\n\n if (node.type !== \"TSExpressionWithTypeArguments\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSInterfaceDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSInterfaceDeclaration> | null,\n): node is t.TSInterfaceDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSInterfaceDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSInterfaceBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSInterfaceBody> | null,\n): node is t.TSInterfaceBody {\n if (!node) return false;\n\n if (node.type !== \"TSInterfaceBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeAliasDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeAliasDeclaration> | null,\n): node is t.TSTypeAliasDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSTypeAliasDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSInstantiationExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSInstantiationExpression> | null,\n): node is t.TSInstantiationExpression {\n if (!node) return false;\n\n if (node.type !== \"TSInstantiationExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSAsExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSAsExpression> | null,\n): node is t.TSAsExpression {\n if (!node) return false;\n\n if (node.type !== \"TSAsExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSSatisfiesExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSSatisfiesExpression> | null,\n): node is t.TSSatisfiesExpression {\n if (!node) return false;\n\n if (node.type !== \"TSSatisfiesExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeAssertion(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeAssertion> | null,\n): node is t.TSTypeAssertion {\n if (!node) return false;\n\n if (node.type !== \"TSTypeAssertion\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSEnumBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSEnumBody> | null,\n): node is t.TSEnumBody {\n if (!node) return false;\n\n if (node.type !== \"TSEnumBody\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSEnumDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSEnumDeclaration> | null,\n): node is t.TSEnumDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSEnumDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSEnumMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSEnumMember> | null,\n): node is t.TSEnumMember {\n if (!node) return false;\n\n if (node.type !== \"TSEnumMember\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSModuleDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSModuleDeclaration> | null,\n): node is t.TSModuleDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSModuleDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSModuleBlock(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSModuleBlock> | null,\n): node is t.TSModuleBlock {\n if (!node) return false;\n\n if (node.type !== \"TSModuleBlock\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSImportType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSImportType> | null,\n): node is t.TSImportType {\n if (!node) return false;\n\n if (node.type !== \"TSImportType\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSImportEqualsDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSImportEqualsDeclaration> | null,\n): node is t.TSImportEqualsDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSImportEqualsDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSExternalModuleReference(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSExternalModuleReference> | null,\n): node is t.TSExternalModuleReference {\n if (!node) return false;\n\n if (node.type !== \"TSExternalModuleReference\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNonNullExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNonNullExpression> | null,\n): node is t.TSNonNullExpression {\n if (!node) return false;\n\n if (node.type !== \"TSNonNullExpression\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSExportAssignment(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSExportAssignment> | null,\n): node is t.TSExportAssignment {\n if (!node) return false;\n\n if (node.type !== \"TSExportAssignment\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSNamespaceExportDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSNamespaceExportDeclaration> | null,\n): node is t.TSNamespaceExportDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSNamespaceExportDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeAnnotation> | null,\n): node is t.TSTypeAnnotation {\n if (!node) return false;\n\n if (node.type !== \"TSTypeAnnotation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeParameterInstantiation(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeParameterInstantiation> | null,\n): node is t.TSTypeParameterInstantiation {\n if (!node) return false;\n\n if (node.type !== \"TSTypeParameterInstantiation\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeParameterDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeParameterDeclaration> | null,\n): node is t.TSTypeParameterDeclaration {\n if (!node) return false;\n\n if (node.type !== \"TSTypeParameterDeclaration\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeParameter(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeParameter> | null,\n): node is t.TSTypeParameter {\n if (!node) return false;\n\n if (node.type !== \"TSTypeParameter\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStandardized(\n node: t.Node | null | undefined,\n opts?: Opts<t.Standardized> | null,\n): node is t.Standardized {\n if (!node) return false;\n\n switch (node.type) {\n case \"ArrayExpression\":\n case \"AssignmentExpression\":\n case \"BinaryExpression\":\n case \"InterpreterDirective\":\n case \"Directive\":\n case \"DirectiveLiteral\":\n case \"BlockStatement\":\n case \"BreakStatement\":\n case \"CallExpression\":\n case \"CatchClause\":\n case \"ConditionalExpression\":\n case \"ContinueStatement\":\n case \"DebuggerStatement\":\n case \"DoWhileStatement\":\n case \"EmptyStatement\":\n case \"ExpressionStatement\":\n case \"File\":\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"Identifier\":\n case \"IfStatement\":\n case \"LabeledStatement\":\n case \"StringLiteral\":\n case \"NumericLiteral\":\n case \"NullLiteral\":\n case \"BooleanLiteral\":\n case \"RegExpLiteral\":\n case \"LogicalExpression\":\n case \"MemberExpression\":\n case \"NewExpression\":\n case \"Program\":\n case \"ObjectExpression\":\n case \"ObjectMethod\":\n case \"ObjectProperty\":\n case \"RestElement\":\n case \"ReturnStatement\":\n case \"SequenceExpression\":\n case \"ParenthesizedExpression\":\n case \"SwitchCase\":\n case \"SwitchStatement\":\n case \"ThisExpression\":\n case \"ThrowStatement\":\n case \"TryStatement\":\n case \"UnaryExpression\":\n case \"UpdateExpression\":\n case \"VariableDeclaration\":\n case \"VariableDeclarator\":\n case \"WhileStatement\":\n case \"WithStatement\":\n case \"AssignmentPattern\":\n case \"ArrayPattern\":\n case \"ArrowFunctionExpression\":\n case \"ClassBody\":\n case \"ClassExpression\":\n case \"ClassDeclaration\":\n case \"ExportAllDeclaration\":\n case \"ExportDefaultDeclaration\":\n case \"ExportNamedDeclaration\":\n case \"ExportSpecifier\":\n case \"ForOfStatement\":\n case \"ImportDeclaration\":\n case \"ImportDefaultSpecifier\":\n case \"ImportNamespaceSpecifier\":\n case \"ImportSpecifier\":\n case \"ImportExpression\":\n case \"MetaProperty\":\n case \"ClassMethod\":\n case \"ObjectPattern\":\n case \"SpreadElement\":\n case \"Super\":\n case \"TaggedTemplateExpression\":\n case \"TemplateElement\":\n case \"TemplateLiteral\":\n case \"YieldExpression\":\n case \"AwaitExpression\":\n case \"Import\":\n case \"BigIntLiteral\":\n case \"ExportNamespaceSpecifier\":\n case \"OptionalMemberExpression\":\n case \"OptionalCallExpression\":\n case \"ClassProperty\":\n case \"ClassAccessorProperty\":\n case \"ClassPrivateProperty\":\n case \"ClassPrivateMethod\":\n case \"PrivateName\":\n case \"StaticBlock\":\n case \"ImportAttribute\":\n break;\n case \"Placeholder\":\n switch (node.expectedNode) {\n case \"Identifier\":\n case \"StringLiteral\":\n case \"BlockStatement\":\n case \"ClassBody\":\n break;\n default:\n return false;\n }\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExpression(\n node: t.Node | null | undefined,\n opts?: Opts<t.Expression> | null,\n): node is t.Expression {\n if (!node) return false;\n\n switch (node.type) {\n case \"ArrayExpression\":\n case \"AssignmentExpression\":\n case \"BinaryExpression\":\n case \"CallExpression\":\n case \"ConditionalExpression\":\n case \"FunctionExpression\":\n case \"Identifier\":\n case \"StringLiteral\":\n case \"NumericLiteral\":\n case \"NullLiteral\":\n case \"BooleanLiteral\":\n case \"RegExpLiteral\":\n case \"LogicalExpression\":\n case \"MemberExpression\":\n case \"NewExpression\":\n case \"ObjectExpression\":\n case \"SequenceExpression\":\n case \"ParenthesizedExpression\":\n case \"ThisExpression\":\n case \"UnaryExpression\":\n case \"UpdateExpression\":\n case \"ArrowFunctionExpression\":\n case \"ClassExpression\":\n case \"ImportExpression\":\n case \"MetaProperty\":\n case \"Super\":\n case \"TaggedTemplateExpression\":\n case \"TemplateLiteral\":\n case \"YieldExpression\":\n case \"AwaitExpression\":\n case \"Import\":\n case \"BigIntLiteral\":\n case \"OptionalMemberExpression\":\n case \"OptionalCallExpression\":\n case \"TypeCastExpression\":\n case \"JSXElement\":\n case \"JSXFragment\":\n case \"BindExpression\":\n case \"DoExpression\":\n case \"RecordExpression\":\n case \"TupleExpression\":\n case \"DecimalLiteral\":\n case \"ModuleExpression\":\n case \"TopicReference\":\n case \"PipelineTopicExpression\":\n case \"PipelineBareFunction\":\n case \"PipelinePrimaryTopicReference\":\n case \"TSInstantiationExpression\":\n case \"TSAsExpression\":\n case \"TSSatisfiesExpression\":\n case \"TSTypeAssertion\":\n case \"TSNonNullExpression\":\n break;\n case \"Placeholder\":\n switch (node.expectedNode) {\n case \"Expression\":\n case \"Identifier\":\n case \"StringLiteral\":\n break;\n default:\n return false;\n }\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBinary(\n node: t.Node | null | undefined,\n opts?: Opts<t.Binary> | null,\n): node is t.Binary {\n if (!node) return false;\n\n switch (node.type) {\n case \"BinaryExpression\":\n case \"LogicalExpression\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isScopable(\n node: t.Node | null | undefined,\n opts?: Opts<t.Scopable> | null,\n): node is t.Scopable {\n if (!node) return false;\n\n switch (node.type) {\n case \"BlockStatement\":\n case \"CatchClause\":\n case \"DoWhileStatement\":\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"Program\":\n case \"ObjectMethod\":\n case \"SwitchStatement\":\n case \"WhileStatement\":\n case \"ArrowFunctionExpression\":\n case \"ClassExpression\":\n case \"ClassDeclaration\":\n case \"ForOfStatement\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n case \"StaticBlock\":\n case \"TSModuleBlock\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"BlockStatement\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBlockParent(\n node: t.Node | null | undefined,\n opts?: Opts<t.BlockParent> | null,\n): node is t.BlockParent {\n if (!node) return false;\n\n switch (node.type) {\n case \"BlockStatement\":\n case \"CatchClause\":\n case \"DoWhileStatement\":\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"Program\":\n case \"ObjectMethod\":\n case \"SwitchStatement\":\n case \"WhileStatement\":\n case \"ArrowFunctionExpression\":\n case \"ForOfStatement\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n case \"StaticBlock\":\n case \"TSModuleBlock\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"BlockStatement\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isBlock(\n node: t.Node | null | undefined,\n opts?: Opts<t.Block> | null,\n): node is t.Block {\n if (!node) return false;\n\n switch (node.type) {\n case \"BlockStatement\":\n case \"Program\":\n case \"TSModuleBlock\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"BlockStatement\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.Statement> | null,\n): node is t.Statement {\n if (!node) return false;\n\n switch (node.type) {\n case \"BlockStatement\":\n case \"BreakStatement\":\n case \"ContinueStatement\":\n case \"DebuggerStatement\":\n case \"DoWhileStatement\":\n case \"EmptyStatement\":\n case \"ExpressionStatement\":\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"FunctionDeclaration\":\n case \"IfStatement\":\n case \"LabeledStatement\":\n case \"ReturnStatement\":\n case \"SwitchStatement\":\n case \"ThrowStatement\":\n case \"TryStatement\":\n case \"VariableDeclaration\":\n case \"WhileStatement\":\n case \"WithStatement\":\n case \"ClassDeclaration\":\n case \"ExportAllDeclaration\":\n case \"ExportDefaultDeclaration\":\n case \"ExportNamedDeclaration\":\n case \"ForOfStatement\":\n case \"ImportDeclaration\":\n case \"DeclareClass\":\n case \"DeclareFunction\":\n case \"DeclareInterface\":\n case \"DeclareModule\":\n case \"DeclareModuleExports\":\n case \"DeclareTypeAlias\":\n case \"DeclareOpaqueType\":\n case \"DeclareVariable\":\n case \"DeclareExportDeclaration\":\n case \"DeclareExportAllDeclaration\":\n case \"InterfaceDeclaration\":\n case \"OpaqueType\":\n case \"TypeAlias\":\n case \"EnumDeclaration\":\n case \"TSDeclareFunction\":\n case \"TSInterfaceDeclaration\":\n case \"TSTypeAliasDeclaration\":\n case \"TSEnumDeclaration\":\n case \"TSModuleDeclaration\":\n case \"TSImportEqualsDeclaration\":\n case \"TSExportAssignment\":\n case \"TSNamespaceExportDeclaration\":\n break;\n case \"Placeholder\":\n switch (node.expectedNode) {\n case \"Statement\":\n case \"Declaration\":\n case \"BlockStatement\":\n break;\n default:\n return false;\n }\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTerminatorless(\n node: t.Node | null | undefined,\n opts?: Opts<t.Terminatorless> | null,\n): node is t.Terminatorless {\n if (!node) return false;\n\n switch (node.type) {\n case \"BreakStatement\":\n case \"ContinueStatement\":\n case \"ReturnStatement\":\n case \"ThrowStatement\":\n case \"YieldExpression\":\n case \"AwaitExpression\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isCompletionStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.CompletionStatement> | null,\n): node is t.CompletionStatement {\n if (!node) return false;\n\n switch (node.type) {\n case \"BreakStatement\":\n case \"ContinueStatement\":\n case \"ReturnStatement\":\n case \"ThrowStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isConditional(\n node: t.Node | null | undefined,\n opts?: Opts<t.Conditional> | null,\n): node is t.Conditional {\n if (!node) return false;\n\n switch (node.type) {\n case \"ConditionalExpression\":\n case \"IfStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isLoop(\n node: t.Node | null | undefined,\n opts?: Opts<t.Loop> | null,\n): node is t.Loop {\n if (!node) return false;\n\n switch (node.type) {\n case \"DoWhileStatement\":\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"WhileStatement\":\n case \"ForOfStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isWhile(\n node: t.Node | null | undefined,\n opts?: Opts<t.While> | null,\n): node is t.While {\n if (!node) return false;\n\n switch (node.type) {\n case \"DoWhileStatement\":\n case \"WhileStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExpressionWrapper(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExpressionWrapper> | null,\n): node is t.ExpressionWrapper {\n if (!node) return false;\n\n switch (node.type) {\n case \"ExpressionStatement\":\n case \"ParenthesizedExpression\":\n case \"TypeCastExpression\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFor(\n node: t.Node | null | undefined,\n opts?: Opts<t.For> | null,\n): node is t.For {\n if (!node) return false;\n\n switch (node.type) {\n case \"ForInStatement\":\n case \"ForStatement\":\n case \"ForOfStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isForXStatement(\n node: t.Node | null | undefined,\n opts?: Opts<t.ForXStatement> | null,\n): node is t.ForXStatement {\n if (!node) return false;\n\n switch (node.type) {\n case \"ForInStatement\":\n case \"ForOfStatement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunction(\n node: t.Node | null | undefined,\n opts?: Opts<t.Function> | null,\n): node is t.Function {\n if (!node) return false;\n\n switch (node.type) {\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"ObjectMethod\":\n case \"ArrowFunctionExpression\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionParent(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionParent> | null,\n): node is t.FunctionParent {\n if (!node) return false;\n\n switch (node.type) {\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"ObjectMethod\":\n case \"ArrowFunctionExpression\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n case \"StaticBlock\":\n case \"TSModuleBlock\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPureish(\n node: t.Node | null | undefined,\n opts?: Opts<t.Pureish> | null,\n): node is t.Pureish {\n if (!node) return false;\n\n switch (node.type) {\n case \"FunctionDeclaration\":\n case \"FunctionExpression\":\n case \"StringLiteral\":\n case \"NumericLiteral\":\n case \"NullLiteral\":\n case \"BooleanLiteral\":\n case \"RegExpLiteral\":\n case \"ArrowFunctionExpression\":\n case \"BigIntLiteral\":\n case \"DecimalLiteral\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"StringLiteral\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.Declaration> | null,\n): node is t.Declaration {\n if (!node) return false;\n\n switch (node.type) {\n case \"FunctionDeclaration\":\n case \"VariableDeclaration\":\n case \"ClassDeclaration\":\n case \"ExportAllDeclaration\":\n case \"ExportDefaultDeclaration\":\n case \"ExportNamedDeclaration\":\n case \"ImportDeclaration\":\n case \"DeclareClass\":\n case \"DeclareFunction\":\n case \"DeclareInterface\":\n case \"DeclareModule\":\n case \"DeclareModuleExports\":\n case \"DeclareTypeAlias\":\n case \"DeclareOpaqueType\":\n case \"DeclareVariable\":\n case \"DeclareExportDeclaration\":\n case \"DeclareExportAllDeclaration\":\n case \"InterfaceDeclaration\":\n case \"OpaqueType\":\n case \"TypeAlias\":\n case \"EnumDeclaration\":\n case \"TSDeclareFunction\":\n case \"TSInterfaceDeclaration\":\n case \"TSTypeAliasDeclaration\":\n case \"TSEnumDeclaration\":\n case \"TSModuleDeclaration\":\n case \"TSImportEqualsDeclaration\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"Declaration\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFunctionParameter(\n node: t.Node | null | undefined,\n opts?: Opts<t.FunctionParameter> | null,\n): node is t.FunctionParameter {\n if (!node) return false;\n\n switch (node.type) {\n case \"Identifier\":\n case \"RestElement\":\n case \"AssignmentPattern\":\n case \"ArrayPattern\":\n case \"ObjectPattern\":\n case \"VoidPattern\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"Identifier\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPatternLike(\n node: t.Node | null | undefined,\n opts?: Opts<t.PatternLike> | null,\n): node is t.PatternLike {\n if (!node) return false;\n\n switch (node.type) {\n case \"Identifier\":\n case \"MemberExpression\":\n case \"RestElement\":\n case \"AssignmentPattern\":\n case \"ArrayPattern\":\n case \"ObjectPattern\":\n case \"VoidPattern\":\n case \"TSAsExpression\":\n case \"TSSatisfiesExpression\":\n case \"TSTypeAssertion\":\n case \"TSNonNullExpression\":\n break;\n case \"Placeholder\":\n switch (node.expectedNode) {\n case \"Pattern\":\n case \"Identifier\":\n break;\n default:\n return false;\n }\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isLVal(\n node: t.Node | null | undefined,\n opts?: Opts<t.LVal> | null,\n): node is t.LVal {\n if (!node) return false;\n\n switch (node.type) {\n case \"Identifier\":\n case \"MemberExpression\":\n case \"RestElement\":\n case \"AssignmentPattern\":\n case \"ArrayPattern\":\n case \"ObjectPattern\":\n case \"TSParameterProperty\":\n case \"TSAsExpression\":\n case \"TSSatisfiesExpression\":\n case \"TSTypeAssertion\":\n case \"TSNonNullExpression\":\n break;\n case \"Placeholder\":\n switch (node.expectedNode) {\n case \"Pattern\":\n case \"Identifier\":\n break;\n default:\n return false;\n }\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSEntityName(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSEntityName> | null,\n): node is t.TSEntityName {\n if (!node) return false;\n\n switch (node.type) {\n case \"Identifier\":\n case \"TSQualifiedName\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"Identifier\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.Literal> | null,\n): node is t.Literal {\n if (!node) return false;\n\n switch (node.type) {\n case \"StringLiteral\":\n case \"NumericLiteral\":\n case \"NullLiteral\":\n case \"BooleanLiteral\":\n case \"RegExpLiteral\":\n case \"TemplateLiteral\":\n case \"BigIntLiteral\":\n case \"DecimalLiteral\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"StringLiteral\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImmutable(\n node: t.Node | null | undefined,\n opts?: Opts<t.Immutable> | null,\n): node is t.Immutable {\n if (!node) return false;\n\n switch (node.type) {\n case \"StringLiteral\":\n case \"NumericLiteral\":\n case \"NullLiteral\":\n case \"BooleanLiteral\":\n case \"BigIntLiteral\":\n case \"JSXAttribute\":\n case \"JSXClosingElement\":\n case \"JSXElement\":\n case \"JSXExpressionContainer\":\n case \"JSXSpreadChild\":\n case \"JSXOpeningElement\":\n case \"JSXText\":\n case \"JSXFragment\":\n case \"JSXOpeningFragment\":\n case \"JSXClosingFragment\":\n case \"DecimalLiteral\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"StringLiteral\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isUserWhitespacable(\n node: t.Node | null | undefined,\n opts?: Opts<t.UserWhitespacable> | null,\n): node is t.UserWhitespacable {\n if (!node) return false;\n\n switch (node.type) {\n case \"ObjectMethod\":\n case \"ObjectProperty\":\n case \"ObjectTypeInternalSlot\":\n case \"ObjectTypeCallProperty\":\n case \"ObjectTypeIndexer\":\n case \"ObjectTypeProperty\":\n case \"ObjectTypeSpreadProperty\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isMethod(\n node: t.Node | null | undefined,\n opts?: Opts<t.Method> | null,\n): node is t.Method {\n if (!node) return false;\n\n switch (node.type) {\n case \"ObjectMethod\":\n case \"ClassMethod\":\n case \"ClassPrivateMethod\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isObjectMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.ObjectMember> | null,\n): node is t.ObjectMember {\n if (!node) return false;\n\n switch (node.type) {\n case \"ObjectMethod\":\n case \"ObjectProperty\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.Property> | null,\n): node is t.Property {\n if (!node) return false;\n\n switch (node.type) {\n case \"ObjectProperty\":\n case \"ClassProperty\":\n case \"ClassAccessorProperty\":\n case \"ClassPrivateProperty\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isUnaryLike(\n node: t.Node | null | undefined,\n opts?: Opts<t.UnaryLike> | null,\n): node is t.UnaryLike {\n if (!node) return false;\n\n switch (node.type) {\n case \"UnaryExpression\":\n case \"SpreadElement\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPattern(\n node: t.Node | null | undefined,\n opts?: Opts<t.Pattern> | null,\n): node is t.Pattern {\n if (!node) return false;\n\n switch (node.type) {\n case \"AssignmentPattern\":\n case \"ArrayPattern\":\n case \"ObjectPattern\":\n case \"VoidPattern\":\n break;\n case \"Placeholder\":\n if (node.expectedNode === \"Pattern\") break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isClass(\n node: t.Node | null | undefined,\n opts?: Opts<t.Class> | null,\n): node is t.Class {\n if (!node) return false;\n\n switch (node.type) {\n case \"ClassExpression\":\n case \"ClassDeclaration\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isImportOrExportDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ImportOrExportDeclaration> | null,\n): node is t.ImportOrExportDeclaration {\n if (!node) return false;\n\n switch (node.type) {\n case \"ExportAllDeclaration\":\n case \"ExportDefaultDeclaration\":\n case \"ExportNamedDeclaration\":\n case \"ImportDeclaration\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isExportDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ExportDeclaration> | null,\n): node is t.ExportDeclaration {\n if (!node) return false;\n\n switch (node.type) {\n case \"ExportAllDeclaration\":\n case \"ExportDefaultDeclaration\":\n case \"ExportNamedDeclaration\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isModuleSpecifier(\n node: t.Node | null | undefined,\n opts?: Opts<t.ModuleSpecifier> | null,\n): node is t.ModuleSpecifier {\n if (!node) return false;\n\n switch (node.type) {\n case \"ExportSpecifier\":\n case \"ImportDefaultSpecifier\":\n case \"ImportNamespaceSpecifier\":\n case \"ImportSpecifier\":\n case \"ExportNamespaceSpecifier\":\n case \"ExportDefaultSpecifier\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isAccessor(\n node: t.Node | null | undefined,\n opts?: Opts<t.Accessor> | null,\n): node is t.Accessor {\n if (!node) return false;\n\n switch (node.type) {\n case \"ClassAccessorProperty\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isPrivate(\n node: t.Node | null | undefined,\n opts?: Opts<t.Private> | null,\n): node is t.Private {\n if (!node) return false;\n\n switch (node.type) {\n case \"ClassPrivateProperty\":\n case \"ClassPrivateMethod\":\n case \"PrivateName\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFlow(\n node: t.Node | null | undefined,\n opts?: Opts<t.Flow> | null,\n): node is t.Flow {\n if (!node) return false;\n\n switch (node.type) {\n case \"AnyTypeAnnotation\":\n case \"ArrayTypeAnnotation\":\n case \"BooleanTypeAnnotation\":\n case \"BooleanLiteralTypeAnnotation\":\n case \"NullLiteralTypeAnnotation\":\n case \"ClassImplements\":\n case \"DeclareClass\":\n case \"DeclareFunction\":\n case \"DeclareInterface\":\n case \"DeclareModule\":\n case \"DeclareModuleExports\":\n case \"DeclareTypeAlias\":\n case \"DeclareOpaqueType\":\n case \"DeclareVariable\":\n case \"DeclareExportDeclaration\":\n case \"DeclareExportAllDeclaration\":\n case \"DeclaredPredicate\":\n case \"ExistsTypeAnnotation\":\n case \"FunctionTypeAnnotation\":\n case \"FunctionTypeParam\":\n case \"GenericTypeAnnotation\":\n case \"InferredPredicate\":\n case \"InterfaceExtends\":\n case \"InterfaceDeclaration\":\n case \"InterfaceTypeAnnotation\":\n case \"IntersectionTypeAnnotation\":\n case \"MixedTypeAnnotation\":\n case \"EmptyTypeAnnotation\":\n case \"NullableTypeAnnotation\":\n case \"NumberLiteralTypeAnnotation\":\n case \"NumberTypeAnnotation\":\n case \"ObjectTypeAnnotation\":\n case \"ObjectTypeInternalSlot\":\n case \"ObjectTypeCallProperty\":\n case \"ObjectTypeIndexer\":\n case \"ObjectTypeProperty\":\n case \"ObjectTypeSpreadProperty\":\n case \"OpaqueType\":\n case \"QualifiedTypeIdentifier\":\n case \"StringLiteralTypeAnnotation\":\n case \"StringTypeAnnotation\":\n case \"SymbolTypeAnnotation\":\n case \"ThisTypeAnnotation\":\n case \"TupleTypeAnnotation\":\n case \"TypeofTypeAnnotation\":\n case \"TypeAlias\":\n case \"TypeAnnotation\":\n case \"TypeCastExpression\":\n case \"TypeParameter\":\n case \"TypeParameterDeclaration\":\n case \"TypeParameterInstantiation\":\n case \"UnionTypeAnnotation\":\n case \"Variance\":\n case \"VoidTypeAnnotation\":\n case \"EnumDeclaration\":\n case \"EnumBooleanBody\":\n case \"EnumNumberBody\":\n case \"EnumStringBody\":\n case \"EnumSymbolBody\":\n case \"EnumBooleanMember\":\n case \"EnumNumberMember\":\n case \"EnumStringMember\":\n case \"EnumDefaultedMember\":\n case \"IndexedAccessType\":\n case \"OptionalIndexedAccessType\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFlowType(\n node: t.Node | null | undefined,\n opts?: Opts<t.FlowType> | null,\n): node is t.FlowType {\n if (!node) return false;\n\n switch (node.type) {\n case \"AnyTypeAnnotation\":\n case \"ArrayTypeAnnotation\":\n case \"BooleanTypeAnnotation\":\n case \"BooleanLiteralTypeAnnotation\":\n case \"NullLiteralTypeAnnotation\":\n case \"ExistsTypeAnnotation\":\n case \"FunctionTypeAnnotation\":\n case \"GenericTypeAnnotation\":\n case \"InterfaceTypeAnnotation\":\n case \"IntersectionTypeAnnotation\":\n case \"MixedTypeAnnotation\":\n case \"EmptyTypeAnnotation\":\n case \"NullableTypeAnnotation\":\n case \"NumberLiteralTypeAnnotation\":\n case \"NumberTypeAnnotation\":\n case \"ObjectTypeAnnotation\":\n case \"StringLiteralTypeAnnotation\":\n case \"StringTypeAnnotation\":\n case \"SymbolTypeAnnotation\":\n case \"ThisTypeAnnotation\":\n case \"TupleTypeAnnotation\":\n case \"TypeofTypeAnnotation\":\n case \"UnionTypeAnnotation\":\n case \"VoidTypeAnnotation\":\n case \"IndexedAccessType\":\n case \"OptionalIndexedAccessType\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFlowBaseAnnotation(\n node: t.Node | null | undefined,\n opts?: Opts<t.FlowBaseAnnotation> | null,\n): node is t.FlowBaseAnnotation {\n if (!node) return false;\n\n switch (node.type) {\n case \"AnyTypeAnnotation\":\n case \"BooleanTypeAnnotation\":\n case \"NullLiteralTypeAnnotation\":\n case \"MixedTypeAnnotation\":\n case \"EmptyTypeAnnotation\":\n case \"NumberTypeAnnotation\":\n case \"StringTypeAnnotation\":\n case \"SymbolTypeAnnotation\":\n case \"ThisTypeAnnotation\":\n case \"VoidTypeAnnotation\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFlowDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.FlowDeclaration> | null,\n): node is t.FlowDeclaration {\n if (!node) return false;\n\n switch (node.type) {\n case \"DeclareClass\":\n case \"DeclareFunction\":\n case \"DeclareInterface\":\n case \"DeclareModule\":\n case \"DeclareModuleExports\":\n case \"DeclareTypeAlias\":\n case \"DeclareOpaqueType\":\n case \"DeclareVariable\":\n case \"DeclareExportDeclaration\":\n case \"DeclareExportAllDeclaration\":\n case \"InterfaceDeclaration\":\n case \"OpaqueType\":\n case \"TypeAlias\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isFlowPredicate(\n node: t.Node | null | undefined,\n opts?: Opts<t.FlowPredicate> | null,\n): node is t.FlowPredicate {\n if (!node) return false;\n\n switch (node.type) {\n case \"DeclaredPredicate\":\n case \"InferredPredicate\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumBody(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumBody> | null,\n): node is t.EnumBody {\n if (!node) return false;\n\n switch (node.type) {\n case \"EnumBooleanBody\":\n case \"EnumNumberBody\":\n case \"EnumStringBody\":\n case \"EnumSymbolBody\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isEnumMember(\n node: t.Node | null | undefined,\n opts?: Opts<t.EnumMember> | null,\n): node is t.EnumMember {\n if (!node) return false;\n\n switch (node.type) {\n case \"EnumBooleanMember\":\n case \"EnumNumberMember\":\n case \"EnumStringMember\":\n case \"EnumDefaultedMember\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isJSX(\n node: t.Node | null | undefined,\n opts?: Opts<t.JSX> | null,\n): node is t.JSX {\n if (!node) return false;\n\n switch (node.type) {\n case \"JSXAttribute\":\n case \"JSXClosingElement\":\n case \"JSXElement\":\n case \"JSXEmptyExpression\":\n case \"JSXExpressionContainer\":\n case \"JSXSpreadChild\":\n case \"JSXIdentifier\":\n case \"JSXMemberExpression\":\n case \"JSXNamespacedName\":\n case \"JSXOpeningElement\":\n case \"JSXSpreadAttribute\":\n case \"JSXText\":\n case \"JSXFragment\":\n case \"JSXOpeningFragment\":\n case \"JSXClosingFragment\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isMiscellaneous(\n node: t.Node | null | undefined,\n opts?: Opts<t.Miscellaneous> | null,\n): node is t.Miscellaneous {\n if (!node) return false;\n\n switch (node.type) {\n case \"Noop\":\n case \"Placeholder\":\n case \"V8IntrinsicIdentifier\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTypeScript(\n node: t.Node | null | undefined,\n opts?: Opts<t.TypeScript> | null,\n): node is t.TypeScript {\n if (!node) return false;\n\n switch (node.type) {\n case \"TSParameterProperty\":\n case \"TSDeclareFunction\":\n case \"TSDeclareMethod\":\n case \"TSQualifiedName\":\n case \"TSCallSignatureDeclaration\":\n case \"TSConstructSignatureDeclaration\":\n case \"TSPropertySignature\":\n case \"TSMethodSignature\":\n case \"TSIndexSignature\":\n case \"TSAnyKeyword\":\n case \"TSBooleanKeyword\":\n case \"TSBigIntKeyword\":\n case \"TSIntrinsicKeyword\":\n case \"TSNeverKeyword\":\n case \"TSNullKeyword\":\n case \"TSNumberKeyword\":\n case \"TSObjectKeyword\":\n case \"TSStringKeyword\":\n case \"TSSymbolKeyword\":\n case \"TSUndefinedKeyword\":\n case \"TSUnknownKeyword\":\n case \"TSVoidKeyword\":\n case \"TSThisType\":\n case \"TSFunctionType\":\n case \"TSConstructorType\":\n case \"TSTypeReference\":\n case \"TSTypePredicate\":\n case \"TSTypeQuery\":\n case \"TSTypeLiteral\":\n case \"TSArrayType\":\n case \"TSTupleType\":\n case \"TSOptionalType\":\n case \"TSRestType\":\n case \"TSNamedTupleMember\":\n case \"TSUnionType\":\n case \"TSIntersectionType\":\n case \"TSConditionalType\":\n case \"TSInferType\":\n case \"TSParenthesizedType\":\n case \"TSTypeOperator\":\n case \"TSIndexedAccessType\":\n case \"TSMappedType\":\n case \"TSTemplateLiteralType\":\n case \"TSLiteralType\":\n case \"TSExpressionWithTypeArguments\":\n case \"TSInterfaceDeclaration\":\n case \"TSInterfaceBody\":\n case \"TSTypeAliasDeclaration\":\n case \"TSInstantiationExpression\":\n case \"TSAsExpression\":\n case \"TSSatisfiesExpression\":\n case \"TSTypeAssertion\":\n case \"TSEnumBody\":\n case \"TSEnumDeclaration\":\n case \"TSEnumMember\":\n case \"TSModuleDeclaration\":\n case \"TSModuleBlock\":\n case \"TSImportType\":\n case \"TSImportEqualsDeclaration\":\n case \"TSExternalModuleReference\":\n case \"TSNonNullExpression\":\n case \"TSExportAssignment\":\n case \"TSNamespaceExportDeclaration\":\n case \"TSTypeAnnotation\":\n case \"TSTypeParameterInstantiation\":\n case \"TSTypeParameterDeclaration\":\n case \"TSTypeParameter\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSTypeElement(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSTypeElement> | null,\n): node is t.TSTypeElement {\n if (!node) return false;\n\n switch (node.type) {\n case \"TSCallSignatureDeclaration\":\n case \"TSConstructSignatureDeclaration\":\n case \"TSPropertySignature\":\n case \"TSMethodSignature\":\n case \"TSIndexSignature\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSType> | null,\n): node is t.TSType {\n if (!node) return false;\n\n switch (node.type) {\n case \"TSAnyKeyword\":\n case \"TSBooleanKeyword\":\n case \"TSBigIntKeyword\":\n case \"TSIntrinsicKeyword\":\n case \"TSNeverKeyword\":\n case \"TSNullKeyword\":\n case \"TSNumberKeyword\":\n case \"TSObjectKeyword\":\n case \"TSStringKeyword\":\n case \"TSSymbolKeyword\":\n case \"TSUndefinedKeyword\":\n case \"TSUnknownKeyword\":\n case \"TSVoidKeyword\":\n case \"TSThisType\":\n case \"TSFunctionType\":\n case \"TSConstructorType\":\n case \"TSTypeReference\":\n case \"TSTypePredicate\":\n case \"TSTypeQuery\":\n case \"TSTypeLiteral\":\n case \"TSArrayType\":\n case \"TSTupleType\":\n case \"TSOptionalType\":\n case \"TSRestType\":\n case \"TSUnionType\":\n case \"TSIntersectionType\":\n case \"TSConditionalType\":\n case \"TSInferType\":\n case \"TSParenthesizedType\":\n case \"TSTypeOperator\":\n case \"TSIndexedAccessType\":\n case \"TSMappedType\":\n case \"TSTemplateLiteralType\":\n case \"TSLiteralType\":\n case \"TSExpressionWithTypeArguments\":\n case \"TSImportType\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\nexport function isTSBaseType(\n node: t.Node | null | undefined,\n opts?: Opts<t.TSBaseType> | null,\n): node is t.TSBaseType {\n if (!node) return false;\n\n switch (node.type) {\n case \"TSAnyKeyword\":\n case \"TSBooleanKeyword\":\n case \"TSBigIntKeyword\":\n case \"TSIntrinsicKeyword\":\n case \"TSNeverKeyword\":\n case \"TSNullKeyword\":\n case \"TSNumberKeyword\":\n case \"TSObjectKeyword\":\n case \"TSStringKeyword\":\n case \"TSSymbolKeyword\":\n case \"TSUndefinedKeyword\":\n case \"TSUnknownKeyword\":\n case \"TSVoidKeyword\":\n case \"TSThisType\":\n case \"TSTemplateLiteralType\":\n case \"TSLiteralType\":\n break;\n default:\n return false;\n }\n\n return opts == null || shallowEqual(node, opts);\n}\n/**\n * @deprecated Use `isNumericLiteral`\n */\nexport function isNumberLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.NumberLiteral> | null,\n): boolean {\n deprecationWarning(\"isNumberLiteral\", \"isNumericLiteral\");\n if (!node) return false;\n\n if (node.type !== \"NumberLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\n/**\n * @deprecated Use `isRegExpLiteral`\n */\nexport function isRegexLiteral(\n node: t.Node | null | undefined,\n opts?: Opts<t.RegexLiteral> | null,\n): boolean {\n deprecationWarning(\"isRegexLiteral\", \"isRegExpLiteral\");\n if (!node) return false;\n\n if (node.type !== \"RegexLiteral\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\n/**\n * @deprecated Use `isRestElement`\n */\nexport function isRestProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.RestProperty> | null,\n): boolean {\n deprecationWarning(\"isRestProperty\", \"isRestElement\");\n if (!node) return false;\n\n if (node.type !== \"RestProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\n/**\n * @deprecated Use `isSpreadElement`\n */\nexport function isSpreadProperty(\n node: t.Node | null | undefined,\n opts?: Opts<t.SpreadProperty> | null,\n): boolean {\n deprecationWarning(\"isSpreadProperty\", \"isSpreadElement\");\n if (!node) return false;\n\n if (node.type !== \"SpreadProperty\") return false;\n\n return opts == null || shallowEqual(node, opts);\n}\n/**\n * @deprecated Use `isImportOrExportDeclaration`\n */\nexport function isModuleDeclaration(\n node: t.Node | null | undefined,\n opts?: Opts<t.ModuleDeclaration> | null,\n): node is t.ImportOrExportDeclaration {\n deprecationWarning(\"isModuleDeclaration\", \"isImportOrExportDeclaration\");\n return isImportOrExportDeclaration(node, opts);\n}\n"],"mappings":"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","ignoreList":[]}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment