|
|
2 주 전 | |
|---|---|---|
| .. | ||
| lib | 2 주 전 | |
| scripts | 2 주 전 | |
| README.md | 2 주 전 | |
| package.json | 2 주 전 | |
This module contains methods for building ASTs manually and for checking the types of AST nodes.
npm install --save-dev @babel/types
t.anyTypeAnnotation()
See also t.isAnyTypeAnnotation(node, opts) and t.assertAnyTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.arrayExpression(elements)
See also t.isArrayExpression(node, opts) and t.assertArrayExpression(node, opts).
Aliases: Expression
elements: Array<null | Expression | SpreadElement> (default: [])t.arrayPattern(elements)
See also t.isArrayPattern(node, opts) and t.assertArrayPattern(node, opts).
Aliases: Pattern, PatternLike, LVal
elements: Array<PatternLike> (required)decorators: Array<Decorator> (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)t.arrayTypeAnnotation(elementType)
See also t.isArrayTypeAnnotation(node, opts) and t.assertArrayTypeAnnotation(node, opts).
Aliases: Flow, FlowType
elementType: FlowType (required)t.arrowFunctionExpression(params, body, async)
See also t.isArrowFunctionExpression(node, opts) and t.assertArrowFunctionExpression(node, opts).
Aliases: Scopable, Function, BlockParent, FunctionParent, Expression, Pureish
params: Array<LVal> (required)body: BlockStatement | Expression (required)async: boolean (default: false)expression: boolean (default: null)generator: boolean (default: false)returnType: TypeAnnotation | TSTypeAnnotation | Noop (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.assignmentExpression(operator, left, right)
See also t.isAssignmentExpression(node, opts) and t.assertAssignmentExpression(node, opts).
Aliases: Expression
operator: string (required)left: LVal (required)right: Expression (required)t.assignmentPattern(left, right)
See also t.isAssignmentPattern(node, opts) and t.assertAssignmentPattern(node, opts).
Aliases: Pattern, PatternLike, LVal
left: Identifier | ObjectPattern | ArrayPattern (required)right: Expression (required)decorators: Array<Decorator> (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)t.awaitExpression(argument)
See also t.isAwaitExpression(node, opts) and t.assertAwaitExpression(node, opts).
Aliases: Expression, Terminatorless
argument: Expression (required)t.binaryExpression(operator, left, right)
See also t.isBinaryExpression(node, opts) and t.assertBinaryExpression(node, opts).
Aliases: Binary, Expression
operator: "+" | "-" | "/" | "%" | "*" | "**" | "&" | "|" | ">>" | ">>>" | "<<" | "^" | "==" | "===" | "!=" | "!==" | "in" | "instanceof" | ">" | "<" | ">=" | "<=" (required)left: Expression (required)right: Expression (required)t.bindExpression(object, callee)
See also t.isBindExpression(node, opts) and t.assertBindExpression(node, opts).
Aliases: Expression
object (required)callee (required)t.blockStatement(body, directives)
See also t.isBlockStatement(node, opts) and t.assertBlockStatement(node, opts).
Aliases: Scopable, BlockParent, Block, Statement
body: Array<Statement> (required)directives: Array<Directive> (default: [])t.booleanLiteral(value)
See also t.isBooleanLiteral(node, opts) and t.assertBooleanLiteral(node, opts).
Aliases: Expression, Pureish, Literal, Immutable
value: boolean (required)t.booleanLiteralTypeAnnotation()
See also t.isBooleanLiteralTypeAnnotation(node, opts) and t.assertBooleanLiteralTypeAnnotation(node, opts).
Aliases: Flow, FlowType
value: boolean (default: null)t.booleanTypeAnnotation()
See also t.isBooleanTypeAnnotation(node, opts) and t.assertBooleanTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.breakStatement(label)
See also t.isBreakStatement(node, opts) and t.assertBreakStatement(node, opts).
Aliases: Statement, Terminatorless, CompletionStatement
label: Identifier (default: null)t.callExpression(callee, arguments)
See also t.isCallExpression(node, opts) and t.assertCallExpression(node, opts).
Aliases: Expression
callee: Expression (required)arguments: Array<Expression | SpreadElement | JSXNamespacedName> (required)optional: true | false (default: null)typeParameters: TypeParameterInstantiation | TSTypeParameterInstantiation (default: null)t.catchClause(param, body)
See also t.isCatchClause(node, opts) and t.assertCatchClause(node, opts).
Aliases: Scopable, BlockParent
param: Identifier (default: null)body: BlockStatement (required)t.classBody(body)
See also t.isClassBody(node, opts) and t.assertClassBody(node, opts).
body: Array<ClassMethod | ClassProperty | TSDeclareMethod | TSIndexSignature> (required)t.classDeclaration(id, superClass, body, decorators)
See also t.isClassDeclaration(node, opts) and t.assertClassDeclaration(node, opts).
Aliases: Scopable, Class, Statement, Declaration, Pureish
id: Identifier (default: null)superClass: Expression (default: null)body: ClassBody (required)decorators: Array<Decorator> (default: null)abstract: boolean (default: null)declare: boolean (default: null)implements: Array<TSExpressionWithTypeArguments | ClassImplements> (default: null)mixins (default: null)superTypeParameters: TypeParameterInstantiation | TSTypeParameterInstantiation (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.classExpression(id, superClass, body, decorators)
See also t.isClassExpression(node, opts) and t.assertClassExpression(node, opts).
Aliases: Scopable, Class, Expression, Pureish
id: Identifier (default: null)superClass: Expression (default: null)body: ClassBody (required)decorators: Array<Decorator> (default: null)implements: Array<TSExpressionWithTypeArguments | ClassImplements> (default: null)mixins (default: null)superTypeParameters: TypeParameterInstantiation | TSTypeParameterInstantiation (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.classImplements(id, typeParameters)
See also t.isClassImplements(node, opts) and t.assertClassImplements(node, opts).
Aliases: Flow
id: Identifier (required)typeParameters: TypeParameterInstantiation (default: null)t.classMethod(kind, key, params, body, computed, static)
See also t.isClassMethod(node, opts) and t.assertClassMethod(node, opts).
Aliases: Function, Scopable, BlockParent, FunctionParent, Method
kind: "get" | "set" | "method" | "constructor" (default: 'method')key: if computed then Expression else Identifier | Literal (required)params: Array<LVal> (required)body: BlockStatement (required)computed: boolean (default: false)static: boolean (default: null)abstract: boolean (default: null)access: "public" | "private" | "protected" (default: null)accessibility: "public" | "private" | "protected" (default: null)async: boolean (default: false)decorators: Array<Decorator> (default: null)generator: boolean (default: false)optional: boolean (default: null)returnType: TypeAnnotation | TSTypeAnnotation | Noop (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.classProperty(key, value, typeAnnotation, decorators, computed)
See also t.isClassProperty(node, opts) and t.assertClassProperty(node, opts).
Aliases: Property
key: Identifier | StringLiteral | NumericLiteral | Expression (required)value: Expression (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)decorators: Array<Decorator> (default: null)computed: boolean (default: false)abstract: boolean (default: null)accessibility: "public" | "private" | "protected" (default: null)definite: boolean (default: null)optional: boolean (default: null)readonly: boolean (default: null)static: boolean (default: null)t.conditionalExpression(test, consequent, alternate)
See also t.isConditionalExpression(node, opts) and t.assertConditionalExpression(node, opts).
Aliases: Expression, Conditional
test: Expression (required)consequent: Expression (required)alternate: Expression (required)t.continueStatement(label)
See also t.isContinueStatement(node, opts) and t.assertContinueStatement(node, opts).
Aliases: Statement, Terminatorless, CompletionStatement
label: Identifier (default: null)t.debuggerStatement()
See also t.isDebuggerStatement(node, opts) and t.assertDebuggerStatement(node, opts).
Aliases: Statement
t.declareClass(id, typeParameters, extends, body)
See also t.isDeclareClass(node, opts) and t.assertDeclareClass(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterInstantiation (default: null)extends: Array<InterfaceExtends> (default: null)body: ObjectTypeAnnotation (required)mixins: Array<InterfaceExtends> (default: null)t.declareExportAllDeclaration(source)
See also t.isDeclareExportAllDeclaration(node, opts) and t.assertDeclareExportAllDeclaration(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
source: StringLiteral (required)exportKind: ["type","value"] (default: null)t.declareExportDeclaration(declaration, specifiers, source)
See also t.isDeclareExportDeclaration(node, opts) and t.assertDeclareExportDeclaration(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
declaration: Flow (default: null)specifiers: Array<ExportSpecifier | ExportNamespaceSpecifier> (default: null)source: StringLiteral (default: null)default: boolean (default: null)t.declareFunction(id)
See also t.isDeclareFunction(node, opts) and t.assertDeclareFunction(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)predicate: DeclaredPredicate (default: null)t.declareInterface(id, typeParameters, extends, body)
See also t.isDeclareInterface(node, opts) and t.assertDeclareInterface(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)extends: InterfaceExtends (default: null)body: ObjectTypeAnnotation (required)mixins: Array<Flow> (default: null)t.declareModule(id, body, kind)
See also t.isDeclareModule(node, opts) and t.assertDeclareModule(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier | StringLiteral (required)body: BlockStatement (required)kind: "CommonJS" | "ES" (default: null)t.declareModuleExports(typeAnnotation)
See also t.isDeclareModuleExports(node, opts) and t.assertDeclareModuleExports(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
typeAnnotation: TypeAnnotation (required)t.declareOpaqueType(id, typeParameters, supertype)
See also t.isDeclareOpaqueType(node, opts) and t.assertDeclareOpaqueType(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)supertype: FlowType (default: null)t.declareTypeAlias(id, typeParameters, right)
See also t.isDeclareTypeAlias(node, opts) and t.assertDeclareTypeAlias(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)right: FlowType (required)t.declareVariable(id)
See also t.isDeclareVariable(node, opts) and t.assertDeclareVariable(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)t.declaredPredicate(value)
See also t.isDeclaredPredicate(node, opts) and t.assertDeclaredPredicate(node, opts).
Aliases: Flow, FlowPredicate
value: Flow (required)t.decorator(expression)
See also t.isDecorator(node, opts) and t.assertDecorator(node, opts).
expression: Expression (required)t.directive(value)
See also t.isDirective(node, opts) and t.assertDirective(node, opts).
value: DirectiveLiteral (required)t.directiveLiteral(value)
See also t.isDirectiveLiteral(node, opts) and t.assertDirectiveLiteral(node, opts).
value: string (required)t.doExpression(body)
See also t.isDoExpression(node, opts) and t.assertDoExpression(node, opts).
Aliases: Expression
body: BlockStatement (required)t.doWhileStatement(test, body)
See also t.isDoWhileStatement(node, opts) and t.assertDoWhileStatement(node, opts).
Aliases: Statement, BlockParent, Loop, While, Scopable
test: Expression (required)body: Statement (required)t.emptyStatement()
See also t.isEmptyStatement(node, opts) and t.assertEmptyStatement(node, opts).
Aliases: Statement
t.emptyTypeAnnotation()
See also t.isEmptyTypeAnnotation(node, opts) and t.assertEmptyTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.existsTypeAnnotation()
See also t.isExistsTypeAnnotation(node, opts) and t.assertExistsTypeAnnotation(node, opts).
Aliases: Flow, FlowType
t.exportAllDeclaration(source)
See also t.isExportAllDeclaration(node, opts) and t.assertExportAllDeclaration(node, opts).
Aliases: Statement, Declaration, ModuleDeclaration, ExportDeclaration
source: StringLiteral (required)t.exportDefaultDeclaration(declaration)
See also t.isExportDefaultDeclaration(node, opts) and t.assertExportDefaultDeclaration(node, opts).
Aliases: Statement, Declaration, ModuleDeclaration, ExportDeclaration
declaration: FunctionDeclaration | TSDeclareFunction | ClassDeclaration | Expression (required)t.exportDefaultSpecifier(exported)
See also t.isExportDefaultSpecifier(node, opts) and t.assertExportDefaultSpecifier(node, opts).
Aliases: ModuleSpecifier
exported: Identifier (required)t.exportNamedDeclaration(declaration, specifiers, source)
See also t.isExportNamedDeclaration(node, opts) and t.assertExportNamedDeclaration(node, opts).
Aliases: Statement, Declaration, ModuleDeclaration, ExportDeclaration
declaration: Declaration (default: null)specifiers: Array<ExportSpecifier | ExportDefaultSpecifier | ExportNamespaceSpecifier> (required)source: StringLiteral (default: null)t.exportNamespaceSpecifier(exported)
See also t.isExportNamespaceSpecifier(node, opts) and t.assertExportNamespaceSpecifier(node, opts).
Aliases: ModuleSpecifier
exported: Identifier (required)t.exportSpecifier(local, exported)
See also t.isExportSpecifier(node, opts) and t.assertExportSpecifier(node, opts).
Aliases: ModuleSpecifier
local: Identifier (required)exported: Identifier (required)t.expressionStatement(expression)
See also t.isExpressionStatement(node, opts) and t.assertExpressionStatement(node, opts).
Aliases: Statement, ExpressionWrapper
expression: Expression (required)t.file(program, comments, tokens)
See also t.isFile(node, opts) and t.assertFile(node, opts).
program: Program (required)comments (required)tokens (required)t.forInStatement(left, right, body)
See also t.isForInStatement(node, opts) and t.assertForInStatement(node, opts).
Aliases: Scopable, Statement, For, BlockParent, Loop, ForXStatement
left: VariableDeclaration | LVal (required)right: Expression (required)body: Statement (required)t.forOfStatement(left, right, body)
See also t.isForOfStatement(node, opts) and t.assertForOfStatement(node, opts).
Aliases: Scopable, Statement, For, BlockParent, Loop, ForXStatement
left: VariableDeclaration | LVal (required)right: Expression (required)body: Statement (required)await: boolean (default: false)t.forStatement(init, test, update, body)
See also t.isForStatement(node, opts) and t.assertForStatement(node, opts).
Aliases: Scopable, Statement, For, BlockParent, Loop
init: VariableDeclaration | Expression (default: null)test: Expression (default: null)update: Expression (default: null)body: Statement (required)t.functionDeclaration(id, params, body, generator, async)
See also t.isFunctionDeclaration(node, opts) and t.assertFunctionDeclaration(node, opts).
Aliases: Scopable, Function, BlockParent, FunctionParent, Statement, Pureish, Declaration
id: Identifier (default: null)params: Array<LVal> (required)body: BlockStatement (required)generator: boolean (default: false)async: boolean (default: false)declare: boolean (default: null)returnType: TypeAnnotation | TSTypeAnnotation | Noop (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.functionExpression(id, params, body, generator, async)
See also t.isFunctionExpression(node, opts) and t.assertFunctionExpression(node, opts).
Aliases: Scopable, Function, BlockParent, FunctionParent, Expression, Pureish
id: Identifier (default: null)params: Array<LVal> (required)body: BlockStatement (required)generator: boolean (default: false)async: boolean (default: false)returnType: TypeAnnotation | TSTypeAnnotation | Noop (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.functionTypeAnnotation(typeParameters, params, rest, returnType)
See also t.isFunctionTypeAnnotation(node, opts) and t.assertFunctionTypeAnnotation(node, opts).
Aliases: Flow, FlowType
typeParameters: TypeParameterDeclaration (default: null)params: Array<FunctionTypeParam> (required)rest: FunctionTypeParam (default: null)returnType: FlowType (required)t.functionTypeParam(name, typeAnnotation)
See also t.isFunctionTypeParam(node, opts) and t.assertFunctionTypeParam(node, opts).
Aliases: Flow
name: Identifier (default: null)typeAnnotation: FlowType (required)optional: boolean (default: null)t.genericTypeAnnotation(id, typeParameters)
See also t.isGenericTypeAnnotation(node, opts) and t.assertGenericTypeAnnotation(node, opts).
Aliases: Flow, FlowType
id: Identifier (required)typeParameters: TypeParameterInstantiation (default: null)t.identifier(name)
See also t.isIdentifier(node, opts) and t.assertIdentifier(node, opts).
Aliases: Expression, PatternLike, LVal, TSEntityName
name: string (required)decorators: Array<Decorator> (default: null)optional: boolean (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)t.ifStatement(test, consequent, alternate)
See also t.isIfStatement(node, opts) and t.assertIfStatement(node, opts).
Aliases: Statement, Conditional
test: Expression (required)consequent: Statement (required)alternate: Statement (default: null)t.import()
See also t.isImport(node, opts) and t.assertImport(node, opts).
Aliases: Expression
t.importDeclaration(specifiers, source)
See also t.isImportDeclaration(node, opts) and t.assertImportDeclaration(node, opts).
Aliases: Statement, Declaration, ModuleDeclaration
specifiers: Array<ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier> (required)source: StringLiteral (required)t.importDefaultSpecifier(local)
See also t.isImportDefaultSpecifier(node, opts) and t.assertImportDefaultSpecifier(node, opts).
Aliases: ModuleSpecifier
local: Identifier (required)t.importNamespaceSpecifier(local)
See also t.isImportNamespaceSpecifier(node, opts) and t.assertImportNamespaceSpecifier(node, opts).
Aliases: ModuleSpecifier
local: Identifier (required)t.importSpecifier(local, imported)
See also t.isImportSpecifier(node, opts) and t.assertImportSpecifier(node, opts).
Aliases: ModuleSpecifier
local: Identifier (required)imported: Identifier (required)importKind: null | "type" | "typeof" (default: null)t.inferredPredicate()
See also t.isInferredPredicate(node, opts) and t.assertInferredPredicate(node, opts).
Aliases: Flow, FlowPredicate
t.interfaceDeclaration(id, typeParameters, extends, body)
See also t.isInterfaceDeclaration(node, opts) and t.assertInterfaceDeclaration(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)extends: Array<InterfaceExtends> (required)body: ObjectTypeAnnotation (required)mixins: Array<InterfaceExtends> (default: null)t.interfaceExtends(id, typeParameters)
See also t.isInterfaceExtends(node, opts) and t.assertInterfaceExtends(node, opts).
Aliases: Flow
id: Identifier (required)typeParameters: TypeParameterInstantiation (default: null)t.intersectionTypeAnnotation(types)
See also t.isIntersectionTypeAnnotation(node, opts) and t.assertIntersectionTypeAnnotation(node, opts).
Aliases: Flow, FlowType
types: Array<FlowType> (required)t.jsxAttribute(name, value)
See also t.isJSXAttribute(node, opts) and t.assertJSXAttribute(node, opts).
Aliases: JSX, Immutable
name: JSXIdentifier | JSXNamespacedName (required)value: JSXElement | JSXFragment | StringLiteral | JSXExpressionContainer (default: null)t.jsxClosingElement(name)
See also t.isJSXClosingElement(node, opts) and t.assertJSXClosingElement(node, opts).
Aliases: JSX, Immutable
name: JSXIdentifier | JSXMemberExpression (required)t.jsxClosingFragment()
See also t.isJSXClosingFragment(node, opts) and t.assertJSXClosingFragment(node, opts).
Aliases: JSX, Immutable
t.jsxElement(openingElement, closingElement, children, selfClosing)
See also t.isJSXElement(node, opts) and t.assertJSXElement(node, opts).
Aliases: JSX, Immutable, Expression
openingElement: JSXOpeningElement (required)closingElement: JSXClosingElement (default: null)children: Array<JSXText | JSXExpressionContainer | JSXSpreadChild | JSXElement | JSXFragment> (required)selfClosing (required)t.jsxEmptyExpression()
See also t.isJSXEmptyExpression(node, opts) and t.assertJSXEmptyExpression(node, opts).
Aliases: JSX
t.jsxExpressionContainer(expression)
See also t.isJSXExpressionContainer(node, opts) and t.assertJSXExpressionContainer(node, opts).
Aliases: JSX, Immutable
expression: Expression (required)t.jsxFragment(openingFragment, closingFragment, children)
See also t.isJSXFragment(node, opts) and t.assertJSXFragment(node, opts).
Aliases: JSX, Immutable, Expression
openingFragment: JSXOpeningFragment (required)closingFragment: JSXClosingFragment (required)children: Array<JSXText | JSXExpressionContainer | JSXSpreadChild | JSXElement | JSXFragment> (required)t.jsxIdentifier(name)
See also t.isJSXIdentifier(node, opts) and t.assertJSXIdentifier(node, opts).
Aliases: JSX
name: string (required)t.jsxMemberExpression(object, property)
See also t.isJSXMemberExpression(node, opts) and t.assertJSXMemberExpression(node, opts).
Aliases: JSX
object: JSXMemberExpression | JSXIdentifier (required)property: JSXIdentifier (required)t.jsxNamespacedName(namespace, name)
See also t.isJSXNamespacedName(node, opts) and t.assertJSXNamespacedName(node, opts).
Aliases: JSX
namespace: JSXIdentifier (required)name: JSXIdentifier (required)t.jsxOpeningElement(name, attributes, selfClosing)
See also t.isJSXOpeningElement(node, opts) and t.assertJSXOpeningElement(node, opts).
Aliases: JSX, Immutable
name: JSXIdentifier | JSXMemberExpression (required)attributes: Array<JSXAttribute | JSXSpreadAttribute> (required)selfClosing: boolean (default: false)t.jsxOpeningFragment()
See also t.isJSXOpeningFragment(node, opts) and t.assertJSXOpeningFragment(node, opts).
Aliases: JSX, Immutable
t.jsxSpreadAttribute(argument)
See also t.isJSXSpreadAttribute(node, opts) and t.assertJSXSpreadAttribute(node, opts).
Aliases: JSX
argument: Expression (required)t.jsxSpreadChild(expression)
See also t.isJSXSpreadChild(node, opts) and t.assertJSXSpreadChild(node, opts).
Aliases: JSX, Immutable
expression: Expression (required)t.jsxText(value)
See also t.isJSXText(node, opts) and t.assertJSXText(node, opts).
Aliases: JSX, Immutable
value: string (required)t.labeledStatement(label, body)
See also t.isLabeledStatement(node, opts) and t.assertLabeledStatement(node, opts).
Aliases: Statement
label: Identifier (required)body: Statement (required)t.logicalExpression(operator, left, right)
See also t.isLogicalExpression(node, opts) and t.assertLogicalExpression(node, opts).
Aliases: Binary, Expression
operator: "||" | "&&" | "??" (required)left: Expression (required)right: Expression (required)t.memberExpression(object, property, computed, optional)
See also t.isMemberExpression(node, opts) and t.assertMemberExpression(node, opts).
Aliases: Expression, LVal
object: Expression (required)property: if computed then Expression else Identifier (required)computed: boolean (default: false)optional: true | false (default: null)t.metaProperty(meta, property)
See also t.isMetaProperty(node, opts) and t.assertMetaProperty(node, opts).
Aliases: Expression
meta: Identifier (required)property: Identifier (required)t.mixedTypeAnnotation()
See also t.isMixedTypeAnnotation(node, opts) and t.assertMixedTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.newExpression(callee, arguments)
See also t.isNewExpression(node, opts) and t.assertNewExpression(node, opts).
Aliases: Expression
callee: Expression (required)arguments: Array<Expression | SpreadElement | JSXNamespacedName> (required)optional: true | false (default: null)typeParameters: TypeParameterInstantiation | TSTypeParameterInstantiation (default: null)t.noop()
See also t.isNoop(node, opts) and t.assertNoop(node, opts).
t.nullLiteral()
See also t.isNullLiteral(node, opts) and t.assertNullLiteral(node, opts).
Aliases: Expression, Pureish, Literal, Immutable
t.nullLiteralTypeAnnotation()
See also t.isNullLiteralTypeAnnotation(node, opts) and t.assertNullLiteralTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.nullableTypeAnnotation(typeAnnotation)
See also t.isNullableTypeAnnotation(node, opts) and t.assertNullableTypeAnnotation(node, opts).
Aliases: Flow, FlowType
typeAnnotation: FlowType (required)t.numberLiteralTypeAnnotation()
See also t.isNumberLiteralTypeAnnotation(node, opts) and t.assertNumberLiteralTypeAnnotation(node, opts).
Aliases: Flow, FlowType
value: number (default: null)t.numberTypeAnnotation()
See also t.isNumberTypeAnnotation(node, opts) and t.assertNumberTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.numericLiteral(value)
See also t.isNumericLiteral(node, opts) and t.assertNumericLiteral(node, opts).
Aliases: Expression, Pureish, Literal, Immutable
value: number (required)t.objectExpression(properties)
See also t.isObjectExpression(node, opts) and t.assertObjectExpression(node, opts).
Aliases: Expression
properties: Array<ObjectMethod | ObjectProperty | SpreadElement> (required)t.objectMethod(kind, key, params, body, computed)
See also t.isObjectMethod(node, opts) and t.assertObjectMethod(node, opts).
Aliases: UserWhitespacable, Function, Scopable, BlockParent, FunctionParent, Method, ObjectMember
kind: "method" | "get" | "set" (default: 'method')key: if computed then Expression else Identifier | Literal (required)params: Array<LVal> (required)body: BlockStatement (required)computed: boolean (default: false)async: boolean (default: false)decorators: Array<Decorator> (default: null)generator: boolean (default: false)returnType: TypeAnnotation | TSTypeAnnotation | Noop (default: null)typeParameters: TypeParameterDeclaration | TSTypeParameterDeclaration | Noop (default: null)t.objectPattern(properties)
See also t.isObjectPattern(node, opts) and t.assertObjectPattern(node, opts).
Aliases: Pattern, PatternLike, LVal
properties: Array<RestElement | ObjectProperty> (required)decorators: Array<Decorator> (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)t.objectProperty(key, value, computed, shorthand, decorators)
See also t.isObjectProperty(node, opts) and t.assertObjectProperty(node, opts).
Aliases: UserWhitespacable, Property, ObjectMember
key: if computed then Expression else Identifier | Literal (required)value: Expression | PatternLike (required)computed: boolean (default: false)shorthand: boolean (default: false)decorators: Array<Decorator> (default: null)t.objectTypeAnnotation(properties, indexers, callProperties, exact)
See also t.isObjectTypeAnnotation(node, opts) and t.assertObjectTypeAnnotation(node, opts).
Aliases: Flow, FlowType
properties: Array<ObjectTypeProperty | ObjectTypeSpreadProperty> (required)indexers: Array<ObjectTypeIndexer> (default: null)callProperties: Array<ObjectTypeCallProperty> (default: null)exact: boolean (default: false)t.objectTypeCallProperty(value)
See also t.isObjectTypeCallProperty(node, opts) and t.assertObjectTypeCallProperty(node, opts).
Aliases: Flow, UserWhitespacable
value: FlowType (required)static: boolean (default: null)t.objectTypeIndexer(id, key, value, variance)
See also t.isObjectTypeIndexer(node, opts) and t.assertObjectTypeIndexer(node, opts).
Aliases: Flow, UserWhitespacable
id: Identifier (default: null)key: FlowType (required)value: FlowType (required)variance: Variance (default: null)static: boolean (default: null)t.objectTypeProperty(key, value, variance)
See also t.isObjectTypeProperty(node, opts) and t.assertObjectTypeProperty(node, opts).
Aliases: Flow, UserWhitespacable
key: Identifier | StringLiteral (required)value: FlowType (required)variance: Variance (default: null)kind: "init" | "get" | "set" (default: null)optional: boolean (default: null)static: boolean (default: null)t.objectTypeSpreadProperty(argument)
See also t.isObjectTypeSpreadProperty(node, opts) and t.assertObjectTypeSpreadProperty(node, opts).
Aliases: Flow, UserWhitespacable
argument: FlowType (required)t.opaqueType(id, typeParameters, supertype, impltype)
See also t.isOpaqueType(node, opts) and t.assertOpaqueType(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)supertype: FlowType (default: null)impltype: FlowType (required)t.optionalCallExpression(callee, arguments, optional)
See also t.isOptionalCallExpression(node, opts) and t.assertOptionalCallExpression(node, opts).
Aliases: Expression
callee: Expression (required)arguments: Array<Expression | SpreadElement | JSXNamespacedName> (required)optional: boolean (required)typeParameters: TypeParameterInstantiation | TSTypeParameterInstantiation (default: null)t.optionalMemberExpression(object, property, computed, optional)
See also t.isOptionalMemberExpression(node, opts) and t.assertOptionalMemberExpression(node, opts).
Aliases: Expression
object: Expression (required)property: any (required)computed: boolean (default: false)optional: boolean (required)t.parenthesizedExpression(expression)
See also t.isParenthesizedExpression(node, opts) and t.assertParenthesizedExpression(node, opts).
Aliases: Expression, ExpressionWrapper
expression: Expression (required)t.program(body, directives, sourceType)
See also t.isProgram(node, opts) and t.assertProgram(node, opts).
Aliases: Scopable, BlockParent, Block
body: Array<Statement> (required)directives: Array<Directive> (default: [])sourceType: "script" | "module" (default: 'script')sourceFile: string (default: null)t.qualifiedTypeIdentifier(id, qualification)
See also t.isQualifiedTypeIdentifier(node, opts) and t.assertQualifiedTypeIdentifier(node, opts).
Aliases: Flow
id: Identifier (required)qualification: Identifier | QualifiedTypeIdentifier (required)t.regExpLiteral(pattern, flags)
See also t.isRegExpLiteral(node, opts) and t.assertRegExpLiteral(node, opts).
Aliases: Expression, Literal
pattern: string (required)flags: string (default: '')t.restElement(argument)
See also t.isRestElement(node, opts) and t.assertRestElement(node, opts).
Aliases: LVal, PatternLike
argument: LVal (required)decorators: Array<Decorator> (default: null)typeAnnotation: TypeAnnotation | TSTypeAnnotation | Noop (default: null)t.returnStatement(argument)
See also t.isReturnStatement(node, opts) and t.assertReturnStatement(node, opts).
Aliases: Statement, Terminatorless, CompletionStatement
argument: Expression (default: null)t.sequenceExpression(expressions)
See also t.isSequenceExpression(node, opts) and t.assertSequenceExpression(node, opts).
Aliases: Expression
expressions: Array<Expression> (required)t.spreadElement(argument)
See also t.isSpreadElement(node, opts) and t.assertSpreadElement(node, opts).
Aliases: UnaryLike
argument: Expression (required)t.stringLiteral(value)
See also t.isStringLiteral(node, opts) and t.assertStringLiteral(node, opts).
Aliases: Expression, Pureish, Literal, Immutable
value: string (required)t.stringLiteralTypeAnnotation()
See also t.isStringLiteralTypeAnnotation(node, opts) and t.assertStringLiteralTypeAnnotation(node, opts).
Aliases: Flow, FlowType
value: string (default: null)t.stringTypeAnnotation()
See also t.isStringTypeAnnotation(node, opts) and t.assertStringTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.super()
See also t.isSuper(node, opts) and t.assertSuper(node, opts).
Aliases: Expression
t.switchCase(test, consequent)
See also t.isSwitchCase(node, opts) and t.assertSwitchCase(node, opts).
test: Expression (default: null)consequent: Array<Statement> (required)t.switchStatement(discriminant, cases)
See also t.isSwitchStatement(node, opts) and t.assertSwitchStatement(node, opts).
Aliases: Statement, BlockParent, Scopable
discriminant: Expression (required)cases: Array<SwitchCase> (required)t.tsAnyKeyword()
See also t.isTSAnyKeyword(node, opts) and t.assertTSAnyKeyword(node, opts).
Aliases: TSType
t.tsArrayType(elementType)
See also t.isTSArrayType(node, opts) and t.assertTSArrayType(node, opts).
Aliases: TSType
elementType: TSType (required)t.tsAsExpression(expression, typeAnnotation)
See also t.isTSAsExpression(node, opts) and t.assertTSAsExpression(node, opts).
Aliases: Expression
expression: Expression (required)typeAnnotation: TSType (required)t.tsBooleanKeyword()
See also t.isTSBooleanKeyword(node, opts) and t.assertTSBooleanKeyword(node, opts).
Aliases: TSType
t.tsCallSignatureDeclaration(typeParameters, parameters, typeAnnotation)
See also t.isTSCallSignatureDeclaration(node, opts) and t.assertTSCallSignatureDeclaration(node, opts).
Aliases: TSTypeElement
typeParameters: TSTypeParameterDeclaration (default: null)parameters: Array<Identifier | RestElement> (default: null)typeAnnotation: TSTypeAnnotation (default: null)t.tsConditionalType(checkType, extendsType, trueType, falseType)
See also t.isTSConditionalType(node, opts) and t.assertTSConditionalType(node, opts).
Aliases: TSType
checkType: TSType (required)extendsType: TSType (required)trueType: TSType (required)falseType: TSType (required)t.tsConstructSignatureDeclaration(typeParameters, parameters, typeAnnotation)
See also t.isTSConstructSignatureDeclaration(node, opts) and t.assertTSConstructSignatureDeclaration(node, opts).
Aliases: TSTypeElement
typeParameters: TSTypeParameterDeclaration (default: null)parameters: Array<Identifier | RestElement> (default: null)typeAnnotation: TSTypeAnnotation (default: null)t.tsConstructorType(typeParameters, typeAnnotation)
See also t.isTSConstructorType(node, opts) and t.assertTSConstructorType(node, opts).
Aliases: TSType
typeParameters: TSTypeParameterDeclaration (default: null)typeAnnotation: TSTypeAnnotation (default: null)parameters: Array<Identifier | RestElement> (default: null)t.tsDeclareFunction(id, typeParameters, params, returnType)
See also t.isTSDeclareFunction(node, opts) and t.assertTSDeclareFunction(node, opts).
Aliases: Statement, Declaration
id: Identifier (default: null)typeParameters: TSTypeParameterDeclaration | Noop (default: null)params: Array<LVal> (required)returnType: TSTypeAnnotation | Noop (default: null)async: boolean (default: false)declare: boolean (default: null)generator: boolean (default: false)t.tsDeclareMethod(decorators, key, typeParameters, params, returnType)
See also t.isTSDeclareMethod(node, opts) and t.assertTSDeclareMethod(node, opts).
decorators: Array<Decorator> (default: null)key: Identifier | StringLiteral | NumericLiteral | Expression (required)typeParameters: TSTypeParameterDeclaration | Noop (default: null)params: Array<LVal> (required)returnType: TSTypeAnnotation | Noop (default: null)abstract: boolean (default: null)access: "public" | "private" | "protected" (default: null)accessibility: "public" | "private" | "protected" (default: null)async: boolean (default: false)computed: boolean (default: false)generator: boolean (default: false)kind: "get" | "set" | "method" | "constructor" (default: 'method')optional: boolean (default: null)static: boolean (default: null)t.tsEnumDeclaration(id, members)
See also t.isTSEnumDeclaration(node, opts) and t.assertTSEnumDeclaration(node, opts).
Aliases: Statement, Declaration
id: Identifier (required)members: Array<TSEnumMember> (required)const: boolean (default: null)declare: boolean (default: null)initializer: Expression (default: null)t.tsEnumMember(id, initializer)
See also t.isTSEnumMember(node, opts) and t.assertTSEnumMember(node, opts).
id: Identifier | StringLiteral (required)initializer: Expression (default: null)t.tsExportAssignment(expression)
See also t.isTSExportAssignment(node, opts) and t.assertTSExportAssignment(node, opts).
Aliases: Statement
expression: Expression (required)t.tsExpressionWithTypeArguments(expression, typeParameters)
See also t.isTSExpressionWithTypeArguments(node, opts) and t.assertTSExpressionWithTypeArguments(node, opts).
Aliases: TSType
expression: TSEntityName (required)typeParameters: TSTypeParameterInstantiation (default: null)t.tsExternalModuleReference(expression)
See also t.isTSExternalModuleReference(node, opts) and t.assertTSExternalModuleReference(node, opts).
expression: StringLiteral (required)t.tsFunctionType(typeParameters, typeAnnotation)
See also t.isTSFunctionType(node, opts) and t.assertTSFunctionType(node, opts).
Aliases: TSType
typeParameters: TSTypeParameterDeclaration (default: null)typeAnnotation: TSTypeAnnotation (default: null)parameters: Array<Identifier | RestElement> (default: null)t.tsImportEqualsDeclaration(id, moduleReference)
See also t.isTSImportEqualsDeclaration(node, opts) and t.assertTSImportEqualsDeclaration(node, opts).
Aliases: Statement
id: Identifier (required)moduleReference: TSEntityName | TSExternalModuleReference (required)isExport: boolean (default: null)t.tsIndexSignature(parameters, typeAnnotation)
See also t.isTSIndexSignature(node, opts) and t.assertTSIndexSignature(node, opts).
Aliases: TSTypeElement
parameters: Array<Identifier> (required)typeAnnotation: TSTypeAnnotation (default: null)readonly: boolean (default: null)t.tsIndexedAccessType(objectType, indexType)
See also t.isTSIndexedAccessType(node, opts) and t.assertTSIndexedAccessType(node, opts).
Aliases: TSType
objectType: TSType (required)indexType: TSType (required)t.tsInferType(typeParameter)
See also t.isTSInferType(node, opts) and t.assertTSInferType(node, opts).
Aliases: TSType
typeParameter: TSType (required)t.tsInterfaceBody(body)
See also t.isTSInterfaceBody(node, opts) and t.assertTSInterfaceBody(node, opts).
body: Array<TSTypeElement> (required)t.tsInterfaceDeclaration(id, typeParameters, extends, body)
See also t.isTSInterfaceDeclaration(node, opts) and t.assertTSInterfaceDeclaration(node, opts).
Aliases: Statement, Declaration
id: Identifier (required)typeParameters: TSTypeParameterDeclaration (default: null)extends: Array<TSExpressionWithTypeArguments> (default: null)body: TSInterfaceBody (required)declare: boolean (default: null)t.tsIntersectionType(types)
See also t.isTSIntersectionType(node, opts) and t.assertTSIntersectionType(node, opts).
Aliases: TSType
types: Array<TSType> (required)t.tsLiteralType(literal)
See also t.isTSLiteralType(node, opts) and t.assertTSLiteralType(node, opts).
Aliases: TSType
literal: NumericLiteral | StringLiteral | BooleanLiteral (required)t.tsMappedType(typeParameter, typeAnnotation)
See also t.isTSMappedType(node, opts) and t.assertTSMappedType(node, opts).
Aliases: TSType
typeParameter: TSTypeParameter (required)typeAnnotation: TSType (default: null)optional: boolean (default: null)readonly: boolean (default: null)t.tsMethodSignature(key, typeParameters, parameters, typeAnnotation)
See also t.isTSMethodSignature(node, opts) and t.assertTSMethodSignature(node, opts).
Aliases: TSTypeElement
key: Expression (required)typeParameters: TSTypeParameterDeclaration (default: null)parameters: Array<Identifier | RestElement> (default: null)typeAnnotation: TSTypeAnnotation (default: null)computed: boolean (default: null)optional: boolean (default: null)t.tsModuleBlock(body)
See also t.isTSModuleBlock(node, opts) and t.assertTSModuleBlock(node, opts).
body: Array<Statement> (required)t.tsModuleDeclaration(id, body)
See also t.isTSModuleDeclaration(node, opts) and t.assertTSModuleDeclaration(node, opts).
Aliases: Statement, Declaration
id: Identifier | StringLiteral (required)body: TSModuleBlock | TSModuleDeclaration (required)declare: boolean (default: null)global: boolean (default: null)t.tsNamespaceExportDeclaration(id)
See also t.isTSNamespaceExportDeclaration(node, opts) and t.assertTSNamespaceExportDeclaration(node, opts).
Aliases: Statement
id: Identifier (required)t.tsNeverKeyword()
See also t.isTSNeverKeyword(node, opts) and t.assertTSNeverKeyword(node, opts).
Aliases: TSType
t.tsNonNullExpression(expression)
See also t.isTSNonNullExpression(node, opts) and t.assertTSNonNullExpression(node, opts).
Aliases: Expression
expression: Expression (required)t.tsNullKeyword()
See also t.isTSNullKeyword(node, opts) and t.assertTSNullKeyword(node, opts).
Aliases: TSType
t.tsNumberKeyword()
See also t.isTSNumberKeyword(node, opts) and t.assertTSNumberKeyword(node, opts).
Aliases: TSType
t.tsObjectKeyword()
See also t.isTSObjectKeyword(node, opts) and t.assertTSObjectKeyword(node, opts).
Aliases: TSType
t.tsParameterProperty(parameter)
See also t.isTSParameterProperty(node, opts) and t.assertTSParameterProperty(node, opts).
Aliases: LVal
parameter: Identifier | AssignmentPattern (required)accessibility: "public" | "private" | "protected" (default: null)readonly: boolean (default: null)t.tsParenthesizedType(typeAnnotation)
See also t.isTSParenthesizedType(node, opts) and t.assertTSParenthesizedType(node, opts).
Aliases: TSType
typeAnnotation: TSType (required)t.tsPropertySignature(key, typeAnnotation, initializer)
See also t.isTSPropertySignature(node, opts) and t.assertTSPropertySignature(node, opts).
Aliases: TSTypeElement
key: Expression (required)typeAnnotation: TSTypeAnnotation (default: null)initializer: Expression (default: null)computed: boolean (default: null)optional: boolean (default: null)readonly: boolean (default: null)t.tsQualifiedName(left, right)
See also t.isTSQualifiedName(node, opts) and t.assertTSQualifiedName(node, opts).
Aliases: TSEntityName
left: TSEntityName (required)right: Identifier (required)t.tsStringKeyword()
See also t.isTSStringKeyword(node, opts) and t.assertTSStringKeyword(node, opts).
Aliases: TSType
t.tsSymbolKeyword()
See also t.isTSSymbolKeyword(node, opts) and t.assertTSSymbolKeyword(node, opts).
Aliases: TSType
t.tsThisType()
See also t.isTSThisType(node, opts) and t.assertTSThisType(node, opts).
Aliases: TSType
t.tsTupleType(elementTypes)
See also t.isTSTupleType(node, opts) and t.assertTSTupleType(node, opts).
Aliases: TSType
elementTypes: Array<TSType> (required)t.tsTypeAliasDeclaration(id, typeParameters, typeAnnotation)
See also t.isTSTypeAliasDeclaration(node, opts) and t.assertTSTypeAliasDeclaration(node, opts).
Aliases: Statement, Declaration
id: Identifier (required)typeParameters: TSTypeParameterDeclaration (default: null)typeAnnotation: TSType (required)declare: boolean (default: null)t.tsTypeAnnotation(typeAnnotation)
See also t.isTSTypeAnnotation(node, opts) and t.assertTSTypeAnnotation(node, opts).
typeAnnotation: TSType (required)t.tsTypeAssertion(typeAnnotation, expression)
See also t.isTSTypeAssertion(node, opts) and t.assertTSTypeAssertion(node, opts).
Aliases: Expression
typeAnnotation: TSType (required)expression: Expression (required)t.tsTypeLiteral(members)
See also t.isTSTypeLiteral(node, opts) and t.assertTSTypeLiteral(node, opts).
Aliases: TSType
members: Array<TSTypeElement> (required)t.tsTypeOperator(typeAnnotation)
See also t.isTSTypeOperator(node, opts) and t.assertTSTypeOperator(node, opts).
Aliases: TSType
typeAnnotation: TSType (required)operator: string (default: null)t.tsTypeParameter(constraint, default)
See also t.isTSTypeParameter(node, opts) and t.assertTSTypeParameter(node, opts).
constraint: TSType (default: null)default: TSType (default: null)name: string (default: null)t.tsTypeParameterDeclaration(params)
See also t.isTSTypeParameterDeclaration(node, opts) and t.assertTSTypeParameterDeclaration(node, opts).
params: Array<TSTypeParameter> (required)t.tsTypeParameterInstantiation(params)
See also t.isTSTypeParameterInstantiation(node, opts) and t.assertTSTypeParameterInstantiation(node, opts).
params: Array<TSType> (required)t.tsTypePredicate(parameterName, typeAnnotation)
See also t.isTSTypePredicate(node, opts) and t.assertTSTypePredicate(node, opts).
Aliases: TSType
parameterName: Identifier | TSThisType (required)typeAnnotation: TSTypeAnnotation (required)t.tsTypeQuery(exprName)
See also t.isTSTypeQuery(node, opts) and t.assertTSTypeQuery(node, opts).
Aliases: TSType
exprName: TSEntityName (required)t.tsTypeReference(typeName, typeParameters)
See also t.isTSTypeReference(node, opts) and t.assertTSTypeReference(node, opts).
Aliases: TSType
typeName: TSEntityName (required)typeParameters: TSTypeParameterInstantiation (default: null)t.tsUndefinedKeyword()
See also t.isTSUndefinedKeyword(node, opts) and t.assertTSUndefinedKeyword(node, opts).
Aliases: TSType
t.tsUnionType(types)
See also t.isTSUnionType(node, opts) and t.assertTSUnionType(node, opts).
Aliases: TSType
types: Array<TSType> (required)t.tsVoidKeyword()
See also t.isTSVoidKeyword(node, opts) and t.assertTSVoidKeyword(node, opts).
Aliases: TSType
t.taggedTemplateExpression(tag, quasi)
See also t.isTaggedTemplateExpression(node, opts) and t.assertTaggedTemplateExpression(node, opts).
Aliases: Expression
tag: Expression (required)quasi: TemplateLiteral (required)t.templateElement(value, tail)
See also t.isTemplateElement(node, opts) and t.assertTemplateElement(node, opts).
value (required)tail: boolean (default: false)t.templateLiteral(quasis, expressions)
See also t.isTemplateLiteral(node, opts) and t.assertTemplateLiteral(node, opts).
Aliases: Expression, Literal
quasis: Array<TemplateElement> (required)expressions: Array<Expression> (required)t.thisExpression()
See also t.isThisExpression(node, opts) and t.assertThisExpression(node, opts).
Aliases: Expression
t.thisTypeAnnotation()
See also t.isThisTypeAnnotation(node, opts) and t.assertThisTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.throwStatement(argument)
See also t.isThrowStatement(node, opts) and t.assertThrowStatement(node, opts).
Aliases: Statement, Terminatorless, CompletionStatement
argument: Expression (required)t.tryStatement(block, handler, finalizer)
See also t.isTryStatement(node, opts) and t.assertTryStatement(node, opts).
Aliases: Statement
block: BlockStatement (required)handler: CatchClause (default: null)finalizer: BlockStatement (default: null)t.tupleTypeAnnotation(types)
See also t.isTupleTypeAnnotation(node, opts) and t.assertTupleTypeAnnotation(node, opts).
Aliases: Flow, FlowType
types: Array<FlowType> (required)t.typeAlias(id, typeParameters, right)
See also t.isTypeAlias(node, opts) and t.assertTypeAlias(node, opts).
Aliases: Flow, FlowDeclaration, Statement, Declaration
id: Identifier (required)typeParameters: TypeParameterDeclaration (default: null)right: FlowType (required)t.typeAnnotation(typeAnnotation)
See also t.isTypeAnnotation(node, opts) and t.assertTypeAnnotation(node, opts).
Aliases: Flow
typeAnnotation: FlowType (required)t.typeCastExpression(expression, typeAnnotation)
See also t.isTypeCastExpression(node, opts) and t.assertTypeCastExpression(node, opts).
Aliases: Flow, ExpressionWrapper, Expression
expression: Expression (required)typeAnnotation: TypeAnnotation (required)t.typeParameter(bound, default, variance)
See also t.isTypeParameter(node, opts) and t.assertTypeParameter(node, opts).
Aliases: Flow
bound: TypeAnnotation (default: null)default: FlowType (default: null)variance: Variance (default: null)name: string (default: null)t.typeParameterDeclaration(params)
See also t.isTypeParameterDeclaration(node, opts) and t.assertTypeParameterDeclaration(node, opts).
Aliases: Flow
params: Array<TypeParameter> (required)t.typeParameterInstantiation(params)
See also t.isTypeParameterInstantiation(node, opts) and t.assertTypeParameterInstantiation(node, opts).
Aliases: Flow
params: Array<FlowType> (required)t.typeofTypeAnnotation(argument)
See also t.isTypeofTypeAnnotation(node, opts) and t.assertTypeofTypeAnnotation(node, opts).
Aliases: Flow, FlowType
argument: FlowType (required)t.unaryExpression(operator, argument, prefix)
See also t.isUnaryExpression(node, opts) and t.assertUnaryExpression(node, opts).
Aliases: UnaryLike, Expression
operator: "void" | "throw" | "delete" | "!" | "+" | "-" | "~" | "typeof" (required)argument: Expression (required)prefix: boolean (default: true)t.unionTypeAnnotation(types)
See also t.isUnionTypeAnnotation(node, opts) and t.assertUnionTypeAnnotation(node, opts).
Aliases: Flow, FlowType
types: Array<FlowType> (required)t.updateExpression(operator, argument, prefix)
See also t.isUpdateExpression(node, opts) and t.assertUpdateExpression(node, opts).
Aliases: Expression
operator: "++" | "--" (required)argument: Expression (required)prefix: boolean (default: false)t.variableDeclaration(kind, declarations)
See also t.isVariableDeclaration(node, opts) and t.assertVariableDeclaration(node, opts).
Aliases: Statement, Declaration
kind: "var" | "let" | "const" (required)declarations: Array<VariableDeclarator> (required)declare: boolean (default: null)t.variableDeclarator(id, init)
See also t.isVariableDeclarator(node, opts) and t.assertVariableDeclarator(node, opts).
id: LVal (required)init: Expression (default: null)definite: boolean (default: null)t.variance(kind)
See also t.isVariance(node, opts) and t.assertVariance(node, opts).
Aliases: Flow
kind: "minus" | "plus" (required)t.voidTypeAnnotation()
See also t.isVoidTypeAnnotation(node, opts) and t.assertVoidTypeAnnotation(node, opts).
Aliases: Flow, FlowType, FlowBaseAnnotation
t.whileStatement(test, body)
See also t.isWhileStatement(node, opts) and t.assertWhileStatement(node, opts).
Aliases: Statement, BlockParent, Loop, While, Scopable
test: Expression (required)body: BlockStatement | Statement (required)t.withStatement(object, body)
See also t.isWithStatement(node, opts) and t.assertWithStatement(node, opts).
Aliases: Statement
object: Expression (required)body: BlockStatement | Statement (required)t.yieldExpression(argument, delegate)
See also t.isYieldExpression(node, opts) and t.assertYieldExpression(node, opts).
Aliases: Expression, Terminatorless
argument: Expression (default: null)delegate: boolean (default: false)