import type { BigIntLiteral, BooleanLiteral, ComputedMemberExpression, Directive, Identifier, Node, NodeOfType, NodeType, NullLiteral, NumericLiteral, PrivateFieldExpression, RegExpLiteral, StaticMemberExpression, StringLiteral } from "@yuku-toolchain/types"; import { type AliasMap } from "./aliases.js"; type MaybeNode = Node | null | undefined; /** * Type guards, one per concrete node `type` plus alias and shape * guards. Every guard accepts `null` and `undefined` and narrows. * * @example * is.CallExpression(node) * is.Identifier(node, "require") * is.Expression(node) * is.StringLiteral(node) */ export declare const is: { /** True when `node.type` is one of `types`, narrowing to that union. */ oneOf: (node: MaybeNode, types: readonly K[]) => node is NodeOfType; /** An `Identifier`, optionally with the exact `name`. */ Identifier: (node: MaybeNode, name?: string) => node is Identifier; Expression: (node: MaybeNode) => node is AliasMap["Expression"]; Statement: (node: MaybeNode) => node is AliasMap["Statement"]; Declaration: (node: MaybeNode) => node is AliasMap["Declaration"]; ModuleDeclaration: (node: MaybeNode) => node is AliasMap["ModuleDeclaration"]; Function: (node: MaybeNode) => node is AliasMap["Function"]; Class: (node: MaybeNode) => node is AliasMap["Class"]; Method: (node: MaybeNode) => node is AliasMap["Method"]; Loop: (node: MaybeNode) => node is AliasMap["Loop"]; Pattern: (node: MaybeNode) => node is AliasMap["Pattern"]; JSX: (node: MaybeNode) => node is AliasMap["JSX"]; TSType: (node: MaybeNode) => node is AliasMap["TSType"]; StringLiteral: (node: MaybeNode) => node is StringLiteral; NumericLiteral: (node: MaybeNode) => node is NumericLiteral; BooleanLiteral: (node: MaybeNode) => node is BooleanLiteral; NullLiteral: (node: MaybeNode) => node is NullLiteral; BigIntLiteral: (node: MaybeNode) => node is BigIntLiteral; RegExpLiteral: (node: MaybeNode) => node is RegExpLiteral; ComputedMemberExpression: (node: MaybeNode) => node is ComputedMemberExpression; StaticMemberExpression: (node: MaybeNode) => node is StaticMemberExpression; PrivateFieldExpression: (node: MaybeNode) => node is PrivateFieldExpression; Directive: (node: MaybeNode) => node is Directive; Program: (node: MaybeNode) => node is import("@yuku-toolchain/types").Program; Hashbang: (node: MaybeNode) => node is import("@yuku-toolchain/types").Hashbang; ExpressionStatement: (node: MaybeNode) => node is NodeOfType<"ExpressionStatement">; BlockStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").BlockStatement; EmptyStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").EmptyStatement; DebuggerStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").DebuggerStatement; ReturnStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ReturnStatement; LabeledStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").LabeledStatement; BreakStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").BreakStatement; ContinueStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ContinueStatement; IfStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").IfStatement; SwitchStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").SwitchStatement; ThrowStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ThrowStatement; TryStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").TryStatement; WhileStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").WhileStatement; DoWhileStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").DoWhileStatement; ForStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ForStatement; ForInStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ForInStatement; ForOfStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").ForOfStatement; WithStatement: (node: MaybeNode) => node is import("@yuku-toolchain/types").WithStatement; FunctionDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").FunctionDeclaration; ClassDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").ClassDeclaration; VariableDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").VariableDeclaration; TSDeclareFunction: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSDeclareFunction; TSTypeAliasDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeAliasDeclaration; TSInterfaceDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSInterfaceDeclaration; TSEnumDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSEnumDeclaration; TSModuleDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSModuleDeclaration; TSImportEqualsDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSImportEqualsDeclaration; Literal: (node: MaybeNode) => node is NodeOfType<"Literal">; ThisExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ThisExpression; Super: (node: MaybeNode) => node is import("@yuku-toolchain/types").Super; ArrayExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ArrayExpression; ObjectExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ObjectExpression; FunctionExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").FunctionExpression; ArrowFunctionExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ArrowFunctionExpression; ClassExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ClassExpression; TaggedTemplateExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TaggedTemplateExpression; TemplateLiteral: (node: MaybeNode) => node is import("@yuku-toolchain/types").TemplateLiteral; MemberExpression: (node: MaybeNode) => node is NodeOfType<"MemberExpression">; CallExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").CallExpression; NewExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").NewExpression; ChainExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ChainExpression; SequenceExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").SequenceExpression; ParenthesizedExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ParenthesizedExpression; BinaryExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").BinaryExpression; LogicalExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").LogicalExpression; ConditionalExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ConditionalExpression; UnaryExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").UnaryExpression; UpdateExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").UpdateExpression; AssignmentExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").AssignmentExpression; YieldExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").YieldExpression; AwaitExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").AwaitExpression; ImportExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportExpression; MetaProperty: (node: MaybeNode) => node is import("@yuku-toolchain/types").MetaProperty; TSAsExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSAsExpression; TSSatisfiesExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSSatisfiesExpression; TSTypeAssertion: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeAssertion; TSNonNullExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNonNullExpression; TSInstantiationExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSInstantiationExpression; JSXElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXElement; JSXFragment: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXFragment; ImportDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportDeclaration; ExportNamedDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").ExportNamedDeclaration; ExportDefaultDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").ExportDefaultDeclaration; ExportAllDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").ExportAllDeclaration; TSExportAssignment: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSExportAssignment; TSNamespaceExportDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNamespaceExportDeclaration; Property: (node: MaybeNode) => node is NodeOfType<"Property">; SpreadElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").SpreadElement; PrivateIdentifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").PrivateIdentifier; TemplateElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").TemplateElement; VariableDeclarator: (node: MaybeNode) => node is import("@yuku-toolchain/types").VariableDeclarator; CatchClause: (node: MaybeNode) => node is import("@yuku-toolchain/types").CatchClause; SwitchCase: (node: MaybeNode) => node is import("@yuku-toolchain/types").SwitchCase; RestElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").RestElement; ArrayPattern: (node: MaybeNode) => node is import("@yuku-toolchain/types").ArrayPattern; ObjectPattern: (node: MaybeNode) => node is import("@yuku-toolchain/types").ObjectPattern; AssignmentPattern: (node: MaybeNode) => node is import("@yuku-toolchain/types").AssignmentPattern; ClassBody: (node: MaybeNode) => node is import("@yuku-toolchain/types").ClassBody; MethodDefinition: (node: MaybeNode) => node is import("@yuku-toolchain/types").MethodDefinition; TSAbstractMethodDefinition: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSAbstractMethodDefinition; PropertyDefinition: (node: MaybeNode) => node is import("@yuku-toolchain/types").PropertyDefinition; TSAbstractPropertyDefinition: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSAbstractPropertyDefinition; AccessorProperty: (node: MaybeNode) => node is import("@yuku-toolchain/types").AccessorProperty; TSAbstractAccessorProperty: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSAbstractAccessorProperty; StaticBlock: (node: MaybeNode) => node is import("@yuku-toolchain/types").StaticBlock; Decorator: (node: MaybeNode) => node is import("@yuku-toolchain/types").Decorator; TSEmptyBodyFunctionExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSEmptyBodyFunctionExpression; ImportSpecifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportSpecifier; ImportDefaultSpecifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportDefaultSpecifier; ImportNamespaceSpecifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportNamespaceSpecifier; ImportAttribute: (node: MaybeNode) => node is import("@yuku-toolchain/types").ImportAttribute; ExportSpecifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").ExportSpecifier; JSXOpeningElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXOpeningElement; JSXClosingElement: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXClosingElement; JSXOpeningFragment: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXOpeningFragment; JSXClosingFragment: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXClosingFragment; JSXIdentifier: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXIdentifier; JSXNamespacedName: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXNamespacedName; JSXMemberExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXMemberExpression; JSXAttribute: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXAttribute; JSXSpreadAttribute: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXSpreadAttribute; JSXExpressionContainer: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXExpressionContainer; JSXEmptyExpression: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXEmptyExpression; JSXText: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXText; JSXSpreadChild: (node: MaybeNode) => node is import("@yuku-toolchain/types").JSXSpreadChild; TSTypeAnnotation: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeAnnotation; TSAnyKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSAnyKeyword; TSUnknownKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSUnknownKeyword; TSNeverKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNeverKeyword; TSVoidKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSVoidKeyword; TSNullKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNullKeyword; TSUndefinedKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSUndefinedKeyword; TSStringKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSStringKeyword; TSNumberKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNumberKeyword; TSBigIntKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSBigIntKeyword; TSBooleanKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSBooleanKeyword; TSSymbolKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSSymbolKeyword; TSObjectKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSObjectKeyword; TSIntrinsicKeyword: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSIntrinsicKeyword; TSThisType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSThisType; TSTypeReference: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeReference; TSTypeQuery: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeQuery; TSImportType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSImportType; TSLiteralType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSLiteralType; TSTemplateLiteralType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTemplateLiteralType; TSArrayType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSArrayType; TSIndexedAccessType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSIndexedAccessType; TSTupleType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTupleType; TSNamedTupleMember: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSNamedTupleMember; TSJSDocNullableType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSJSDocNullableType; TSJSDocNonNullableType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSJSDocNonNullableType; TSJSDocUnknownType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSJSDocUnknownType; TSUnionType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSUnionType; TSIntersectionType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSIntersectionType; TSConditionalType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSConditionalType; TSInferType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSInferType; TSTypeOperator: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeOperator; TSParenthesizedType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSParenthesizedType; TSFunctionType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSFunctionType; TSConstructorType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSConstructorType; TSTypePredicate: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypePredicate; TSTypeLiteral: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeLiteral; TSMappedType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSMappedType; TSTypeParameter: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeParameter; TSTypeParameterDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeParameterDeclaration; TSTypeParameterInstantiation: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSTypeParameterInstantiation; TSQualifiedName: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSQualifiedName; TSPropertySignature: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSPropertySignature; TSMethodSignature: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSMethodSignature; TSCallSignatureDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSCallSignatureDeclaration; TSConstructSignatureDeclaration: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSConstructSignatureDeclaration; TSIndexSignature: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSIndexSignature; TSInterfaceBody: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSInterfaceBody; TSInterfaceHeritage: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSInterfaceHeritage; TSClassImplements: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSClassImplements; TSEnumBody: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSEnumBody; TSEnumMember: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSEnumMember; TSModuleBlock: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSModuleBlock; TSParameterProperty: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSParameterProperty; TSExternalModuleReference: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSExternalModuleReference; TSOptionalType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSOptionalType; TSRestType: (node: MaybeNode) => node is import("@yuku-toolchain/types").TSRestType; }; export {};