⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.1
Server IP:
185.238.29.86
Server:
Linux server2 6.8.12-6-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-6 (2024-12-19T19:05Z) x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.31
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
invoice
/
node_modules
/
@types
/
babel-types
/
Edit File: index.d.ts
// Type definitions for babel-types 7.0 // Project: https://github.com/babel/babel/tree/master/packages/babel-types, https://babeljs.io // Definitions by: Troy Gerwien <https://github.com/yortus> // Sam Baxter <https://github.com/baxtersa> // Marvin Hagemeister <https://github.com/marvinhagemeister> // Boris Cherny <https://github.com/bcherny> // ExE Boss <https://github.com/ExE-Boss> // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export interface Comment { value: string; start: number; end: number; loc: SourceLocation; } export interface CommentBlock extends Comment { type: "CommentBlock"; } export interface CommentLine extends Comment { type: "CommentLine"; } export interface SourceLocation { start: { line: number; column: number; }; end: { line: number; column: number; }; } export interface Node { type: string; leadingComments?: Comment[] | undefined; innerComments?: Comment[] | undefined; trailingComments?: Comment[] | undefined; start: number; end: number; loc: SourceLocation; } export interface ArrayExpression extends Node { type: "ArrayExpression"; elements: Array<null | Expression | SpreadElement>; } export interface AssignmentExpression extends Node { type: "AssignmentExpression"; operator: "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&="; left: LVal; right: Expression; } export interface BinaryExpression extends Node { type: "BinaryExpression"; operator: "+" | "-" | "/" | "%" | "*" | "**" | "&" | "|" | ">>" | ">>>" | "<<" | "^" | "==" | "===" | "!=" | "!==" | "in" | "instanceof" | ">" | "<" | ">=" | "<="; left: Expression; right: Expression; } export interface Directive extends Node { type: "Directive"; value: DirectiveLiteral; } export interface DirectiveLiteral extends Node { type: "DirectiveLiteral"; value: string; } export interface BlockStatement extends Node { type: "BlockStatement"; directives?: Directive[] | undefined; body: Statement[]; } export interface BreakStatement extends Node { type: "BreakStatement"; label: Identifier; } export interface CallExpression extends Node { type: "CallExpression"; callee: Expression | Super; arguments: Array<Expression | SpreadElement>; } export interface CatchClause extends Node { type: "CatchClause"; param: Identifier; body: BlockStatement; } export interface ConditionalExpression extends Node { type: "ConditionalExpression"; test: Expression; consequent: Expression; alternate: Expression; } export interface ContinueStatement extends Node { type: "ContinueStatement"; label: Identifier; } export interface DebuggerStatement extends Node { type: "DebuggerStatement"; } export interface DoWhileStatement extends Node { type: "DoWhileStatement"; test: Expression; body: Statement; } export interface EmptyStatement extends Node { type: "EmptyStatement"; } export interface ExpressionStatement extends Node { type: "ExpressionStatement"; expression: Expression; } export interface File extends Node { type: "File"; program: Program; comments: Comment[]; tokens: any[]; } export interface ForInStatement extends Node { type: "ForInStatement"; left: VariableDeclaration | LVal; right: Expression; body: Statement; } export interface ForStatement extends Node { type: "ForStatement"; init: VariableDeclaration | Expression; test: Expression; update: Expression; body: Statement; } export interface FunctionDeclaration extends Node { type: "FunctionDeclaration"; id: Identifier; params: LVal[]; body: BlockStatement; generator: boolean; async: boolean; returnType?: TypeAnnotation | undefined; typeParameters?: TypeParameterDeclaration | undefined; } export interface FunctionExpression extends Node { type: "FunctionExpression"; id: Identifier; params: LVal[]; body: BlockStatement; generator: boolean; async: boolean; returnType?: TypeAnnotation | undefined; typeParameters?: TypeParameterDeclaration | undefined; } export interface Identifier extends Node { type: "Identifier"; name: string; typeAnnotation?: TypeAnnotation | undefined; } export interface IfStatement extends Node { type: "IfStatement"; test: Expression; consequent: Statement; alternate: Statement; } export interface LabeledStatement extends Node { type: "LabeledStatement"; label: Identifier; body: Statement; } export interface StringLiteral extends Node { type: "StringLiteral"; value: string; } export interface NumericLiteral extends Node { type: "NumericLiteral"; value: number; } export interface NullLiteral extends Node { type: "NullLiteral"; } export interface BooleanLiteral extends Node { type: "BooleanLiteral"; value: boolean; } export interface RegExpLiteral extends Node { type: "RegExpLiteral"; pattern: string; flags?: string | undefined; } export interface LogicalExpression extends Node { type: "LogicalExpression"; operator: "||" | "&&"; left: Expression; right: Expression; } export interface MemberExpression extends Node { type: "MemberExpression"; object: Expression | Super; property: Expression; computed: boolean; } export interface NewExpression extends Node { type: "NewExpression"; callee: Expression | Super; arguments: Array<Expression | SpreadElement>; } export interface Program extends Node { type: "Program"; sourceType: "script" | "module"; directives?: Directive[] | undefined; body: Array<Statement | ModuleDeclaration>; } export interface ObjectExpression extends Node { type: "ObjectExpression"; properties: Array<ObjectProperty | ObjectMethod | SpreadProperty>; } export interface ObjectMethod extends Node { type: "ObjectMethod"; key: Expression; kind: "get" | "set" | "method"; shorthand: boolean; computed: boolean; value: Expression; decorators?: Decorator[] | undefined; id: Identifier; params: LVal[]; body: BlockStatement; generator: boolean; async: boolean; returnType?: TypeAnnotation | undefined; typeParameters?: TypeParameterDeclaration | undefined; } export interface ObjectProperty extends Node { type: "ObjectProperty"; key: Expression; computed: boolean; value: Expression; decorators?: Decorator[] | undefined; shorthand: boolean; } export interface RestElement extends Node { type: "RestElement"; argument: LVal; typeAnnotation?: TypeAnnotation | undefined; } export interface ReturnStatement extends Node { type: "ReturnStatement"; argument: Expression; } export interface SequenceExpression extends Node { type: "SequenceExpression"; expressions: Expression[]; } export interface SwitchCase extends Node { type: "SwitchCase"; test: Expression; consequent: Statement[]; } export interface SwitchStatement extends Node { type: "SwitchStatement"; discriminant: Expression; cases: SwitchCase[]; } export interface ThisExpression extends Node { type: "ThisExpression"; } export interface ThrowStatement extends Node { type: "ThrowStatement"; argument: Expression; } export interface TryStatement extends Node { type: "TryStatement"; block: BlockStatement; handler: CatchClause; finalizer: BlockStatement; } export interface UnaryExpression extends Node { type: "UnaryExpression"; operator: "-" | "+" | "!" | "~" | "typeof" | "void" | "delete"; prefix: boolean; argument: Expression; } export interface UpdateExpression extends Node { type: "UpdateExpression"; operator: "++" | "--"; prefix: boolean; argument: Expression; } export interface VariableDeclaration extends Node { type: "VariableDeclaration"; declarations: VariableDeclarator[]; kind: "var" | "let" | "const"; } export interface VariableDeclarator extends Node { type: "VariableDeclarator"; id: LVal; init: Expression; } export interface WhileStatement extends Node { type: "WhileStatement"; test: Expression; body: Statement; } export interface WithStatement extends Node { type: "WithStatement"; object: Expression; body: BlockStatement | Statement; } export interface AssignmentPattern extends Node { type: "AssignmentPattern"; left: Identifier; right: Expression; } export interface ArrayPattern extends Node { type: "ArrayPattern"; elements: Expression[]; typeAnnotation?: TypeAnnotation | undefined; } export interface ArrowFunctionExpression extends Node { type: "ArrowFunctionExpression"; id: Identifier; params: LVal[]; body: BlockStatement | Expression; generator: boolean; async: boolean; expression: boolean; returnType?: TypeAnnotation | undefined; typeParameters?: TypeParameterDeclaration | undefined; } export interface ClassBody extends Node { type: "ClassBody"; body: Array<ClassMethod | ClassProperty>; } export interface ClassDeclaration extends Node { type: "ClassDeclaration"; id: Identifier; superClass: Expression; body: ClassBody; decorators?: Decorator[] | undefined; implements?: ClassImplements[] | undefined; mixins?: any[] | undefined; typeParameters?: TypeParameterDeclaration | undefined; superTypeParameters?: TypeParameterInstantiation | undefined; } export interface ClassExpression extends Node { type: "ClassExpression"; id: Identifier; superClass: Expression; body: ClassBody; decorators?: Decorator[] | undefined; implements?: ClassImplements[] | undefined; mixins?: any[] | undefined; typeParameters?: TypeParameterDeclaration | undefined; superTypeParameters?: TypeParameterInstantiation | undefined; } export interface ExportAllDeclaration extends Node { type: "ExportAllDeclaration"; source: StringLiteral; } export interface ExportDefaultDeclaration extends Node { type: "ExportDefaultDeclaration"; declaration: Declaration | Expression; } export interface ExportNamedDeclaration extends Node { type: "ExportNamedDeclaration"; declaration: Declaration; specifiers: ExportSpecifier[]; source: StringLiteral | null; } export interface ExportSpecifier extends Node { type: "ExportSpecifier"; local: Identifier; imported: Identifier; exported: Identifier; } export interface ForOfStatement extends Node { type: "ForOfStatement"; left: VariableDeclaration | LVal; right: Expression; body: Statement; } export interface ImportDeclaration extends Node { type: "ImportDeclaration"; specifiers: Array<ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier>; source: StringLiteral; } export interface ImportDefaultSpecifier extends Node { type: "ImportDefaultSpecifier"; local: Identifier; } export interface ImportNamespaceSpecifier extends Node { type: "ImportNamespaceSpecifier"; local: Identifier; } export interface ImportSpecifier extends Node { type: "ImportSpecifier"; local: Identifier; imported: Identifier; } export interface MetaProperty extends Node { type: "MetaProperty"; meta: Identifier; property: Identifier; } export interface ClassMethod extends Node { type: "ClassMethod"; key: Expression; value?: FunctionExpression | undefined; kind: "constructor" | "method" | "get" | "set"; computed: boolean; static: boolean; decorators?: Decorator[] | undefined; id: Identifier; params: LVal[]; body: BlockStatement; generator: boolean; async: boolean; expression: boolean; returnType?: TypeAnnotation | undefined; typeParameters?: TypeParameterDeclaration | undefined; } // See: https://github.com/babel/babel/blob/master/doc/ast/spec.md#objectpattern export interface AssignmentProperty extends Node { type: "ObjectProperty"; key: Expression; computed: boolean; value: Pattern; decorators?: Decorator[] | undefined; shorthand: boolean; } export interface ObjectPattern extends Node { type: "ObjectPattern"; properties: Array<AssignmentProperty | RestProperty>; typeAnnotation?: TypeAnnotation | undefined; } export interface SpreadElement extends Node { type: "SpreadElement"; argument: Expression; } export interface Super extends Node { type: "Super"; } export interface TaggedTemplateExpression extends Node { type: "TaggedTemplateExpression"; tag: Expression; quasi: TemplateLiteral; } export interface TemplateElement extends Node { type: "TemplateElement"; tail: boolean; value: { cooked: string; raw: string; }; } export interface TemplateLiteral extends Node { type: "TemplateLiteral"; quasis: TemplateElement[]; expressions: Expression[]; } export interface YieldExpression extends Node { type: "YieldExpression"; argument: Expression; delegate: boolean; } export interface AnyTypeAnnotation extends Node { type: "AnyTypeAnnotation"; } export interface ArrayTypeAnnotation extends Node { type: "ArrayTypeAnnotation"; elementType: FlowTypeAnnotation; } export interface BooleanTypeAnnotation extends Node { type: "BooleanTypeAnnotation"; } export interface BooleanLiteralTypeAnnotation extends Node { type: "BooleanLiteralTypeAnnotation"; } export interface NullLiteralTypeAnnotation extends Node { type: "NullLiteralTypeAnnotation"; } export interface ClassImplements extends Node { type: "ClassImplements"; id: Identifier; typeParameters: TypeParameterInstantiation; } export interface ClassProperty extends Node { type: "ClassProperty"; key: Identifier; value: Expression; decorators?: Decorator[] | undefined; typeAnnotation?: TypeAnnotation | undefined; } export interface DeclareClass extends Node { type: "DeclareClass"; id: Identifier; typeParameters: TypeParameterDeclaration; extends: InterfaceExtends[]; body: ObjectTypeAnnotation; } export interface DeclareFunction extends Node { type: "DeclareFunction"; id: Identifier; } export interface DeclareInterface extends Node { type: "DeclareInterface"; id: Identifier; typeParameters: TypeParameterDeclaration; extends: InterfaceExtends[]; body: ObjectTypeAnnotation; } export interface DeclareModule extends Node { type: "DeclareModule"; id: StringLiteral | Identifier; body: BlockStatement; } export interface DeclareTypeAlias extends Node { type: "DeclareTypeAlias"; id: Identifier; typeParameters: TypeParameterDeclaration; right: FlowTypeAnnotation; } export interface DeclareVariable extends Node { type: "DeclareVariable"; id: Identifier; } export interface ExistentialTypeParam extends Node { type: "ExistentialTypeParam"; } export interface FunctionTypeAnnotation extends Node { type: "FunctionTypeAnnotation"; typeParameters: TypeParameterDeclaration; params: FunctionTypeParam[]; rest: FunctionTypeParam; returnType: FlowTypeAnnotation; } export interface FunctionTypeParam extends Node { type: "FunctionTypeParam"; name: Identifier; typeAnnotation: FlowTypeAnnotation; } export interface GenericTypeAnnotation extends Node { type: "GenericTypeAnnotation"; id: Identifier; typeParameters: TypeParameterInstantiation; } export interface InterfaceExtends extends Node { type: "InterfaceExtends"; id: Identifier; typeParameters: TypeParameterInstantiation; } export interface InterfaceDeclaration extends Node { type: "InterfaceDeclaration"; id: Identifier; typeParameters: TypeParameterDeclaration; extends: InterfaceExtends[]; mixins?: any[] | undefined; body: ObjectTypeAnnotation; } export interface IntersectionTypeAnnotation extends Node { type: "IntersectionTypeAnnotation"; types: FlowTypeAnnotation[]; } export interface MixedTypeAnnotation extends Node { type: "MixedTypeAnnotation"; } export interface NullableTypeAnnotation extends Node { type: "NullableTypeAnnotation"; typeAnnotation: FlowTypeAnnotation; } export interface NumericLiteralTypeAnnotation extends Node { type: "NumericLiteralTypeAnnotation"; } export interface NumberTypeAnnotation extends Node { type: "NumberTypeAnnotation"; } export interface StringLiteralTypeAnnotation extends Node { type: "StringLiteralTypeAnnotation"; } export interface StringTypeAnnotation extends Node { type: "StringTypeAnnotation"; } export interface ThisTypeAnnotation extends Node { type: "ThisTypeAnnotation"; } export interface TupleTypeAnnotation extends Node { type: "TupleTypeAnnotation"; types: FlowTypeAnnotation[]; } export interface TypeofTypeAnnotation extends Node { type: "TypeofTypeAnnotation"; argument: FlowTypeAnnotation; } export interface TypeAlias extends Node { type: "TypeAlias"; id: Identifier; typeParameters: TypeParameterDeclaration; right: FlowTypeAnnotation; } export interface TypeAnnotation extends Node { type: "TypeAnnotation"; typeAnnotation: FlowTypeAnnotation; } export interface TypeCastExpression extends Node { type: "TypeCastExpression"; expression: Expression; typeAnnotation: FlowTypeAnnotation; } export interface TypeParameter extends Node { type: "TypeParameterDeclaration"; bound: TypeAnnotation | null; default: Flow | null; name: string | null; } export interface TypeParameterDeclaration extends Node { type: "TypeParameterDeclaration"; params: Identifier[]; } export interface TypeParameterInstantiation extends Node { type: "TypeParameterInstantiation"; params: FlowTypeAnnotation[]; } export interface ObjectTypeAnnotation extends Node { type: "ObjectTypeAnnotation"; properties: ObjectTypeProperty[]; indexers: ObjectTypeIndexer[]; callProperties: ObjectTypeCallProperty[]; } export interface ObjectTypeCallProperty extends Node { type: "ObjectTypeCallProperty"; value: FlowTypeAnnotation; } export interface ObjectTypeIndexer extends Node { type: "ObjectTypeIndexer"; id: Expression; key: FlowTypeAnnotation; value: FlowTypeAnnotation; } export interface ObjectTypeProperty extends Node { type: "ObjectTypeProperty"; key: Expression; value: FlowTypeAnnotation; } export interface QualifiedTypeIdentifier extends Node { type: "QualifiedTypeIdentifier"; id: Identifier; qualification: Identifier | QualifiedTypeIdentifier; } export interface UnionTypeAnnotation extends Node { type: "UnionTypeAnnotation"; types: FlowTypeAnnotation[]; } export interface VoidTypeAnnotation extends Node { type: "VoidTypeAnnotation"; } export interface JSXAttribute extends Node { type: "JSXAttribute"; name: JSXIdentifier | JSXNamespacedName; value: JSXElement | StringLiteral | JSXExpressionContainer | null; } export interface JSXClosingElement extends Node { type: "JSXClosingElement"; name: JSXIdentifier | JSXMemberExpression; } export interface JSXElement extends Node { type: "JSXElement"; openingElement: JSXOpeningElement; closingElement: JSXClosingElement; children: Array<JSXElement | JSXExpressionContainer | JSXText>; selfClosing?: boolean | undefined; } export interface JSXEmptyExpression extends Node { type: "JSXEmptyExpression"; } export interface JSXExpressionContainer extends Node { type: "JSXExpressionContainer"; expression: Expression; } export interface JSXIdentifier extends Node { type: "JSXIdentifier"; name: string; } export interface JSXMemberExpression extends Node { type: "JSXMemberExpression"; object: JSXMemberExpression | JSXIdentifier; property: JSXIdentifier; } export interface JSXNamespacedName extends Node { type: "JSXNamespacedName"; namespace: JSXIdentifier; name: JSXIdentifier; } export interface JSXOpeningElement extends Node { type: "JSXOpeningElement"; name: JSXIdentifier | JSXMemberExpression; selfClosing: boolean; attributes: JSXAttribute[]; } export interface JSXSpreadAttribute extends Node { type: "JSXSpreadAttribute"; argument: Expression; } export interface JSXText extends Node { type: "JSXText"; value: string; } export interface Noop extends Node { type: "Noop"; } export interface ParenthesizedExpression extends Node { type: "ParenthesizedExpression"; expression: Expression; } export interface AwaitExpression extends Node { type: "AwaitExpression"; argument: Expression; } export interface BindExpression extends Node { type: "BindExpression"; object: Expression; callee: Expression; } export interface Decorator extends Node { type: "Decorator"; expression: Expression; } export interface DoExpression extends Node { type: "DoExpression"; body: BlockStatement; } export interface ExportDefaultSpecifier extends Node { type: "ExportDefaultSpecifier"; exported: Identifier; } export interface ExportNamespaceSpecifier extends Node { type: "ExportNamespaceSpecifier"; exported: Identifier; } export interface RestProperty extends Node { type: "RestProperty"; argument: LVal; } export interface SpreadProperty extends Node { type: "SpreadProperty"; argument: Expression; } export interface TSAnyKeyword extends Node { type: "TSAnyKeyword"; } export interface TSArrayType extends Node { type: "TSArrayType"; elementType: TSType; } export interface TSAsExpression extends Node { type: "TSAsExpression"; expression: Expression; typeAnnotation: TSType; } export interface TSBooleanKeyword extends Node { type: "TSBooleanKeyword"; } export interface TSCallSignatureDeclaration extends Node { type: "TSCallSignatureDeclaration"; typeParameters: TypeParameterDeclaration | null; parameters: Array<Identifier | RestElement> | null; typeAnnotation: TSTypeAnnotation | null; } export interface TSConstructSignatureDeclaration extends Node { type: "TSConstructSignatureDeclaration"; typeParameters: TypeParameterDeclaration | null; parameters: Array<Identifier | RestElement> | null; typeAnnotation: TSTypeAnnotation | null; } export interface TSConstructorType extends Node { type: "TSConstructorType"; typeParameters: TypeParameterDeclaration | null; typeAnnotation: TSTypeAnnotation | null; parameters: Array<Identifier | RestElement> | null; } export interface TSDeclareFunction extends Node { type: "TSDeclareFunction"; id: Identifier | null; typeParameters: TypeParameterDeclaration | Noop | null; params: LVal[]; returnType: TypeAnnotation | TSTypeAnnotation | Noop | null; async: boolean; declare: boolean | null; generator: boolean; } export interface TSDeclareMethod extends Node { type: "TSDeclareMethod"; decorators: Decorator[] | null; key: Expression; typeParameters: TypeParameterDeclaration | Noop | null; params: LVal[]; returnType: TypeAnnotation | TSTypeAnnotation | Noop | null; abstract: boolean | null; access: "public" | "private" | "protected" | null; accessibility: "public" | "private" | "protected" | null; async: boolean; computed: boolean; generator: boolean; kind: "get" | "set" | "method" | "constructor"; optional: boolean | null; static: boolean | null; } export interface TSEnumDeclaration extends Node { type: "TSEnumDeclaration"; id: Identifier; members: TSEnumMember[]; const: boolean | null; declare: boolean | null; initializer: Expression | null; } export interface TSEnumMember extends Node { type: "TSEnumMember"; id: Identifier | StringLiteral; initializer: Expression | null; } export interface TSExportAssignment extends Node { type: "TSExportAssignment"; expression: Expression; } export interface TSExpressionWithTypeArguments extends Node { type: "TSExpressionWithTypeArguments"; expression: TSEntityName; typeParameters: TypeParameterInstantiation | null; } export interface TSExternalModuleReference extends Node { type: "TSExternalModuleReference"; expression: StringLiteral; } export interface TSFunctionType extends Node { type: "TSFunctionType"; typeParameters: TypeParameterDeclaration | null; typeAnnotation: TSTypeAnnotation | null; parameters: Array<Identifier | RestElement> | null; } export interface TSImportEqualsDeclaration extends Node { type: "TSImportEqualsDeclaration"; id: Identifier; moduleReference: TSEntityName | TSExternalModuleReference; isExport: boolean | null; } export interface TSIndexSignature extends Node { type: "TSIndexSignature"; parameters: Identifier[]; typeAnnotation: TSTypeAnnotation | null; readonly: boolean | null; } export interface TSIndexedAccessType extends Node { type: "TSIndexedAccessType"; objectType: TSType; indexType: TSType; } export interface TSInterfaceBody extends Node { type: "TSInterfaceBody"; body: TSTypeElement[]; } export interface TSInterfaceDeclaration extends Node { type: "TSInterfaceDeclaration"; id: Identifier; typeParameters: TypeParameterDeclaration | null; extends: TSExpressionWithTypeArguments[] | null; body: TSInterfaceBody; declare: boolean | null; } export interface TSIntersectionType extends Node { type: "TSIntersectionType"; types: TSType[]; } export interface TSLiteralType extends Node { type: "TSLiteralType"; literal: NumericLiteral | StringLiteral | BooleanLiteral; } export interface TSMappedType extends Node { type: "TSMappedType"; typeParameter: TypeParameter; typeAnnotation: TSType | null; optional: boolean | null; readonly: boolean | null; } export interface TSMethodSignature extends Node { type: "TSMethodSignature"; key: Expression; typeParameters: TypeParameterDeclaration | null; parameters: Array<Identifier | RestElement> | null; typeAnnotation: TSTypeAnnotation | null; computed: boolean | null; optional: boolean | null; } export interface TSModuleBlock extends Node { type: "TSModuleBlock"; body: Statement[]; } export interface TSModuleDeclaration extends Node { type: "TSModuleDeclaration"; id: Identifier | StringLiteral; body: TSModuleBlock | TSModuleDeclaration; declare: boolean | null; global: boolean | null; } export interface TSNamespaceExportDeclaration extends Node { type: "TSNamespaceExportDeclaration"; id: Identifier; } export interface TSNeverKeyword extends Node { type: "TSNeverKeyword"; } export interface TSNonNullExpression extends Node { type: "TSNonNullExpression"; expression: Expression; } export interface TSNullKeyword extends Node { type: "TSNullKeyword"; } export interface TSNumberKeyword extends Node { type: "TSNumberKeyword"; } export interface TSObjectKeyword extends Node { type: "TSObjectKeyword"; } export interface TSParameterProperty extends Node { type: "TSParameterProperty"; parameter: Identifier | AssignmentPattern; accessibility: 'public' | 'private' | 'protected' | null; readonly: boolean | null; } export interface TSParenthesizedType extends Node { type: "TSParenthesizedType"; typeAnnotation: TSType; } export interface TSPropertySignature extends Node { type: "TSPropertySignature"; key: Expression; typeAnnotation: TSTypeAnnotation | null; initializer: Expression | null; computed: boolean | null; optional: boolean | null; readonly: boolean | null; } export interface TSQualifiedName extends Node { type: "TSQualifiedName"; left: TSEntityName; right: Identifier; } export interface TSStringKeyword extends Node { type: "TSStringKeyword"; } export interface TSSymbolKeyword extends Node { type: "TSSymbolKeyword"; } export interface TSThisType extends Node { type: "TSThisType"; } export interface TSTupleType extends Node { type: "TSTupleType"; elementTypes: TSType[]; } export interface TSTypeAliasDeclaration extends Node { type: "TSTypeAliasDeclaration"; id: Identifier; typeParameters: TypeParameterDeclaration | null; typeAnnotation: TSType; declare: boolean | null; } export interface TSTypeAnnotation extends Node { type: "TSTypeAnnotation"; typeAnnotation: TSType; } export interface TSTypeAssertion extends Node { type: "TSTypeAssertion"; typeAnnotation: TSType; expression: Expression; } export interface TSTypeLiteral extends Node { type: "TSTypeLiteral"; members: TSTypeElement[]; } export interface TSTypeOperator extends Node { type: "TSTypeOperator"; typeAnnotation: TSType; operator: string | null; } export interface TSTypeParameter extends Node { type: "TSTypeParameter"; constraint: TSType | null; default: TSType | null; name: string | null; } export interface TSTypeParameterDeclaration extends Node { type: "TSTypeParameterDeclaration"; params: TSTypeParameter[]; } export interface TSTypeParameterInstantiation extends Node { type: "TSTypeParameterInstantiation"; params: TSType[]; } export interface TSTypePredicate extends Node { type: "TSTypePredicate"; parameterName: Identifier | TSThisType; typeAnnotation: TSTypeAnnotation; } export interface TSTypeQuery extends Node { type: "TSTypeQuery"; exprName: TSEntityName; } export interface TSTypeReference extends Node { type: "TSTypeReference"; typeName: TSEntityName; typeParameters: TypeParameterInstantiation | null; } export interface TSUndefinedKeyword extends Node { type: "TSUndefinedKeyword"; } export interface TSUnionType extends Node { type: "TSUnionType"; types: TSType[]; } export interface TSVoidKeyword extends Node { type: "TSVoidKeyword"; } export type Expression = ArrayExpression | AssignmentExpression | BinaryExpression | CallExpression | ConditionalExpression | FunctionExpression | Identifier | StringLiteral | NumericLiteral | BooleanLiteral | NullLiteral | RegExpLiteral | LogicalExpression | MemberExpression | NewExpression | ObjectExpression | SequenceExpression | ThisExpression | UnaryExpression | UpdateExpression | ArrowFunctionExpression | ClassExpression | MetaProperty | Super | TaggedTemplateExpression | TemplateLiteral | YieldExpression | TypeCastExpression | JSXElement | JSXEmptyExpression | JSXIdentifier | JSXMemberExpression | ParenthesizedExpression | AwaitExpression | BindExpression | DoExpression | TSAsExpression | TSNonNullExpression | TSTypeAssertion; export type Binary = BinaryExpression | LogicalExpression; export type Scopable = BlockStatement | CatchClause | DoWhileStatement | ForInStatement | ForStatement | FunctionDeclaration | FunctionExpression | Program | ObjectMethod | SwitchStatement | WhileStatement | ArrowFunctionExpression | ClassDeclaration | ClassExpression | ForOfStatement | ClassMethod; export type BlockParent = BlockStatement | DoWhileStatement | ForInStatement | ForStatement | FunctionDeclaration | FunctionExpression | Program | ObjectMethod | SwitchStatement | WhileStatement | ArrowFunctionExpression | ForOfStatement | ClassMethod; export type Block = BlockStatement | Program; export type Statement = BlockStatement | BreakStatement | ContinueStatement | DebuggerStatement | DoWhileStatement | EmptyStatement | ExpressionStatement | ForInStatement | ForStatement | FunctionDeclaration | IfStatement | LabeledStatement | ReturnStatement | SwitchStatement | ThrowStatement | TryStatement | VariableDeclaration | WhileStatement | WithStatement | ClassDeclaration | ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration | ForOfStatement | ImportDeclaration | DeclareClass | DeclareFunction | DeclareInterface | DeclareModule | DeclareTypeAlias | DeclareVariable | InterfaceDeclaration | TypeAlias | TSDeclareFunction | TSEnumDeclaration | TSExportAssignment | TSImportEqualsDeclaration | TSInterfaceDeclaration | TSModuleDeclaration | TSNamespaceExportDeclaration | TSTypeAliasDeclaration; export type Terminatorless = BreakStatement | ContinueStatement | ReturnStatement | ThrowStatement | YieldExpression | AwaitExpression; export type CompletionStatement = BreakStatement | ContinueStatement | ReturnStatement | ThrowStatement; export type Conditional = ConditionalExpression | IfStatement; export type Loop = DoWhileStatement | ForInStatement | ForStatement | WhileStatement | ForOfStatement; export type While = DoWhileStatement | WhileStatement; export type ExpressionWrapper = ExpressionStatement | TypeCastExpression | ParenthesizedExpression; export type For = ForInStatement | ForStatement | ForOfStatement; export type ForXStatement = ForInStatement | ForOfStatement; export type Function = FunctionDeclaration | FunctionExpression | ObjectMethod | ArrowFunctionExpression | ClassMethod; export type FunctionParent = FunctionDeclaration | FunctionExpression | Program | ObjectMethod | ArrowFunctionExpression | ClassMethod; export type Pureish = FunctionDeclaration | FunctionExpression | StringLiteral | NumericLiteral | BooleanLiteral | NullLiteral | ArrowFunctionExpression | ClassDeclaration | ClassExpression; export type Declaration = FunctionDeclaration | VariableDeclaration | ClassDeclaration | ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration | ImportDeclaration | DeclareClass | DeclareFunction | DeclareInterface | DeclareModule | DeclareTypeAlias | DeclareVariable | InterfaceDeclaration | TypeAlias | TSDeclareFunction | TSEnumDeclaration | TSInterfaceDeclaration | TSModuleDeclaration | TSTypeAliasDeclaration; export type LVal = Identifier | MemberExpression | RestElement | AssignmentPattern | ArrayPattern | ObjectPattern | TSParameterProperty; export type Literal = StringLiteral | NumericLiteral | BooleanLiteral | NullLiteral | RegExpLiteral | TemplateLiteral; export type Immutable = StringLiteral | NumericLiteral | BooleanLiteral | NullLiteral | JSXAttribute | JSXClosingElement | JSXElement | JSXExpressionContainer | JSXOpeningElement; export type UserWhitespacable = ObjectMethod | ObjectProperty | ObjectTypeCallProperty | ObjectTypeIndexer | ObjectTypeProperty; export type Method = ObjectMethod | ClassMethod; export type ObjectMember = ObjectMethod | ObjectProperty; export type Property = ObjectProperty | ClassProperty; export type UnaryLike = UnaryExpression | SpreadElement | RestProperty | SpreadProperty; export type Pattern = AssignmentPattern | ArrayPattern | ObjectPattern; export type Class = ClassDeclaration | ClassExpression; export type ModuleDeclaration = ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration | ImportDeclaration; export type ExportDeclaration = ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration; export type ModuleSpecifier = ExportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportSpecifier | ExportDefaultSpecifier | ExportNamespaceSpecifier; export type Flow = AnyTypeAnnotation | ArrayTypeAnnotation | BooleanTypeAnnotation | BooleanLiteralTypeAnnotation | ClassImplements | ClassProperty | DeclareClass | DeclareFunction | DeclareInterface | DeclareModule | DeclareTypeAlias | DeclareVariable | ExistentialTypeParam | FunctionTypeAnnotation | FunctionTypeParam | GenericTypeAnnotation | InterfaceExtends | InterfaceDeclaration | IntersectionTypeAnnotation | MixedTypeAnnotation | NullableTypeAnnotation | NumericLiteralTypeAnnotation | NumberTypeAnnotation | StringLiteralTypeAnnotation | StringTypeAnnotation | ThisTypeAnnotation | TupleTypeAnnotation | TypeofTypeAnnotation | TypeAlias | TypeAnnotation | TypeCastExpression | TypeParameterDeclaration | TypeParameterInstantiation | ObjectTypeAnnotation | ObjectTypeCallProperty | ObjectTypeIndexer | ObjectTypeProperty | QualifiedTypeIdentifier | UnionTypeAnnotation | VoidTypeAnnotation; export type FlowTypeAnnotation = AnyTypeAnnotation | ArrayTypeAnnotation | BooleanTypeAnnotation | BooleanLiteralTypeAnnotation | FunctionTypeAnnotation | GenericTypeAnnotation | IntersectionTypeAnnotation | MixedTypeAnnotation | NullableTypeAnnotation | NumericLiteralTypeAnnotation | NumberTypeAnnotation | StringLiteralTypeAnnotation | StringTypeAnnotation | ThisTypeAnnotation | TupleTypeAnnotation | TypeofTypeAnnotation | TypeAnnotation | ObjectTypeAnnotation | UnionTypeAnnotation | VoidTypeAnnotation; export type FlowBaseAnnotation = AnyTypeAnnotation | BooleanTypeAnnotation | MixedTypeAnnotation | NumberTypeAnnotation | StringTypeAnnotation | ThisTypeAnnotation | VoidTypeAnnotation; export type FlowDeclaration = DeclareClass | DeclareFunction | DeclareInterface | DeclareModule | DeclareTypeAlias | DeclareVariable | InterfaceDeclaration | TypeAlias; export type JSX = JSXAttribute | JSXClosingElement | JSXElement | JSXEmptyExpression | JSXExpressionContainer | JSXIdentifier | JSXMemberExpression | JSXNamespacedName | JSXOpeningElement | JSXSpreadAttribute | JSXText; export type TSType = TSAnyKeyword | TSArrayType | TSBooleanKeyword | TSConstructorType | TSExpressionWithTypeArguments | TSFunctionType | TSIndexedAccessType | TSIntersectionType | TSLiteralType | TSMappedType | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSParenthesizedType | TSStringKeyword | TSSymbolKeyword | TSThisType | TSTupleType | TSTypeLiteral | TSTypeOperator | TSTypePredicate | TSTypeQuery | TSTypeReference | TSUndefinedKeyword | TSUnionType | TSVoidKeyword; export type TSEntityName = Identifier | TSQualifiedName; export type TSTypeElement = TSCallSignatureDeclaration | TSConstructSignatureDeclaration | TSIndexSignature | TSMethodSignature | TSPropertySignature; export function arrayExpression(elements?: Array<null | Expression | SpreadElement>): ArrayExpression; export function assignmentExpression(operator?: string, left?: LVal, right?: Expression): AssignmentExpression; export function binaryExpression( operator?: "+" | "-" | "/" | "%" | "*" | "**" | "&" | "|" | ">>" | ">>>" | "<<" | "^" | "==" | "===" | "!=" | "!==" | "in" | "instanceof" | ">" | "<" | ">=" | "<=", left?: Expression, right?: Expression ): BinaryExpression; export function directive(value?: DirectiveLiteral): Directive; export function directiveLiteral(value?: string): DirectiveLiteral; export function blockStatement(body?: Statement[], directives?: Directive[]): BlockStatement; export function breakStatement(label?: Identifier): BreakStatement; export function callExpression(callee?: Expression, _arguments?: Array<Expression | SpreadElement>): CallExpression; export function catchClause(param?: Identifier, body?: BlockStatement): CatchClause; export function conditionalExpression(test?: Expression, consequent?: Expression, alternate?: Expression): ConditionalExpression; export function continueStatement(label?: Identifier): ContinueStatement; export function debuggerStatement(): DebuggerStatement; export function doWhileStatement(test?: Expression, body?: Statement): DoWhileStatement; export function emptyStatement(): EmptyStatement; export function expressionStatement(expression?: Expression): ExpressionStatement; export function file(program?: Program, comments?: Comment[], tokens?: any[]): File; export function forInStatement(left?: VariableDeclaration | LVal, right?: Expression, body?: Statement): ForInStatement; export function forStatement(init?: VariableDeclaration | Expression, test?: Expression, update?: Expression, body?: Statement): ForStatement; export function functionDeclaration(id?: Identifier, params?: LVal[], body?: BlockStatement, generator?: boolean, async?: boolean): FunctionDeclaration; export function functionExpression(id?: Identifier, params?: LVal[], body?: BlockStatement, generator?: boolean, async?: boolean): FunctionExpression; export function identifier(name?: string): Identifier; export function ifStatement(test?: Expression, consequent?: Statement, alternate?: Statement): IfStatement; export function labeledStatement(label?: Identifier, body?: Statement): LabeledStatement; export function stringLiteral(value?: string): StringLiteral; export function numericLiteral(value?: number): NumericLiteral; export function nullLiteral(): NullLiteral; export function booleanLiteral(value?: boolean): BooleanLiteral; export function regExpLiteral(pattern?: string, flags?: string): RegExpLiteral; export function logicalExpression(operator?: "||" | "&&", left?: Expression, right?: Expression): LogicalExpression; export function memberExpression(object?: Expression | Super, property?: Expression, computed?: boolean): MemberExpression; export function newExpression(callee?: Expression | Super, _arguments?: Array<Expression | SpreadElement>): NewExpression; export function program(body?: Array<Statement | ModuleDeclaration>, directives?: Directive[]): Program; export function objectExpression(properties?: Array<ObjectProperty | ObjectMethod | SpreadProperty>): ObjectExpression; export function objectMethod(kind?: "get" | "set" | "method", key?: Expression, params?: LVal[], body?: BlockStatement, computed?: boolean): ObjectMethod; export function objectProperty(key?: Expression, value?: Expression, computed?: boolean, shorthand?: boolean, decorators?: Decorator[]): ObjectProperty; export function restElement(argument?: LVal, typeAnnotation?: TypeAnnotation): RestElement; export function returnStatement(argument?: Expression): ReturnStatement; export function sequenceExpression(expressions?: Expression[]): SequenceExpression; export function switchCase(test?: Expression, consequent?: Statement[]): SwitchCase; export function switchStatement(discriminant?: Expression, cases?: SwitchCase[]): SwitchStatement; export function thisExpression(): ThisExpression; export function throwStatement(argument?: Expression): ThrowStatement; export function tryStatement(block?: BlockStatement, handler?: CatchClause, finalizer?: BlockStatement): TryStatement; export function unaryExpression(operator?: "void" | "delete" | "!" | "+" | "-" | "++" | "--" | "~" | "typeof", argument?: Expression, prefix?: boolean): UnaryExpression; export function updateExpression(operator?: "++" | "--", argument?: Expression, prefix?: boolean): UpdateExpression; export function variableDeclaration(kind?: "var" | "let" | "const", declarations?: VariableDeclarator[]): VariableDeclaration; export function variableDeclarator(id?: LVal, init?: Expression): VariableDeclarator; export function whileStatement(test?: Expression, body?: BlockStatement | Statement): WhileStatement; export function withStatement(object?: Expression, body?: BlockStatement | Statement): WithStatement; export function assignmentPattern(left?: Identifier, right?: Expression): AssignmentPattern; export function arrayPattern(elements?: Expression[], typeAnnotation?: TypeAnnotation): ArrayPattern; export function arrowFunctionExpression(params?: LVal[], body?: BlockStatement | Expression, async?: boolean): ArrowFunctionExpression; export function classBody(body?: Array<ClassMethod | ClassProperty>): ClassBody; export function classDeclaration(id?: Identifier, superClass?: Expression, body?: ClassBody, decorators?: Decorator[]): ClassDeclaration; export function classExpression(id?: Identifier, superClass?: Expression, body?: ClassBody, decorators?: Decorator[]): ClassExpression; export function exportAllDeclaration(source?: StringLiteral): ExportAllDeclaration; export function exportDefaultDeclaration(declaration?: FunctionDeclaration | ClassDeclaration | Expression): ExportDefaultDeclaration; export function exportNamedDeclaration(declaration?: Declaration, specifiers?: ExportSpecifier[], source?: StringLiteral): ExportNamedDeclaration; export function exportSpecifier(local?: Identifier, exported?: Identifier): ExportSpecifier; export function forOfStatement(left?: VariableDeclaration | LVal, right?: Expression, body?: Statement): ForOfStatement; export function importDeclaration(specifiers?: Array<ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier>, source?: StringLiteral): ImportDeclaration; export function importDefaultSpecifier(local?: Identifier): ImportDefaultSpecifier; export function importNamespaceSpecifier(local?: Identifier): ImportNamespaceSpecifier; export function importSpecifier(local?: Identifier, imported?: Identifier): ImportSpecifier; export function metaProperty(meta?: string, property?: string): MetaProperty; export function classMethod(kind?: "constructor" | "method" | "get" | "set", key?: Expression, params?: LVal[], body?: BlockStatement, computed?: boolean, _static?: boolean): ClassMethod; export function objectPattern(properties?: Array<AssignmentProperty | RestProperty>, typeAnnotation?: TypeAnnotation): ObjectPattern; export function spreadElement(argument?: Expression): SpreadElement; export function taggedTemplateExpression(tag?: Expression, quasi?: TemplateLiteral): TaggedTemplateExpression; export function templateElement(value?: { cooked?: string | undefined; raw?: string | undefined; }, tail?: boolean): TemplateElement; export function templateLiteral(quasis?: TemplateElement[], expressions?: Expression[]): TemplateLiteral; export function yieldExpression(argument?: Expression, delegate?: boolean): YieldExpression; export function anyTypeAnnotation(): AnyTypeAnnotation; export function arrayTypeAnnotation(elementType?: FlowTypeAnnotation): ArrayTypeAnnotation; export function booleanTypeAnnotation(): BooleanTypeAnnotation; export function booleanLiteralTypeAnnotation(): BooleanLiteralTypeAnnotation; export function nullLiteralTypeAnnotation(): NullLiteralTypeAnnotation; export function classImplements(id?: Identifier, typeParameters?: TypeParameterInstantiation): ClassImplements; export function classProperty(key?: Identifier, value?: Expression, typeAnnotation?: TypeAnnotation, decorators?: Decorator[]): ClassProperty; export function declareClass(id?: Identifier, typeParameters?: TypeParameterDeclaration, _extends?: InterfaceExtends[], body?: ObjectTypeAnnotation): DeclareClass; export function declareFunction(id?: Identifier): DeclareFunction; export function declareInterface(id?: Identifier, typeParameters?: TypeParameterDeclaration, _extends?: InterfaceExtends[], body?: ObjectTypeAnnotation): DeclareInterface; export function declareModule(id?: StringLiteral | Identifier, body?: BlockStatement): DeclareModule; export function declareTypeAlias(id?: Identifier, typeParameters?: TypeParameterDeclaration, right?: FlowTypeAnnotation): DeclareTypeAlias; export function declareVariable(id?: Identifier): DeclareVariable; export function existentialTypeParam(): ExistentialTypeParam; export function functionTypeAnnotation(typeParameters?: TypeParameterDeclaration, params?: FunctionTypeParam[], rest?: FunctionTypeParam, returnType?: FlowTypeAnnotation): FunctionTypeAnnotation; export function functionTypeParam(name?: Identifier, typeAnnotation?: FlowTypeAnnotation): FunctionTypeParam; export function genericTypeAnnotation(id?: Identifier, typeParameters?: TypeParameterInstantiation): GenericTypeAnnotation; export function interfaceExtends(id?: Identifier, typeParameters?: TypeParameterInstantiation): InterfaceExtends; export function interfaceDeclaration(id?: Identifier, typeParameters?: TypeParameterDeclaration, _extends?: InterfaceExtends[], body?: ObjectTypeAnnotation): InterfaceDeclaration; export function intersectionTypeAnnotation(types?: FlowTypeAnnotation[]): IntersectionTypeAnnotation; export function mixedTypeAnnotation(): MixedTypeAnnotation; export function nullableTypeAnnotation(typeAnnotation?: FlowTypeAnnotation): NullableTypeAnnotation; export function numericLiteralTypeAnnotation(): NumericLiteralTypeAnnotation; export function numberTypeAnnotation(): NumberTypeAnnotation; export function stringLiteralTypeAnnotation(): StringLiteralTypeAnnotation; export function stringTypeAnnotation(): StringTypeAnnotation; export function thisTypeAnnotation(): ThisTypeAnnotation; export function tupleTypeAnnotation(types?: FlowTypeAnnotation[]): TupleTypeAnnotation; export function typeofTypeAnnotation(argument?: FlowTypeAnnotation): TypeofTypeAnnotation; export function typeAlias(id?: Identifier, typeParameters?: TypeParameterDeclaration, right?: FlowTypeAnnotation): TypeAlias; export function typeAnnotation(typeAnnotation?: FlowTypeAnnotation): TypeAnnotation; export function typeCastExpression(expression?: Expression, typeAnnotation?: FlowTypeAnnotation): TypeCastExpression; export function typeParameter(bound?: TypeAnnotation, default_?: Flow): TypeParameter; export function typeParameterDeclaration(params?: Identifier[]): TypeParameterDeclaration; export function typeParameterInstantiation(params?: FlowTypeAnnotation[]): TypeParameterInstantiation; export function objectTypeAnnotation(properties?: ObjectTypeProperty[], indexers?: ObjectTypeIndexer[], callProperties?: ObjectTypeCallProperty[]): ObjectTypeAnnotation; export function objectTypeCallProperty(value?: FlowTypeAnnotation): ObjectTypeCallProperty; export function objectTypeIndexer(id?: Expression, key?: FlowTypeAnnotation, value?: FlowTypeAnnotation): ObjectTypeIndexer; export function objectTypeProperty(key?: Expression, value?: FlowTypeAnnotation): ObjectTypeProperty; export function qualifiedTypeIdentifier(id?: Identifier, qualification?: Identifier | QualifiedTypeIdentifier): QualifiedTypeIdentifier; export function unionTypeAnnotation(types?: FlowTypeAnnotation[]): UnionTypeAnnotation; export function voidTypeAnnotation(): VoidTypeAnnotation; export function jSXAttribute(name?: JSXIdentifier | JSXNamespacedName, value?: JSXElement | StringLiteral | JSXExpressionContainer | null): JSXAttribute; export function jSXClosingElement(name?: JSXIdentifier | JSXMemberExpression): JSXClosingElement; export function jSXElement(openingElement?: JSXOpeningElement, closingElement?: JSXClosingElement, children?: Array<JSXElement | JSXExpressionContainer | JSXText>, selfClosing?: boolean): JSXElement; export function jSXEmptyExpression(): JSXEmptyExpression; export function jSXExpressionContainer(expression?: Expression): JSXExpressionContainer; export function jSXIdentifier(name?: string): JSXIdentifier; export function jSXMemberExpression(object?: JSXMemberExpression | JSXIdentifier, property?: JSXIdentifier): JSXMemberExpression; export function jSXNamespacedName(namespace?: JSXIdentifier, name?: JSXIdentifier): JSXNamespacedName; export function jSXOpeningElement(name?: JSXIdentifier | JSXMemberExpression, attributes?: JSXAttribute[], selfClosing?: boolean): JSXOpeningElement; export function jSXSpreadAttribute(argument?: Expression): JSXSpreadAttribute; export function jSXText(value?: string): JSXText; export function noop(): Noop; export function parenthesizedExpression(expression?: Expression): ParenthesizedExpression; export function awaitExpression(argument?: Expression): AwaitExpression; export function bindExpression(object?: Expression, callee?: Expression): BindExpression; export function decorator(expression?: Expression): Decorator; export function doExpression(body?: BlockStatement): DoExpression; export function exportDefaultSpecifier(exported?: Identifier): ExportDefaultSpecifier; export function exportNamespaceSpecifier(exported?: Identifier): ExportNamespaceSpecifier; export function restProperty(argument?: LVal): RestProperty; export function spreadProperty(argument?: Expression): SpreadProperty; export function TSAnyKeyword(): TSAnyKeyword; export function TSArrayType(elementType: TSType): TSArrayType; export function TSAsExpression(expression: Expression, typeAnnotation: TSType): TSAsExpression; export function TSBooleanKeyword(): TSBooleanKeyword; export function TSCallSignatureDeclaration(typeParameters?: TypeParameterDeclaration, parameters?: Array<Identifier | RestElement>, typeAnnotation?: TSTypeAnnotation): TSCallSignatureDeclaration; export function TSConstructSignatureDeclaration(typeParameters?: TypeParameterDeclaration, parameters?: Array<Identifier | RestElement>, typeAnnotation?: TSTypeAnnotation): TSTypeElement; export function TSConstructorType(typeParameters?: TypeParameterDeclaration, typeAnnotation?: TSTypeAnnotation): TSConstructorType; export function TSDeclareFunction( id: Identifier | undefined | null, typeParameters: TypeParameterDeclaration | Noop | undefined | null, params: LVal[], returnType: TypeAnnotation | TSTypeAnnotation | Noop | undefined | null): TSDeclareFunction; export function TSDeclareMethod( decorators: Decorator[] | undefined | null, key: Expression, typeParameters: TypeParameterDeclaration | Noop | undefined | null, params: LVal[], returnType?: TypeAnnotation | TSTypeAnnotation | Noop): TSDeclareMethod; export function TSEnumDeclaration(id: Identifier, members: TSEnumMember[]): TSEnumDeclaration; export function TSEnumMember(id: Identifier | StringLiteral, initializer?: Expression): TSEnumMember; export function TSExportAssignment(expression: Expression): TSExportAssignment; export function TSExpressionWithTypeArguments(expression: TSEntityName, typeParameters?: TypeParameterInstantiation): TSExpressionWithTypeArguments; export function TSExternalModuleReference(expression: StringLiteral): TSExternalModuleReference; export function TSFunctionType(typeParameters?: TypeParameterDeclaration, typeAnnotation?: TSTypeAnnotation): TSFunctionType; export function TSImportEqualsDeclaration(id: Identifier, moduleReference: TSEntityName | TSExternalModuleReference): TSImportEqualsDeclaration; export function TSIndexSignature(parameters: Identifier[], typeAnnotation?: TSTypeAnnotation): TSIndexSignature; export function TSIndexedAccessType(objectType: TSType, indexType: TSType): TSIndexedAccessType; export function TSInterfaceBody(body: TSTypeElement[]): TSInterfaceBody; export function TSInterfaceDeclaration( id: Identifier, typeParameters: TypeParameterDeclaration | undefined | null, extends_: TSExpressionWithTypeArguments[] | undefined | null, body: TSInterfaceBody): TSInterfaceDeclaration; export function TSIntersectionType(types: TSType[]): TSIntersectionType; export function TSLiteralType(literal: NumericLiteral | StringLiteral | BooleanLiteral): TSLiteralType; export function TSMappedType(typeParameter: TypeParameter, typeAnnotation?: TSType): TSMappedType; export function TSMethodSignature(key: Expression, typeParameters?: TypeParameterDeclaration, parameters?: Array<Identifier | RestElement>, typeAnnotation?: TSTypeAnnotation): TSMethodSignature; export function TSModuleBlock(body: Statement[]): TSModuleBlock; export function TSModuleDeclaration(id: Identifier | StringLiteral, body: TSModuleBlock | TSModuleDeclaration): TSModuleDeclaration; export function TSNamespaceExportDeclaration(id: Identifier): TSNamespaceExportDeclaration; export function TSNeverKeyword(): TSNeverKeyword; export function TSNonNullExpression(expression: Expression): TSNonNullExpression; export function TSNullKeyword(): TSNullKeyword; export function TSNumberKeyword(): TSNumberKeyword; export function TSObjectKeyword(): TSObjectKeyword; export function TSParameterProperty(parameter: Identifier | AssignmentPattern): TSParameterProperty; export function TSParenthesizedType(typeAnnotation: TSType): TSParenthesizedType; export function TSPropertySignature(key: Expression, typeAnnotation?: TSTypeAnnotation, initializer?: Expression): TSPropertySignature; export function TSQualifiedName(left: TSEntityName, right: Identifier): TSQualifiedName; export function TSStringKeyword(): TSStringKeyword; export function TSSymbolKeyword(): TSSymbolKeyword; export function TSThisType(): TSThisType; export function TSTupleType(elementTypes: TSType[]): TSTupleType; export function TSTypeAliasDeclaration(id: Identifier, typeParameters: TypeParameterDeclaration | undefined | null, typeAnnotation: TSType): TSTypeAliasDeclaration; export function TSTypeAnnotation(typeAnnotation: TSType): TSTypeAnnotation; export function TSTypeAssertion(typeAnnotation: TSType, expression: Expression): TSTypeAssertion; export function TSTypeLiteral(members: TSTypeElement[]): TSTypeLiteral; export function TSTypeOperator(typeAnnotation: TSType): TSTypeOperator; export function TSTypeParameter(constraint?: TSType, default_?: TSType): TSTypeParameter; export function TSTypeParameterDeclaration(params: TSTypeParameter[]): TSTypeParameterDeclaration; export function TSTypeParameterInstantiation(params: TSType[]): TSTypeParameterInstantiation; export function TSTypePredicate(parameterName: Identifier | TSThisType, typeAnnotation: TSTypeAnnotation): TSTypePredicate; export function TSTypeQuery(exprName: TSEntityName): TSTypeQuery; export function TSTypeReference(typeName: TSEntityName, typeParameters?: TSTypeParameterInstantiation): TSTypeReference; export function TSUndefinedKeyword(): TSUndefinedKeyword; export function TSUnionType(types: TSType[]): TSUnionType; export function TSVoidKeyword(): TSVoidKeyword; export function isArrayExpression(node: object | null | undefined, opts?: object): node is ArrayExpression; export function isAssignmentExpression(node: object | null | undefined, opts?: object): node is AssignmentExpression; export function isBinaryExpression(node: object | null | undefined, opts?: object): node is BinaryExpression; export function isDirective(node: object | null | undefined, opts?: object): node is Directive; export function isDirectiveLiteral(node: object | null | undefined, opts?: object): node is DirectiveLiteral; export function isBlockStatement(node: object | null | undefined, opts?: object): node is BlockStatement; export function isBreakStatement(node: object | null | undefined, opts?: object): node is BreakStatement; export function isCallExpression(node: object | null | undefined, opts?: object): node is CallExpression; export function isCatchClause(node: object | null | undefined, opts?: object): node is CatchClause; export function isConditionalExpression(node: object | null | undefined, opts?: object): node is ConditionalExpression; export function isContinueStatement(node: object | null | undefined, opts?: object): node is ContinueStatement; export function isDebuggerStatement(node: object | null | undefined, opts?: object): node is DebuggerStatement; export function isDoWhileStatement(node: object | null | undefined, opts?: object): node is DoWhileStatement; export function isEmptyStatement(node: object | null | undefined, opts?: object): node is EmptyStatement; export function isExpressionStatement(node: object | null | undefined, opts?: object): node is ExpressionStatement; export function isFile(node: object | null | undefined, opts?: object): node is File; export function isForInStatement(node: object | null | undefined, opts?: object): node is ForInStatement; export function isForStatement(node: object | null | undefined, opts?: object): node is ForStatement; export function isFunctionDeclaration(node: object | null | undefined, opts?: object): node is FunctionDeclaration; export function isFunctionExpression(node: object | null | undefined, opts?: object): node is FunctionExpression; export function isIdentifier(node: object | null | undefined, opts?: object): node is Identifier; export function isIfStatement(node: object | null | undefined, opts?: object): node is IfStatement; export function isLabeledStatement(node: object | null | undefined, opts?: object): node is LabeledStatement; export function isStringLiteral(node: object | null | undefined, opts?: object): node is StringLiteral; export function isNumericLiteral(node: object | null | undefined, opts?: object): node is NumericLiteral; /** @deprecated Use `isNumericLiteral` */ export function isNumberLiteral(node: object | null | undefined, opts?: object): node is NumericLiteral; export function isNullLiteral(node: object | null | undefined, opts?: object): node is NullLiteral; export function isBooleanLiteral(node: object | null | undefined, opts?: object): node is BooleanLiteral; export function isRegExpLiteral(node: object | null | undefined, opts?: object): node is RegExpLiteral; /** @deprecated Use `isRegExpLiteral` */ export function isRegexLiteral(node: object | null | undefined, opts?: object): node is RegExpLiteral; export function isLogicalExpression(node: object | null | undefined, opts?: object): node is LogicalExpression; export function isMemberExpression(node: object | null | undefined, opts?: object): node is MemberExpression; export function isNewExpression(node: object | null | undefined, opts?: object): node is NewExpression; export function isProgram(node: object | null | undefined, opts?: object): node is Program; export function isObjectExpression(node: object | null | undefined, opts?: object): node is ObjectExpression; export function isObjectMethod(node: object | null | undefined, opts?: object): node is ObjectMethod; export function isObjectProperty(node: object | null | undefined, opts?: object): node is ObjectProperty; export function isRestElement(node: object | null | undefined, opts?: object): node is RestElement; export function isReturnStatement(node: object | null | undefined, opts?: object): node is ReturnStatement; export function isSequenceExpression(node: object | null | undefined, opts?: object): node is SequenceExpression; export function isSwitchCase(node: object | null | undefined, opts?: object): node is SwitchCase; export function isSwitchStatement(node: object | null | undefined, opts?: object): node is SwitchStatement; export function isThisExpression(node: object | null | undefined, opts?: object): node is ThisExpression; export function isThrowStatement(node: object | null | undefined, opts?: object): node is ThrowStatement; export function isTryStatement(node: object | null | undefined, opts?: object): node is TryStatement; export function isUnaryExpression(node: object | null | undefined, opts?: object): node is UnaryExpression; export function isUpdateExpression(node: object | null | undefined, opts?: object): node is UpdateExpression; export function isVariableDeclaration(node: object | null | undefined, opts?: object): node is VariableDeclaration; export function isVariableDeclarator(node: object | null | undefined, opts?: object): node is VariableDeclarator; export function isWhileStatement(node: object | null | undefined, opts?: object): node is WhileStatement; export function isWithStatement(node: object | null | undefined, opts?: object): node is WithStatement; export function isAssignmentPattern(node: object | null | undefined, opts?: object): node is AssignmentPattern; export function isArrayPattern(node: object | null | undefined, opts?: object): node is ArrayPattern; export function isArrowFunctionExpression(node: object | null | undefined, opts?: object): node is ArrowFunctionExpression; export function isClassBody(node: object | null | undefined, opts?: object): node is ClassBody; export function isClassDeclaration(node: object | null | undefined, opts?: object): node is ClassDeclaration; export function isClassExpression(node: object | null | undefined, opts?: object): node is ClassExpression; export function isExportAllDeclaration(node: object | null | undefined, opts?: object): node is ExportAllDeclaration; export function isExportDefaultDeclaration(node: object | null | undefined, opts?: object): node is ExportDefaultDeclaration; export function isExportNamedDeclaration(node: object | null | undefined, opts?: object): node is ExportNamedDeclaration; export function isExportSpecifier(node: object | null | undefined, opts?: object): node is ExportSpecifier; export function isForOfStatement(node: object | null | undefined, opts?: object): node is ForOfStatement; export function isImportDeclaration(node: object | null | undefined, opts?: object): node is ImportDeclaration; export function isImportDefaultSpecifier(node: object | null | undefined, opts?: object): node is ImportDefaultSpecifier; export function isImportNamespaceSpecifier(node: object | null | undefined, opts?: object): node is ImportNamespaceSpecifier; export function isImportSpecifier(node: object | null | undefined, opts?: object): node is ImportSpecifier; export function isMetaProperty(node: object | null | undefined, opts?: object): node is MetaProperty; export function isClassMethod(node: object | null | undefined, opts?: object): node is ClassMethod; export function isObjectPattern(node: object | null | undefined, opts?: object): node is ObjectPattern; export function isSpreadElement(node: object | null | undefined, opts?: object): node is SpreadElement; export function isSuper(node: object | null | undefined, opts?: object): node is Super; export function isTaggedTemplateExpression(node: object | null | undefined, opts?: object): node is TaggedTemplateExpression; export function isTemplateElement(node: object | null | undefined, opts?: object): node is TemplateElement; export function isTemplateLiteral(node: object | null | undefined, opts?: object): node is TemplateLiteral; export function isYieldExpression(node: object | null | undefined, opts?: object): node is YieldExpression; export function isAnyTypeAnnotation(node: object | null | undefined, opts?: object): node is AnyTypeAnnotation; export function isArrayTypeAnnotation(node: object | null | undefined, opts?: object): node is ArrayTypeAnnotation; export function isBooleanTypeAnnotation(node: object | null | undefined, opts?: object): node is BooleanTypeAnnotation; export function isBooleanLiteralTypeAnnotation(node: object | null | undefined, opts?: object): node is BooleanLiteralTypeAnnotation; export function isNullLiteralTypeAnnotation(node: object | null | undefined, opts?: object): node is NullLiteralTypeAnnotation; export function isClassImplements(node: object | null | undefined, opts?: object): node is ClassImplements; export function isClassProperty(node: object | null | undefined, opts?: object): node is ClassProperty; export function isDeclareClass(node: object | null | undefined, opts?: object): node is DeclareClass; export function isDeclareFunction(node: object | null | undefined, opts?: object): node is DeclareFunction; export function isDeclareInterface(node: object | null | undefined, opts?: object): node is DeclareInterface; export function isDeclareModule(node: object | null | undefined, opts?: object): node is DeclareModule; export function isDeclareTypeAlias(node: object | null | undefined, opts?: object): node is DeclareTypeAlias; export function isDeclareVariable(node: object | null | undefined, opts?: object): node is DeclareVariable; export function isExistentialTypeParam(node: object | null | undefined, opts?: object): node is ExistentialTypeParam; export function isFunctionTypeAnnotation(node: object | null | undefined, opts?: object): node is FunctionTypeAnnotation; export function isFunctionTypeParam(node: object | null | undefined, opts?: object): node is FunctionTypeParam; export function isGenericTypeAnnotation(node: object | null | undefined, opts?: object): node is GenericTypeAnnotation; export function isInterfaceExtends(node: object | null | undefined, opts?: object): node is InterfaceExtends; export function isInterfaceDeclaration(node: object | null | undefined, opts?: object): node is InterfaceDeclaration; export function isIntersectionTypeAnnotation(node: object | null | undefined, opts?: object): node is IntersectionTypeAnnotation; export function isMixedTypeAnnotation(node: object | null | undefined, opts?: object): node is MixedTypeAnnotation; export function isNullableTypeAnnotation(node: object | null | undefined, opts?: object): node is NullableTypeAnnotation; export function isNumericLiteralTypeAnnotation(node: object | null | undefined, opts?: object): node is NumericLiteralTypeAnnotation; export function isNumberTypeAnnotation(node: object | null | undefined, opts?: object): node is NumberTypeAnnotation; export function isStringLiteralTypeAnnotation(node: object | null | undefined, opts?: object): node is StringLiteralTypeAnnotation; export function isStringTypeAnnotation(node: object | null | undefined, opts?: object): node is StringTypeAnnotation; export function isThisTypeAnnotation(node: object | null | undefined, opts?: object): node is ThisTypeAnnotation; export function isTupleTypeAnnotation(node: object | null | undefined, opts?: object): node is TupleTypeAnnotation; export function isTypeofTypeAnnotation(node: object | null | undefined, opts?: object): node is TypeofTypeAnnotation; export function isTypeAlias(node: object | null | undefined, opts?: object): node is TypeAlias; export function isTypeAnnotation(node: object | null | undefined, opts?: object): node is TypeAnnotation; export function isTypeCastExpression(node: object | null | undefined, opts?: object): node is TypeCastExpression; export function isTypeParameter(node: object | null | undefined, opts?: object): node is TypeParameter; export function isTypeParameterDeclaration(node: object | null | undefined, opts?: object): node is TypeParameterDeclaration; export function isTypeParameterInstantiation(node: object | null | undefined, opts?: object): node is TypeParameterInstantiation; export function isObjectTypeAnnotation(node: object | null | undefined, opts?: object): node is ObjectTypeAnnotation; export function isObjectTypeCallProperty(node: object | null | undefined, opts?: object): node is ObjectTypeCallProperty; export function isObjectTypeIndexer(node: object | null | undefined, opts?: object): node is ObjectTypeIndexer; export function isObjectTypeProperty(node: object | null | undefined, opts?: object): node is ObjectTypeProperty; export function isQualifiedTypeIdentifier(node: object | null | undefined, opts?: object): node is QualifiedTypeIdentifier; export function isUnionTypeAnnotation(node: object | null | undefined, opts?: object): node is UnionTypeAnnotation; export function isVoidTypeAnnotation(node: object | null | undefined, opts?: object): node is VoidTypeAnnotation; export function isJSXAttribute(node: object | null | undefined, opts?: object): node is JSXAttribute; export function isJSXClosingElement(node: object | null | undefined, opts?: object): node is JSXClosingElement; export function isJSXElement(node: object | null | undefined, opts?: object): node is JSXElement; export function isJSXEmptyExpression(node: object | null | undefined, opts?: object): node is JSXEmptyExpression; export function isJSXExpressionContainer(node: object | null | undefined, opts?: object): node is JSXExpressionContainer; export function isJSXIdentifier(node: object | null | undefined, opts?: object): node is JSXIdentifier; export function isJSXMemberExpression(node: object | null | undefined, opts?: object): node is JSXMemberExpression; export function isJSXNamespacedName(node: object | null | undefined, opts?: object): node is JSXNamespacedName; export function isJSXOpeningElement(node: object | null | undefined, opts?: object): node is JSXOpeningElement; export function isJSXSpreadAttribute(node: object | null | undefined, opts?: object): node is JSXSpreadAttribute; export function isJSXText(node: object | null | undefined, opts?: object): node is JSXText; export function isNoop(node: object | null | undefined, opts?: object): node is Noop; export function isParenthesizedExpression(node: object | null | undefined, opts?: object): node is ParenthesizedExpression; export function isAwaitExpression(node: object | null | undefined, opts?: object): node is AwaitExpression; export function isBindExpression(node: object | null | undefined, opts?: object): node is BindExpression; export function isDecorator(node: object | null | undefined, opts?: object): node is Decorator; export function isDoExpression(node: object | null | undefined, opts?: object): node is DoExpression; export function isExportDefaultSpecifier(node: object | null | undefined, opts?: object): node is ExportDefaultSpecifier; export function isExportNamespaceSpecifier(node: object | null | undefined, opts?: object): node is ExportNamespaceSpecifier; export function isRestProperty(node: object | null | undefined, opts?: object): node is RestProperty; export function isSpreadProperty(node: object | null | undefined, opts?: object): node is SpreadProperty; export function isExpression(node: object | null | undefined, opts?: object): node is Expression; export function isBinary(node: object | null | undefined, opts?: object): node is Binary; export function isScopable(node: object | null | undefined, opts?: object): node is Scopable; export function isBlockParent(node: object | null | undefined, opts?: object): node is BlockParent; export function isBlock(node: object | null | undefined, opts?: object): node is Block; export function isStatement(node: object | null | undefined, opts?: object): node is Statement; export function isTerminatorless(node: object | null | undefined, opts?: object): node is Terminatorless; export function isCompletionStatement(node: object | null | undefined, opts?: object): node is CompletionStatement; export function isConditional(node: object | null | undefined, opts?: object): node is Conditional; export function isLoop(node: object | null | undefined, opts?: object): node is Loop; export function isWhile(node: object | null | undefined, opts?: object): node is While; export function isExpressionWrapper(node: object | null | undefined, opts?: object): node is ExpressionWrapper; export function isFor(node: object | null | undefined, opts?: object): node is For; export function isForXStatement(node: object | null | undefined, opts?: object): node is ForXStatement; // tslint:disable-next-line ban-types export function isFunction(node: object | null | undefined, opts?: object): node is Function; export function isFunctionParent(node: object | null | undefined, opts?: object): node is FunctionParent; export function isPureish(node: object | null | undefined, opts?: object): node is Pureish; export function isDeclaration(node: object | null | undefined, opts?: object): node is Declaration; export function isLVal(node: object | null | undefined, opts?: object): node is LVal; export function isLiteral(node: object | null | undefined, opts?: object): node is Literal; export function isImmutable(node: object | null | undefined, opts?: object): node is Immutable; export function isUserWhitespacable(node: object | null | undefined, opts?: object): node is UserWhitespacable; export function isMethod(node: object | null | undefined, opts?: object): node is Method; export function isObjectMember(node: object | null | undefined, opts?: object): node is ObjectMember; export function isProperty(node: object | null | undefined, opts?: object): node is Property; export function isUnaryLike(node: object | null | undefined, opts?: object): node is UnaryLike; export function isPattern(node: object | null | undefined, opts?: object): node is Pattern; export function isClass(node: object | null | undefined, opts?: object): node is Class; export function isModuleDeclaration(node: object | null | undefined, opts?: object): node is ModuleDeclaration; export function isExportDeclaration(node: object | null | undefined, opts?: object): node is ExportDeclaration; export function isModuleSpecifier(node: object | null | undefined, opts?: object): node is ModuleSpecifier; export function isFlow(node: object | null | undefined, opts?: object): node is Flow; export function isFlowBaseAnnotation(node: object | null | undefined, opts?: object): node is FlowBaseAnnotation; export function isFlowDeclaration(node: object | null | undefined, opts?: object): node is FlowDeclaration; export function isJSX(node: object | null | undefined, opts?: object): node is JSX; export function isReferencedIdentifier(node: object | null | undefined, opts?: object): node is Identifier | JSXIdentifier; export function isReferencedMemberExpression(node: object | null | undefined, opts?: object): node is MemberExpression; export function isBindingIdentifier(node: object | null | undefined, opts?: object): node is Identifier; export function isScope(node: object | null | undefined, opts?: object): node is Scopable; export function isReferenced(node: object | null | undefined, opts?: object): boolean; export function isBlockScoped(node: object | null | undefined, opts?: object): node is FunctionDeclaration | ClassDeclaration | VariableDeclaration; export function isVar(node: object | null | undefined, opts?: object): node is VariableDeclaration; export function isUser(node: object | null | undefined, opts?: object): boolean; export function isGenerated(node: object | null | undefined, opts?: object): boolean; export function isPure(node: object | null | undefined, opts?: object): boolean; export function isTSAnyKeyword(node: object | null | undefined, opts?: object): node is TSAnyKeyword; export function isTSArrayType(node: object | null | undefined, opts?: object): node is TSArrayType; export function isTSAsExpression(node: object | null | undefined, opts?: object): node is TSAsExpression; export function isTSBooleanKeyword(node: object | null | undefined, opts?: object): node is TSBooleanKeyword; export function isTSCallSignatureDeclaration(node: object | null | undefined, opts?: object): node is TSCallSignatureDeclaration; export function isTSConstructSignatureDeclaration(node: object | null | undefined, opts?: object): node is TSTypeElement; export function isTSConstructorType(node: object | null | undefined, opts?: object): node is TSConstructorType; export function isTSDeclareFunction(node: object | null | undefined, opts?: object): node is TSDeclareFunction; export function isTSDeclareMethod(node: object | null | undefined, opts?: object): node is TSDeclareMethod; export function isTSEnumDeclaration(node: object | null | undefined, opts?: object): node is TSEnumDeclaration; export function isTSEnumMember(node: object | null | undefined, opts?: object): node is TSEnumMember; export function isTSExportAssignment(node: object | null | undefined, opts?: object): node is TSExportAssignment; export function isTSExpressionWithTypeArguments(node: object | null | undefined, opts?: object): node is TSExpressionWithTypeArguments; export function isTSExternalModuleReference(node: object | null | undefined, opts?: object): node is TSExternalModuleReference; export function isTSFunctionType(node: object | null | undefined, opts?: object): node is TSFunctionType; export function isTSImportEqualsDeclaration(node: object | null | undefined, opts?: object): node is TSImportEqualsDeclaration; export function isTSIndexSignature(node: object | null | undefined, opts?: object): node is TSIndexSignature; export function isTSIndexedAccessType(node: object | null | undefined, opts?: object): node is TSIndexedAccessType; export function isTSInterfaceBody(node: object | null | undefined, opts?: object): node is TSInterfaceBody; export function isTSInterfaceDeclaration(node: object | null | undefined, opts?: object): node is TSInterfaceDeclaration; export function isTSIntersectionType(node: object | null | undefined, opts?: object): node is TSIntersectionType; export function isTSLiteralType(node: object | null | undefined, opts?: object): node is TSLiteralType; export function isTSMappedType(node: object | null | undefined, opts?: object): node is TSMappedType; export function isTSMethodSignature(node: object | null | undefined, opts?: object): node is TSMethodSignature; export function isTSModuleBlock(node: object | null | undefined, opts?: object): node is TSModuleBlock; export function isTSModuleDeclaration(node: object | null | undefined, opts?: object): node is TSModuleDeclaration; export function isTSNamespaceExportDeclaration(node: object | null | undefined, opts?: object): node is TSNamespaceExportDeclaration; export function isTSNeverKeyword(node: object | null | undefined, opts?: object): node is TSNeverKeyword; export function isTSNonNullExpression(node: object | null | undefined, opts?: object): node is TSNonNullExpression; export function isTSNullKeyword(node: object | null | undefined, opts?: object): node is TSNullKeyword; export function isTSNumberKeyword(node: object | null | undefined, opts?: object): node is TSNumberKeyword; export function isTSObjectKeyword(node: object | null | undefined, opts?: object): node is TSObjectKeyword; export function isTSParameterProperty(node: object | null | undefined, opts?: object): node is TSParameterProperty; export function isTSParenthesizedType(node: object | null | undefined, opts?: object): node is TSParenthesizedType; export function isTSPropertySignature(node: object | null | undefined, opts?: object): node is TSPropertySignature; export function isTSQualifiedName(node: object | null | undefined, opts?: object): node is TSQualifiedName; export function isTSStringKeyword(node: object | null | undefined, opts?: object): node is TSStringKeyword; export function isTSSymbolKeyword(node: object | null | undefined, opts?: object): node is TSSymbolKeyword; export function isTSThisType(node: object | null | undefined, opts?: object): node is TSThisType; export function isTSTupleType(node: object | null | undefined, opts?: object): node is TSTupleType; export function isTSTypeAliasDeclaration(node: object | null | undefined, opts?: object): node is TSTypeAliasDeclaration; export function isTSTypeAnnotation(node: object | null | undefined, opts?: object): node is TSTypeAnnotation; export function isTSTypeAssertion(node: object | null | undefined, opts?: object): node is TSTypeAssertion; export function isTSTypeLiteral(node: object | null | undefined, opts?: object): node is TSTypeLiteral; export function isTSTypeOperator(node: object | null | undefined, opts?: object): node is TSTypeOperator; export function isTSTypeParameter(node: object | null | undefined, opts?: object): node is TSTypeParameter; export function isTSTypeParameterDeclaration(node: object | null | undefined, opts?: object): node is TSTypeParameterDeclaration; export function isTSTypeParameterInstantiation(node: object | null | undefined, opts?: object): node is TSTypeParameterInstantiation; export function isTSTypePredicate(node: object | null | undefined, opts?: object): node is TSTypePredicate; export function isTSTypeQuery(node: object | null | undefined, opts?: object): node is TSTypeQuery; export function isTSTypeReference(node: object | null | undefined, opts?: object): node is TSTypeReference; export function isTSUndefinedKeyword(node: object | null | undefined, opts?: object): node is TSUndefinedKeyword; export function isTSUnionType(node: object | null | undefined, opts?: object): node is TSUnionType; export function isTSVoidKeyword(node: object | null | undefined, opts?: object): node is TSVoidKeyword; // React specific export interface ReactHelpers { isCompatTag(tagName?: string): boolean; buildChildren(node: object): Node[]; } export const react: ReactHelpers; export function assertArrayExpression(node: object | null | undefined, opts?: object): asserts node is ArrayExpression; export function assertAssignmentExpression(node: object | null | undefined, opts?: object): asserts node is AssignmentExpression; export function assertBinaryExpression(node: object | null | undefined, opts?: object): asserts node is BinaryExpression; export function assertDirective(node: object | null | undefined, opts?: object): asserts node is Directive; export function assertDirectiveLiteral(node: object | null | undefined, opts?: object): asserts node is DirectiveLiteral; export function assertBlockStatement(node: object | null | undefined, opts?: object): asserts node is BlockStatement; export function assertBreakStatement(node: object | null | undefined, opts?: object): asserts node is BreakStatement; export function assertCallExpression(node: object | null | undefined, opts?: object): asserts node is CallExpression; export function assertCatchClause(node: object | null | undefined, opts?: object): asserts node is CatchClause; export function assertConditionalExpression(node: object | null | undefined, opts?: object): asserts node is ConditionalExpression; export function assertContinueStatement(node: object | null | undefined, opts?: object): asserts node is ContinueStatement; export function assertDebuggerStatement(node: object | null | undefined, opts?: object): asserts node is DebuggerStatement; export function assertDoWhileStatement(node: object | null | undefined, opts?: object): asserts node is DoWhileStatement; export function assertEmptyStatement(node: object | null | undefined, opts?: object): asserts node is EmptyStatement; export function assertExpressionStatement(node: object | null | undefined, opts?: object): asserts node is ExpressionStatement; export function assertFile(node: object | null | undefined, opts?: object): asserts node is File; export function assertForInStatement(node: object | null | undefined, opts?: object): asserts node is ForInStatement; export function assertForStatement(node: object | null | undefined, opts?: object): asserts node is ForStatement; export function assertFunctionDeclaration(node: object | null | undefined, opts?: object): asserts node is FunctionDeclaration; export function assertFunctionExpression(node: object | null | undefined, opts?: object): asserts node is FunctionExpression; export function assertIdentifier(node: object | null | undefined, opts?: object): asserts node is Identifier; export function assertIfStatement(node: object | null | undefined, opts?: object): asserts node is IfStatement; export function assertLabeledStatement(node: object | null | undefined, opts?: object): asserts node is LabeledStatement; export function assertStringLiteral(node: object | null | undefined, opts?: object): asserts node is StringLiteral; export function assertNumericLiteral(node: object | null | undefined, opts?: object): asserts node is NumericLiteral; /** @deprecated Use `assertNumericLiteral` */ export function assertNumberLiteral(node: object | null | undefined, opts?: object): asserts node is NumericLiteral; export function assertNullLiteral(node: object | null | undefined, opts?: object): asserts node is NullLiteral; export function assertBooleanLiteral(node: object | null | undefined, opts?: object): asserts node is BooleanLiteral; export function assertRegExpLiteral(node: object | null | undefined, opts?: object): asserts node is RegExpLiteral; /** @deprecated Use `assertRegExpLiteral` */ export function assertRegexLiteral(node: object | null | undefined, opts?: object): asserts node is RegExpLiteral; export function assertLogicalExpression(node: object | null | undefined, opts?: object): asserts node is LogicalExpression; export function assertMemberExpression(node: object | null | undefined, opts?: object): asserts node is MemberExpression; export function assertNewExpression(node: object | null | undefined, opts?: object): asserts node is NewExpression; export function assertProgram(node: object | null | undefined, opts?: object): asserts node is Program; export function assertObjectExpression(node: object | null | undefined, opts?: object): asserts node is ObjectExpression; export function assertObjectMethod(node: object | null | undefined, opts?: object): asserts node is ObjectMethod; export function assertObjectProperty(node: object | null | undefined, opts?: object): asserts node is ObjectProperty; export function assertRestElement(node: object | null | undefined, opts?: object): asserts node is RestElement; export function assertReturnStatement(node: object | null | undefined, opts?: object): asserts node is ReturnStatement; export function assertSequenceExpression(node: object | null | undefined, opts?: object): asserts node is SequenceExpression; export function assertSwitchCase(node: object | null | undefined, opts?: object): asserts node is SwitchCase; export function assertSwitchStatement(node: object | null | undefined, opts?: object): asserts node is SwitchStatement; export function assertThisExpression(node: object | null | undefined, opts?: object): asserts node is ThisExpression; export function assertThrowStatement(node: object | null | undefined, opts?: object): asserts node is ThrowStatement; export function assertTryStatement(node: object | null | undefined, opts?: object): asserts node is TryStatement; export function assertUnaryExpression(node: object | null | undefined, opts?: object): asserts node is UnaryExpression; export function assertUpdateExpression(node: object | null | undefined, opts?: object): asserts node is UpdateExpression; export function assertVariableDeclaration(node: object | null | undefined, opts?: object): asserts node is VariableDeclaration; export function assertVariableDeclarator(node: object | null | undefined, opts?: object): asserts node is VariableDeclarator; export function assertWhileStatement(node: object | null | undefined, opts?: object): asserts node is WhileStatement; export function assertWithStatement(node: object | null | undefined, opts?: object): asserts node is WithStatement; export function assertAssignmentPattern(node: object | null | undefined, opts?: object): asserts node is AssignmentPattern; export function assertArrayPattern(node: object | null | undefined, opts?: object): asserts node is ArrayPattern; export function assertArrowFunctionExpression(node: object | null | undefined, opts?: object): asserts node is ArrowFunctionExpression; export function assertClassBody(node: object | null | undefined, opts?: object): asserts node is ClassBody; export function assertClassDeclaration(node: object | null | undefined, opts?: object): asserts node is ClassDeclaration; export function assertClassExpression(node: object | null | undefined, opts?: object): asserts node is ClassExpression; export function assertExportAllDeclaration(node: object | null | undefined, opts?: object): asserts node is ExportAllDeclaration; export function assertExportDefaultDeclaration(node: object | null | undefined, opts?: object): asserts node is ExportDefaultDeclaration; export function assertExportNamedDeclaration(node: object | null | undefined, opts?: object): asserts node is ExportNamedDeclaration; export function assertExportSpecifier(node: object | null | undefined, opts?: object): asserts node is ExportSpecifier; export function assertForOfStatement(node: object | null | undefined, opts?: object): asserts node is ForOfStatement; export function assertImportDeclaration(node: object | null | undefined, opts?: object): asserts node is ImportDeclaration; export function assertImportDefaultSpecifier(node: object | null | undefined, opts?: object): asserts node is ImportDefaultSpecifier; export function assertImportNamespaceSpecifier(node: object | null | undefined, opts?: object): asserts node is ImportNamespaceSpecifier; export function assertImportSpecifier(node: object | null | undefined, opts?: object): asserts node is ImportSpecifier; export function assertMetaProperty(node: object | null | undefined, opts?: object): asserts node is MetaProperty; export function assertClassMethod(node: object | null | undefined, opts?: object): asserts node is ClassMethod; export function assertObjectPattern(node: object | null | undefined, opts?: object): asserts node is ObjectPattern; export function assertSpreadElement(node: object | null | undefined, opts?: object): asserts node is SpreadElement; export function assertSuper(node: object | null | undefined, opts?: object): asserts node is Super; export function assertTaggedTemplateExpression(node: object | null | undefined, opts?: object): asserts node is TaggedTemplateExpression; export function assertTemplateElement(node: object | null | undefined, opts?: object): asserts node is TemplateElement; export function assertTemplateLiteral(node: object | null | undefined, opts?: object): asserts node is TemplateLiteral; export function assertYieldExpression(node: object | null | undefined, opts?: object): asserts node is YieldExpression; export function assertAnyTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is AnyTypeAnnotation; export function assertArrayTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is ArrayTypeAnnotation; export function assertBooleanTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is BooleanTypeAnnotation; export function assertBooleanLiteralTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is BooleanLiteralTypeAnnotation; export function assertNullLiteralTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is NullLiteralTypeAnnotation; export function assertClassImplements(node: object | null | undefined, opts?: object): asserts node is ClassImplements; export function assertClassProperty(node: object | null | undefined, opts?: object): asserts node is ClassProperty; export function assertDeclareClass(node: object | null | undefined, opts?: object): asserts node is DeclareClass; export function assertDeclareFunction(node: object | null | undefined, opts?: object): asserts node is DeclareFunction; export function assertDeclareInterface(node: object | null | undefined, opts?: object): asserts node is DeclareInterface; export function assertDeclareModule(node: object | null | undefined, opts?: object): asserts node is DeclareModule; export function assertDeclareTypeAlias(node: object | null | undefined, opts?: object): asserts node is DeclareTypeAlias; export function assertDeclareVariable(node: object | null | undefined, opts?: object): asserts node is DeclareVariable; export function assertExistentialTypeParam(node: object | null | undefined, opts?: object): asserts node is ExistentialTypeParam; export function assertFunctionTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is FunctionTypeAnnotation; export function assertFunctionTypeParam(node: object | null | undefined, opts?: object): asserts node is FunctionTypeParam; export function assertGenericTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is GenericTypeAnnotation; export function assertInterfaceExtends(node: object | null | undefined, opts?: object): asserts node is InterfaceExtends; export function assertInterfaceDeclaration(node: object | null | undefined, opts?: object): asserts node is InterfaceDeclaration; export function assertIntersectionTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is IntersectionTypeAnnotation; export function assertMixedTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is MixedTypeAnnotation; export function assertNullableTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is NullableTypeAnnotation; export function assertNumericLiteralTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is NumericLiteralTypeAnnotation; export function assertNumberTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is NumberTypeAnnotation; export function assertStringLiteralTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is StringLiteralTypeAnnotation; export function assertStringTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is StringTypeAnnotation; export function assertThisTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is ThisTypeAnnotation; export function assertTupleTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is TupleTypeAnnotation; export function assertTypeofTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is TypeofTypeAnnotation; export function assertTypeAlias(node: object | null | undefined, opts?: object): asserts node is TypeAlias; export function assertTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is TypeAnnotation; export function assertTypeCastExpression(node: object | null | undefined, opts?: object): asserts node is TypeCastExpression; export function assertTypeParameter(node: object | null | undefined, opts?: object): asserts node is TypeParameter; export function assertTypeParameterDeclaration(node: object | null | undefined, opts?: object): asserts node is TypeParameterDeclaration; export function assertTypeParameterInstantiation(node: object | null | undefined, opts?: object): asserts node is TypeParameterInstantiation; export function assertObjectTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is ObjectTypeAnnotation; export function assertObjectTypeCallProperty(node: object | null | undefined, opts?: object): asserts node is ObjectTypeCallProperty; export function assertObjectTypeIndexer(node: object | null | undefined, opts?: object): asserts node is ObjectTypeIndexer; export function assertObjectTypeProperty(node: object | null | undefined, opts?: object): asserts node is ObjectTypeProperty; export function assertQualifiedTypeIdentifier(node: object | null | undefined, opts?: object): asserts node is QualifiedTypeIdentifier; export function assertUnionTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is UnionTypeAnnotation; export function assertVoidTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is VoidTypeAnnotation; export function assertJSXAttribute(node: object | null | undefined, opts?: object): asserts node is JSXAttribute; export function assertJSXClosingElement(node: object | null | undefined, opts?: object): asserts node is JSXClosingElement; export function assertJSXElement(node: object | null | undefined, opts?: object): asserts node is JSXElement; export function assertJSXEmptyExpression(node: object | null | undefined, opts?: object): asserts node is JSXEmptyExpression; export function assertJSXExpressionContainer(node: object | null | undefined, opts?: object): asserts node is JSXExpressionContainer; export function assertJSXIdentifier(node: object | null | undefined, opts?: object): asserts node is JSXIdentifier; export function assertJSXMemberExpression(node: object | null | undefined, opts?: object): asserts node is JSXMemberExpression; export function assertJSXNamespacedName(node: object | null | undefined, opts?: object): asserts node is JSXNamespacedName; export function assertJSXOpeningElement(node: object | null | undefined, opts?: object): asserts node is JSXOpeningElement; export function assertJSXSpreadAttribute(node: object | null | undefined, opts?: object): asserts node is JSXSpreadAttribute; export function assertJSXText(node: object | null | undefined, opts?: object): asserts node is JSXText; export function assertNoop(node: object | null | undefined, opts?: object): asserts node is Noop; export function assertParenthesizedExpression(node: object | null | undefined, opts?: object): asserts node is ParenthesizedExpression; export function assertAwaitExpression(node: object | null | undefined, opts?: object): asserts node is AwaitExpression; export function assertBindExpression(node: object | null | undefined, opts?: object): asserts node is BindExpression; export function assertDecorator(node: object | null | undefined, opts?: object): asserts node is Decorator; export function assertDoExpression(node: object | null | undefined, opts?: object): asserts node is DoExpression; export function assertExportDefaultSpecifier(node: object | null | undefined, opts?: object): asserts node is ExportDefaultSpecifier; export function assertExportNamespaceSpecifier(node: object | null | undefined, opts?: object): asserts node is ExportNamespaceSpecifier; export function assertRestProperty(node: object | null | undefined, opts?: object): asserts node is RestProperty; export function assertSpreadProperty(node: object | null | undefined, opts?: object): asserts node is SpreadProperty; export function assertExpression(node: object | null | undefined, opts?: object): asserts node is Expression; export function assertBinary(node: object | null | undefined, opts?: object): asserts node is Binary; export function assertScopable(node: object | null | undefined, opts?: object): asserts node is Scopable; export function assertBlockParent(node: object | null | undefined, opts?: object): asserts node is BlockParent; export function assertBlock(node: object | null | undefined, opts?: object): asserts node is Block; export function assertStatement(node: object | null | undefined, opts?: object): asserts node is Statement; export function assertTerminatorless(node: object | null | undefined, opts?: object): asserts node is Terminatorless; export function assertCompletionStatement(node: object | null | undefined, opts?: object): asserts node is CompletionStatement; export function assertConditional(node: object | null | undefined, opts?: object): asserts node is Conditional; export function assertLoop(node: object | null | undefined, opts?: object): asserts node is Loop; export function assertWhile(node: object | null | undefined, opts?: object): asserts node is While; export function assertExpressionWrapper(node: object | null | undefined, opts?: object): asserts node is ExpressionWrapper; export function assertFor(node: object | null | undefined, opts?: object): asserts node is For; export function assertForXStatement(node: object | null | undefined, opts?: object): asserts node is ForXStatement; // tslint:disable-next-line ban-types export function assertFunction(node: object | null | undefined, opts?: object): asserts node is Function; export function assertFunctionParent(node: object | null | undefined, opts?: object): asserts node is FunctionParent; export function assertPureish(node: object | null | undefined, opts?: object): asserts node is Pureish; export function assertDeclaration(node: object | null | undefined, opts?: object): asserts node is Declaration; export function assertLVal(node: object | null | undefined, opts?: object): asserts node is LVal; export function assertLiteral(node: object | null | undefined, opts?: object): asserts node is Literal; export function assertImmutable(node: object | null | undefined, opts?: object): asserts node is Immutable; export function assertUserWhitespacable(node: object | null | undefined, opts?: object): asserts node is UserWhitespacable; export function assertMethod(node: object | null | undefined, opts?: object): asserts node is Method; export function assertObjectMember(node: object | null | undefined, opts?: object): asserts node is ObjectMember; export function assertProperty(node: object | null | undefined, opts?: object): asserts node is Property; export function assertUnaryLike(node: object | null | undefined, opts?: object): asserts node is UnaryLike; export function assertPattern(node: object | null | undefined, opts?: object): asserts node is Pattern; export function assertClass(node: object | null | undefined, opts?: object): asserts node is Class; export function assertModuleDeclaration(node: object | null | undefined, opts?: object): asserts node is ModuleDeclaration; export function assertExportDeclaration(node: object | null | undefined, opts?: object): asserts node is ExportDeclaration; export function assertModuleSpecifier(node: object | null | undefined, opts?: object): asserts node is ModuleSpecifier; export function assertFlow(node: object | null | undefined, opts?: object): asserts node is Flow; export function assertFlowBaseAnnotation(node: object | null | undefined, opts?: object): asserts node is FlowBaseAnnotation; export function assertFlowDeclaration(node: object | null | undefined, opts?: object): asserts node is FlowDeclaration; export function assertJSX(node: object | null | undefined, opts?: object): asserts node is JSX; export function assertTSAnyKeyword(node: object | null | undefined, opts?: object): asserts node is TSAnyKeyword; export function assertTSArrayType(node: object | null | undefined, opts?: object): asserts node is TSArrayType; export function assertTSAsExpression(node: object | null | undefined, opts?: object): asserts node is TSAsExpression; export function assertTSBooleanKeyword(node: object | null | undefined, opts?: object): asserts node is TSBooleanKeyword; export function assertTSCallSignatureDeclaration(node: object | null | undefined, opts?: object): asserts node is TSCallSignatureDeclaration; export function assertTSConstructSignatureDeclaration(node: object | null | undefined, opts?: object): asserts node is TSConstructSignatureDeclaration; export function assertTSConstructorType(node: object | null | undefined, opts?: object): asserts node is TSConstructorType; export function assertTSDeclareFunction(node: object | null | undefined, opts?: object): asserts node is TSDeclareFunction; export function assertTSDeclareMethod(node: object | null | undefined, opts?: object): asserts node is TSDeclareMethod; export function assertTSEnumDeclaration(node: object | null | undefined, opts?: object): asserts node is TSEnumDeclaration; export function assertTSEnumMember(node: object | null | undefined, opts?: object): asserts node is TSEnumMember; export function assertTSExportAssignment(node: object | null | undefined, opts?: object): asserts node is TSExportAssignment; export function assertTSExpressionWithTypeArguments(node: object | null | undefined, opts?: object): asserts node is TSExpressionWithTypeArguments; export function assertTSExternalModuleReference(node: object | null | undefined, opts?: object): asserts node is TSExternalModuleReference; export function assertTSFunctionType(node: object | null | undefined, opts?: object): asserts node is TSFunctionType; export function assertTSImportEqualsDeclaration(node: object | null | undefined, opts?: object): asserts node is TSImportEqualsDeclaration; export function assertTSIndexSignature(node: object | null | undefined, opts?: object): asserts node is TSIndexSignature; export function assertTSIndexedAccessType(node: object | null | undefined, opts?: object): asserts node is TSIndexedAccessType; export function assertTSInterfaceBody(node: object | null | undefined, opts?: object): asserts node is TSInterfaceBody; export function assertTSInterfaceDeclaration(node: object | null | undefined, opts?: object): asserts node is TSInterfaceDeclaration; export function assertTSIntersectionType(node: object | null | undefined, opts?: object): asserts node is TSIntersectionType; export function assertTSLiteralType(node: object | null | undefined, opts?: object): asserts node is TSLiteralType; export function assertTSMappedType(node: object | null | undefined, opts?: object): asserts node is TSMappedType; export function assertTSMethodSignature(node: object | null | undefined, opts?: object): asserts node is TSMethodSignature; export function assertTSModuleBlock(node: object | null | undefined, opts?: object): asserts node is TSModuleBlock; export function assertTSModuleDeclaration(node: object | null | undefined, opts?: object): asserts node is TSModuleDeclaration; export function assertTSNamespaceExportDeclaration(node: object | null | undefined, opts?: object): asserts node is TSNamespaceExportDeclaration; export function assertTSNeverKeyword(node: object | null | undefined, opts?: object): asserts node is TSNeverKeyword; export function assertTSNonNullExpression(node: object | null | undefined, opts?: object): asserts node is TSNonNullExpression; export function assertTSNullKeyword(node: object | null | undefined, opts?: object): asserts node is TSNullKeyword; export function assertTSNumberKeyword(node: object | null | undefined, opts?: object): asserts node is TSNumberKeyword; export function assertTSObjectKeyword(node: object | null | undefined, opts?: object): asserts node is TSObjectKeyword; export function assertTSParameterProperty(node: object | null | undefined, opts?: object): asserts node is TSParameterProperty; export function assertTSParenthesizedType(node: object | null | undefined, opts?: object): asserts node is TSParenthesizedType; export function assertTSPropertySignature(node: object | null | undefined, opts?: object): asserts node is TSPropertySignature; export function assertTSQualifiedName(node: object | null | undefined, opts?: object): asserts node is TSQualifiedName; export function assertTSStringKeyword(node: object | null | undefined, opts?: object): asserts node is TSStringKeyword; export function assertTSSymbolKeyword(node: object | null | undefined, opts?: object): asserts node is TSSymbolKeyword; export function assertTSThisType(node: object | null | undefined, opts?: object): asserts node is TSThisType; export function assertTSTupleType(node: object | null | undefined, opts?: object): asserts node is TSTupleType; export function assertTSTypeAliasDeclaration(node: object | null | undefined, opts?: object): asserts node is TSTypeAliasDeclaration; export function assertTSTypeAnnotation(node: object | null | undefined, opts?: object): asserts node is TSTypeAnnotation; export function assertTSTypeAssertion(node: object | null | undefined, opts?: object): asserts node is TSTypeAssertion; export function assertTSTypeLiteral(node: object | null | undefined, opts?: object): asserts node is TSTypeLiteral; export function assertTSTypeOperator(node: object | null | undefined, opts?: object): asserts node is TSTypeOperator; export function assertTSTypeParameter(node: object | null | undefined, opts?: object): asserts node is TSTypeParameter; export function assertTSTypeParameterDeclaration(node: object | null | undefined, opts?: object): asserts node is TSTypeParameterDeclaration; export function assertTSTypeParameterInstantiation(node: object | null | undefined, opts?: object): asserts node is TSTypeParameterInstantiation; export function assertTSTypePredicate(node: object | null | undefined, opts?: object): asserts node is TSTypePredicate; export function assertTSTypeQuery(node: object | null | undefined, opts?: object): asserts node is TSTypeQuery; export function assertTSTypeReference(node: object | null | undefined, opts?: object): asserts node is TSTypeReference; export function assertTSUndefinedKeyword(node: object | null | undefined, opts?: object): asserts node is TSUndefinedKeyword; export function assertTSUnionType(node: object | null | undefined, opts?: object): asserts node is TSUnionType; export function assertTSVoidKeyword(node: object | null | undefined, opts?: object): asserts node is TSVoidKeyword;
Simpan