is* and assert* checks accept null and undefined

This commit is contained in:
Ian Craig 2019-02-17 17:12:46 -08:00
parent 3d0bd7c754
commit 08ba15aab8
3 changed files with 471 additions and 465 deletions

View File

@ -53,6 +53,12 @@ traverse(ast, {
}
});
// Node type checks
t.isIdentifier(t.identifier("id"));
t.isIdentifier(exp);
t.isIdentifier(null);
t.isIdentifier(undefined);
// TypeScript Types
// TODO: Test all variants of these functions' signatures

View File

@ -1514,246 +1514,246 @@ export function TSUndefinedKeyword(): TSUndefinedKeyword;
export function TSUnionType(types: TSType[]): TSUnionType;
export function TSVoidKeyword(): TSVoidKeyword;
export function isArrayExpression(node: object, opts?: object): node is ArrayExpression;
export function isAssignmentExpression(node: object, opts?: object): node is AssignmentExpression;
export function isBinaryExpression(node: object, opts?: object): node is BinaryExpression;
export function isDirective(node: object, opts?: object): node is Directive;
export function isDirectiveLiteral(node: object, opts?: object): node is DirectiveLiteral;
export function isBlockStatement(node: object, opts?: object): node is BlockStatement;
export function isBreakStatement(node: object, opts?: object): node is BreakStatement;
export function isCallExpression(node: object, opts?: object): node is CallExpression;
export function isCatchClause(node: object, opts?: object): node is CatchClause;
export function isConditionalExpression(node: object, opts?: object): node is ConditionalExpression;
export function isContinueStatement(node: object, opts?: object): node is ContinueStatement;
export function isDebuggerStatement(node: object, opts?: object): node is DebuggerStatement;
export function isDoWhileStatement(node: object, opts?: object): node is DoWhileStatement;
export function isEmptyStatement(node: object, opts?: object): node is EmptyStatement;
export function isExpressionStatement(node: object, opts?: object): node is ExpressionStatement;
export function isFile(node: object, opts?: object): node is File;
export function isForInStatement(node: object, opts?: object): node is ForInStatement;
export function isForStatement(node: object, opts?: object): node is ForStatement;
export function isFunctionDeclaration(node: object, opts?: object): node is FunctionDeclaration;
export function isFunctionExpression(node: object, opts?: object): node is FunctionExpression;
export function isIdentifier(node: object, opts?: object): node is Identifier;
export function isIfStatement(node: object, opts?: object): node is IfStatement;
export function isLabeledStatement(node: object, opts?: object): node is LabeledStatement;
export function isStringLiteral(node: object, opts?: object): node is StringLiteral;
export function isNumericLiteral(node: object, opts?: object): node is NumericLiteral;
export function isNullLiteral(node: object, opts?: object): node is NullLiteral;
export function isBooleanLiteral(node: object, opts?: object): node is BooleanLiteral;
export function isRegExpLiteral(node: object, opts?: object): node is RegExpLiteral;
export function isLogicalExpression(node: object, opts?: object): node is LogicalExpression;
export function isMemberExpression(node: object, opts?: object): node is MemberExpression;
export function isNewExpression(node: object, opts?: object): node is NewExpression;
export function isProgram(node: object, opts?: object): node is Program;
export function isObjectExpression(node: object, opts?: object): node is ObjectExpression;
export function isObjectMethod(node: object, opts?: object): node is ObjectMethod;
export function isObjectProperty(node: object, opts?: object): node is ObjectProperty;
export function isRestElement(node: object, opts?: object): node is RestElement;
export function isReturnStatement(node: object, opts?: object): node is ReturnStatement;
export function isSequenceExpression(node: object, opts?: object): node is SequenceExpression;
export function isSwitchCase(node: object, opts?: object): node is SwitchCase;
export function isSwitchStatement(node: object, opts?: object): node is SwitchStatement;
export function isThisExpression(node: object, opts?: object): node is ThisExpression;
export function isThrowStatement(node: object, opts?: object): node is ThrowStatement;
export function isTryStatement(node: object, opts?: object): node is TryStatement;
export function isUnaryExpression(node: object, opts?: object): node is UnaryExpression;
export function isUpdateExpression(node: object, opts?: object): node is UpdateExpression;
export function isVariableDeclaration(node: object, opts?: object): node is VariableDeclaration;
export function isVariableDeclarator(node: object, opts?: object): node is VariableDeclarator;
export function isWhileStatement(node: object, opts?: object): node is WhileStatement;
export function isWithStatement(node: object, opts?: object): node is WithStatement;
export function isAssignmentPattern(node: object, opts?: object): node is AssignmentPattern;
export function isArrayPattern(node: object, opts?: object): node is ArrayPattern;
export function isArrowFunctionExpression(node: object, opts?: object): node is ArrowFunctionExpression;
export function isClassBody(node: object, opts?: object): node is ClassBody;
export function isClassDeclaration(node: object, opts?: object): node is ClassDeclaration;
export function isClassExpression(node: object, opts?: object): node is ClassExpression;
export function isExportAllDeclaration(node: object, opts?: object): node is ExportAllDeclaration;
export function isExportDefaultDeclaration(node: object, opts?: object): node is ExportDefaultDeclaration;
export function isExportNamedDeclaration(node: object, opts?: object): node is ExportNamedDeclaration;
export function isExportSpecifier(node: object, opts?: object): node is ExportSpecifier;
export function isForOfStatement(node: object, opts?: object): node is ForOfStatement;
export function isImportDeclaration(node: object, opts?: object): node is ImportDeclaration;
export function isImportDefaultSpecifier(node: object, opts?: object): node is ImportDefaultSpecifier;
export function isImportNamespaceSpecifier(node: object, opts?: object): node is ImportNamespaceSpecifier;
export function isImportSpecifier(node: object, opts?: object): node is ImportSpecifier;
export function isMetaProperty(node: object, opts?: object): node is MetaProperty;
export function isClassMethod(node: object, opts?: object): node is ClassMethod;
export function isObjectPattern(node: object, opts?: object): node is ObjectPattern;
export function isSpreadElement(node: object, opts?: object): node is SpreadElement;
export function isSuper(node: object, opts?: object): node is Super;
export function isTaggedTemplateExpression(node: object, opts?: object): node is TaggedTemplateExpression;
export function isTemplateElement(node: object, opts?: object): node is TemplateElement;
export function isTemplateLiteral(node: object, opts?: object): node is TemplateLiteral;
export function isYieldExpression(node: object, opts?: object): node is YieldExpression;
export function isAnyTypeAnnotation(node: object, opts?: object): node is AnyTypeAnnotation;
export function isArrayTypeAnnotation(node: object, opts?: object): node is ArrayTypeAnnotation;
export function isBooleanTypeAnnotation(node: object, opts?: object): node is BooleanTypeAnnotation;
export function isBooleanLiteralTypeAnnotation(node: object, opts?: object): node is BooleanLiteralTypeAnnotation;
export function isNullLiteralTypeAnnotation(node: object, opts?: object): node is NullLiteralTypeAnnotation;
export function isClassImplements(node: object, opts?: object): node is ClassImplements;
export function isClassProperty(node: object, opts?: object): node is ClassProperty;
export function isDeclareClass(node: object, opts?: object): node is DeclareClass;
export function isDeclareFunction(node: object, opts?: object): node is DeclareFunction;
export function isDeclareInterface(node: object, opts?: object): node is DeclareInterface;
export function isDeclareModule(node: object, opts?: object): node is DeclareModule;
export function isDeclareTypeAlias(node: object, opts?: object): node is DeclareTypeAlias;
export function isDeclareVariable(node: object, opts?: object): node is DeclareVariable;
export function isExistentialTypeParam(node: object, opts?: object): node is ExistentialTypeParam;
export function isFunctionTypeAnnotation(node: object, opts?: object): node is FunctionTypeAnnotation;
export function isFunctionTypeParam(node: object, opts?: object): node is FunctionTypeParam;
export function isGenericTypeAnnotation(node: object, opts?: object): node is GenericTypeAnnotation;
export function isInterfaceExtends(node: object, opts?: object): node is InterfaceExtends;
export function isInterfaceDeclaration(node: object, opts?: object): node is InterfaceDeclaration;
export function isIntersectionTypeAnnotation(node: object, opts?: object): node is IntersectionTypeAnnotation;
export function isMixedTypeAnnotation(node: object, opts?: object): node is MixedTypeAnnotation;
export function isNullableTypeAnnotation(node: object, opts?: object): node is NullableTypeAnnotation;
export function isNumericLiteralTypeAnnotation(node: object, opts?: object): node is NumericLiteralTypeAnnotation;
export function isNumberTypeAnnotation(node: object, opts?: object): node is NumberTypeAnnotation;
export function isStringLiteralTypeAnnotation(node: object, opts?: object): node is StringLiteralTypeAnnotation;
export function isStringTypeAnnotation(node: object, opts?: object): node is StringTypeAnnotation;
export function isThisTypeAnnotation(node: object, opts?: object): node is ThisTypeAnnotation;
export function isTupleTypeAnnotation(node: object, opts?: object): node is TupleTypeAnnotation;
export function isTypeofTypeAnnotation(node: object, opts?: object): node is TypeofTypeAnnotation;
export function isTypeAlias(node: object, opts?: object): node is TypeAlias;
export function isTypeAnnotation(node: object, opts?: object): node is TypeAnnotation;
export function isTypeCastExpression(node: object, opts?: object): node is TypeCastExpression;
export function isTypeParameter(node: object, opts?: object): node is TypeParameter;
export function isTypeParameterDeclaration(node: object, opts?: object): node is TypeParameterDeclaration;
export function isTypeParameterInstantiation(node: object, opts?: object): node is TypeParameterInstantiation;
export function isObjectTypeAnnotation(node: object, opts?: object): node is ObjectTypeAnnotation;
export function isObjectTypeCallProperty(node: object, opts?: object): node is ObjectTypeCallProperty;
export function isObjectTypeIndexer(node: object, opts?: object): node is ObjectTypeIndexer;
export function isObjectTypeProperty(node: object, opts?: object): node is ObjectTypeProperty;
export function isQualifiedTypeIdentifier(node: object, opts?: object): node is QualifiedTypeIdentifier;
export function isUnionTypeAnnotation(node: object, opts?: object): node is UnionTypeAnnotation;
export function isVoidTypeAnnotation(node: object, opts?: object): node is VoidTypeAnnotation;
export function isJSXAttribute(node: object, opts?: object): node is JSXAttribute;
export function isJSXClosingElement(node: object, opts?: object): node is JSXClosingElement;
export function isJSXElement(node: object, opts?: object): node is JSXElement;
export function isJSXEmptyExpression(node: object, opts?: object): node is JSXEmptyExpression;
export function isJSXExpressionContainer(node: object, opts?: object): node is JSXExpressionContainer;
export function isJSXIdentifier(node: object, opts?: object): node is JSXIdentifier;
export function isJSXMemberExpression(node: object, opts?: object): node is JSXMemberExpression;
export function isJSXNamespacedName(node: object, opts?: object): node is JSXNamespacedName;
export function isJSXOpeningElement(node: object, opts?: object): node is JSXOpeningElement;
export function isJSXSpreadAttribute(node: object, opts?: object): node is JSXSpreadAttribute;
export function isJSXText(node: object, opts?: object): node is JSXText;
export function isNoop(node: object, opts?: object): node is Noop;
export function isParenthesizedExpression(node: object, opts?: object): node is ParenthesizedExpression;
export function isAwaitExpression(node: object, opts?: object): node is AwaitExpression;
export function isBindExpression(node: object, opts?: object): node is BindExpression;
export function isDecorator(node: object, opts?: object): node is Decorator;
export function isDoExpression(node: object, opts?: object): node is DoExpression;
export function isExportDefaultSpecifier(node: object, opts?: object): node is ExportDefaultSpecifier;
export function isExportNamespaceSpecifier(node: object, opts?: object): node is ExportNamespaceSpecifier;
export function isRestProperty(node: object, opts?: object): node is RestProperty;
export function isSpreadProperty(node: object, opts?: object): node is SpreadProperty;
export function isExpression(node: object, opts?: object): node is Expression;
export function isBinary(node: object, opts?: object): node is Binary;
export function isScopable(node: object, opts?: object): node is Scopable;
export function isBlockParent(node: object, opts?: object): node is BlockParent;
export function isBlock(node: object, opts?: object): node is Block;
export function isStatement(node: object, opts?: object): node is Statement;
export function isTerminatorless(node: object, opts?: object): node is Terminatorless;
export function isCompletionStatement(node: object, opts?: object): node is CompletionStatement;
export function isConditional(node: object, opts?: object): node is Conditional;
export function isLoop(node: object, opts?: object): node is Loop;
export function isWhile(node: object, opts?: object): node is While;
export function isExpressionWrapper(node: object, opts?: object): node is ExpressionWrapper;
export function isFor(node: object, opts?: object): node is For;
export function isForXStatement(node: object, opts?: object): node is ForXStatement;
export function isArrayExpression(node: any, opts?: object): node is ArrayExpression;
export function isAssignmentExpression(node: any, opts?: object): node is AssignmentExpression;
export function isBinaryExpression(node: any, opts?: object): node is BinaryExpression;
export function isDirective(node: any, opts?: object): node is Directive;
export function isDirectiveLiteral(node: any, opts?: object): node is DirectiveLiteral;
export function isBlockStatement(node: any, opts?: object): node is BlockStatement;
export function isBreakStatement(node: any, opts?: object): node is BreakStatement;
export function isCallExpression(node: any, opts?: object): node is CallExpression;
export function isCatchClause(node: any, opts?: object): node is CatchClause;
export function isConditionalExpression(node: any, opts?: object): node is ConditionalExpression;
export function isContinueStatement(node: any, opts?: object): node is ContinueStatement;
export function isDebuggerStatement(node: any, opts?: object): node is DebuggerStatement;
export function isDoWhileStatement(node: any, opts?: object): node is DoWhileStatement;
export function isEmptyStatement(node: any, opts?: object): node is EmptyStatement;
export function isExpressionStatement(node: any, opts?: object): node is ExpressionStatement;
export function isFile(node: any, opts?: object): node is File;
export function isForInStatement(node: any, opts?: object): node is ForInStatement;
export function isForStatement(node: any, opts?: object): node is ForStatement;
export function isFunctionDeclaration(node: any, opts?: object): node is FunctionDeclaration;
export function isFunctionExpression(node: any, opts?: object): node is FunctionExpression;
export function isIdentifier(node: any, opts?: object): node is Identifier;
export function isIfStatement(node: any, opts?: object): node is IfStatement;
export function isLabeledStatement(node: any, opts?: object): node is LabeledStatement;
export function isStringLiteral(node: any, opts?: object): node is StringLiteral;
export function isNumericLiteral(node: any, opts?: object): node is NumericLiteral;
export function isNullLiteral(node: any, opts?: object): node is NullLiteral;
export function isBooleanLiteral(node: any, opts?: object): node is BooleanLiteral;
export function isRegExpLiteral(node: any, opts?: object): node is RegExpLiteral;
export function isLogicalExpression(node: any, opts?: object): node is LogicalExpression;
export function isMemberExpression(node: any, opts?: object): node is MemberExpression;
export function isNewExpression(node: any, opts?: object): node is NewExpression;
export function isProgram(node: any, opts?: object): node is Program;
export function isObjectExpression(node: any, opts?: object): node is ObjectExpression;
export function isObjectMethod(node: any, opts?: object): node is ObjectMethod;
export function isObjectProperty(node: any, opts?: object): node is ObjectProperty;
export function isRestElement(node: any, opts?: object): node is RestElement;
export function isReturnStatement(node: any, opts?: object): node is ReturnStatement;
export function isSequenceExpression(node: any, opts?: object): node is SequenceExpression;
export function isSwitchCase(node: any, opts?: object): node is SwitchCase;
export function isSwitchStatement(node: any, opts?: object): node is SwitchStatement;
export function isThisExpression(node: any, opts?: object): node is ThisExpression;
export function isThrowStatement(node: any, opts?: object): node is ThrowStatement;
export function isTryStatement(node: any, opts?: object): node is TryStatement;
export function isUnaryExpression(node: any, opts?: object): node is UnaryExpression;
export function isUpdateExpression(node: any, opts?: object): node is UpdateExpression;
export function isVariableDeclaration(node: any, opts?: object): node is VariableDeclaration;
export function isVariableDeclarator(node: any, opts?: object): node is VariableDeclarator;
export function isWhileStatement(node: any, opts?: object): node is WhileStatement;
export function isWithStatement(node: any, opts?: object): node is WithStatement;
export function isAssignmentPattern(node: any, opts?: object): node is AssignmentPattern;
export function isArrayPattern(node: any, opts?: object): node is ArrayPattern;
export function isArrowFunctionExpression(node: any, opts?: object): node is ArrowFunctionExpression;
export function isClassBody(node: any, opts?: object): node is ClassBody;
export function isClassDeclaration(node: any, opts?: object): node is ClassDeclaration;
export function isClassExpression(node: any, opts?: object): node is ClassExpression;
export function isExportAllDeclaration(node: any, opts?: object): node is ExportAllDeclaration;
export function isExportDefaultDeclaration(node: any, opts?: object): node is ExportDefaultDeclaration;
export function isExportNamedDeclaration(node: any, opts?: object): node is ExportNamedDeclaration;
export function isExportSpecifier(node: any, opts?: object): node is ExportSpecifier;
export function isForOfStatement(node: any, opts?: object): node is ForOfStatement;
export function isImportDeclaration(node: any, opts?: object): node is ImportDeclaration;
export function isImportDefaultSpecifier(node: any, opts?: object): node is ImportDefaultSpecifier;
export function isImportNamespaceSpecifier(node: any, opts?: object): node is ImportNamespaceSpecifier;
export function isImportSpecifier(node: any, opts?: object): node is ImportSpecifier;
export function isMetaProperty(node: any, opts?: object): node is MetaProperty;
export function isClassMethod(node: any, opts?: object): node is ClassMethod;
export function isObjectPattern(node: any, opts?: object): node is ObjectPattern;
export function isSpreadElement(node: any, opts?: object): node is SpreadElement;
export function isSuper(node: any, opts?: object): node is Super;
export function isTaggedTemplateExpression(node: any, opts?: object): node is TaggedTemplateExpression;
export function isTemplateElement(node: any, opts?: object): node is TemplateElement;
export function isTemplateLiteral(node: any, opts?: object): node is TemplateLiteral;
export function isYieldExpression(node: any, opts?: object): node is YieldExpression;
export function isAnyTypeAnnotation(node: any, opts?: object): node is AnyTypeAnnotation;
export function isArrayTypeAnnotation(node: any, opts?: object): node is ArrayTypeAnnotation;
export function isBooleanTypeAnnotation(node: any, opts?: object): node is BooleanTypeAnnotation;
export function isBooleanLiteralTypeAnnotation(node: any, opts?: object): node is BooleanLiteralTypeAnnotation;
export function isNullLiteralTypeAnnotation(node: any, opts?: object): node is NullLiteralTypeAnnotation;
export function isClassImplements(node: any, opts?: object): node is ClassImplements;
export function isClassProperty(node: any, opts?: object): node is ClassProperty;
export function isDeclareClass(node: any, opts?: object): node is DeclareClass;
export function isDeclareFunction(node: any, opts?: object): node is DeclareFunction;
export function isDeclareInterface(node: any, opts?: object): node is DeclareInterface;
export function isDeclareModule(node: any, opts?: object): node is DeclareModule;
export function isDeclareTypeAlias(node: any, opts?: object): node is DeclareTypeAlias;
export function isDeclareVariable(node: any, opts?: object): node is DeclareVariable;
export function isExistentialTypeParam(node: any, opts?: object): node is ExistentialTypeParam;
export function isFunctionTypeAnnotation(node: any, opts?: object): node is FunctionTypeAnnotation;
export function isFunctionTypeParam(node: any, opts?: object): node is FunctionTypeParam;
export function isGenericTypeAnnotation(node: any, opts?: object): node is GenericTypeAnnotation;
export function isInterfaceExtends(node: any, opts?: object): node is InterfaceExtends;
export function isInterfaceDeclaration(node: any, opts?: object): node is InterfaceDeclaration;
export function isIntersectionTypeAnnotation(node: any, opts?: object): node is IntersectionTypeAnnotation;
export function isMixedTypeAnnotation(node: any, opts?: object): node is MixedTypeAnnotation;
export function isNullableTypeAnnotation(node: any, opts?: object): node is NullableTypeAnnotation;
export function isNumericLiteralTypeAnnotation(node: any, opts?: object): node is NumericLiteralTypeAnnotation;
export function isNumberTypeAnnotation(node: any, opts?: object): node is NumberTypeAnnotation;
export function isStringLiteralTypeAnnotation(node: any, opts?: object): node is StringLiteralTypeAnnotation;
export function isStringTypeAnnotation(node: any, opts?: object): node is StringTypeAnnotation;
export function isThisTypeAnnotation(node: any, opts?: object): node is ThisTypeAnnotation;
export function isTupleTypeAnnotation(node: any, opts?: object): node is TupleTypeAnnotation;
export function isTypeofTypeAnnotation(node: any, opts?: object): node is TypeofTypeAnnotation;
export function isTypeAlias(node: any, opts?: object): node is TypeAlias;
export function isTypeAnnotation(node: any, opts?: object): node is TypeAnnotation;
export function isTypeCastExpression(node: any, opts?: object): node is TypeCastExpression;
export function isTypeParameter(node: any, opts?: object): node is TypeParameter;
export function isTypeParameterDeclaration(node: any, opts?: object): node is TypeParameterDeclaration;
export function isTypeParameterInstantiation(node: any, opts?: object): node is TypeParameterInstantiation;
export function isObjectTypeAnnotation(node: any, opts?: object): node is ObjectTypeAnnotation;
export function isObjectTypeCallProperty(node: any, opts?: object): node is ObjectTypeCallProperty;
export function isObjectTypeIndexer(node: any, opts?: object): node is ObjectTypeIndexer;
export function isObjectTypeProperty(node: any, opts?: object): node is ObjectTypeProperty;
export function isQualifiedTypeIdentifier(node: any, opts?: object): node is QualifiedTypeIdentifier;
export function isUnionTypeAnnotation(node: any, opts?: object): node is UnionTypeAnnotation;
export function isVoidTypeAnnotation(node: any, opts?: object): node is VoidTypeAnnotation;
export function isJSXAttribute(node: any, opts?: object): node is JSXAttribute;
export function isJSXClosingElement(node: any, opts?: object): node is JSXClosingElement;
export function isJSXElement(node: any, opts?: object): node is JSXElement;
export function isJSXEmptyExpression(node: any, opts?: object): node is JSXEmptyExpression;
export function isJSXExpressionContainer(node: any, opts?: object): node is JSXExpressionContainer;
export function isJSXIdentifier(node: any, opts?: object): node is JSXIdentifier;
export function isJSXMemberExpression(node: any, opts?: object): node is JSXMemberExpression;
export function isJSXNamespacedName(node: any, opts?: object): node is JSXNamespacedName;
export function isJSXOpeningElement(node: any, opts?: object): node is JSXOpeningElement;
export function isJSXSpreadAttribute(node: any, opts?: object): node is JSXSpreadAttribute;
export function isJSXText(node: any, opts?: object): node is JSXText;
export function isNoop(node: any, opts?: object): node is Noop;
export function isParenthesizedExpression(node: any, opts?: object): node is ParenthesizedExpression;
export function isAwaitExpression(node: any, opts?: object): node is AwaitExpression;
export function isBindExpression(node: any, opts?: object): node is BindExpression;
export function isDecorator(node: any, opts?: object): node is Decorator;
export function isDoExpression(node: any, opts?: object): node is DoExpression;
export function isExportDefaultSpecifier(node: any, opts?: object): node is ExportDefaultSpecifier;
export function isExportNamespaceSpecifier(node: any, opts?: object): node is ExportNamespaceSpecifier;
export function isRestProperty(node: any, opts?: object): node is RestProperty;
export function isSpreadProperty(node: any, opts?: object): node is SpreadProperty;
export function isExpression(node: any, opts?: object): node is Expression;
export function isBinary(node: any, opts?: object): node is Binary;
export function isScopable(node: any, opts?: object): node is Scopable;
export function isBlockParent(node: any, opts?: object): node is BlockParent;
export function isBlock(node: any, opts?: object): node is Block;
export function isStatement(node: any, opts?: object): node is Statement;
export function isTerminatorless(node: any, opts?: object): node is Terminatorless;
export function isCompletionStatement(node: any, opts?: object): node is CompletionStatement;
export function isConditional(node: any, opts?: object): node is Conditional;
export function isLoop(node: any, opts?: object): node is Loop;
export function isWhile(node: any, opts?: object): node is While;
export function isExpressionWrapper(node: any, opts?: object): node is ExpressionWrapper;
export function isFor(node: any, opts?: object): node is For;
export function isForXStatement(node: any, opts?: object): node is ForXStatement;
// tslint:disable-next-line ban-types
export function isFunction(node: object, opts?: object): node is Function;
export function isFunctionParent(node: object, opts?: object): node is FunctionParent;
export function isPureish(node: object, opts?: object): node is Pureish;
export function isDeclaration(node: object, opts?: object): node is Declaration;
export function isLVal(node: object, opts?: object): node is LVal;
export function isLiteral(node: object, opts?: object): node is Literal;
export function isImmutable(node: object, opts?: object): node is Immutable;
export function isUserWhitespacable(node: object, opts?: object): node is UserWhitespacable;
export function isMethod(node: object, opts?: object): node is Method;
export function isObjectMember(node: object, opts?: object): node is ObjectMember;
export function isProperty(node: object, opts?: object): node is Property;
export function isUnaryLike(node: object, opts?: object): node is UnaryLike;
export function isPattern(node: object, opts?: object): node is Pattern;
export function isClass(node: object, opts?: object): node is Class;
export function isModuleDeclaration(node: object, opts?: object): node is ModuleDeclaration;
export function isExportDeclaration(node: object, opts?: object): node is ExportDeclaration;
export function isModuleSpecifier(node: object, opts?: object): node is ModuleSpecifier;
export function isFlow(node: object, opts?: object): node is Flow;
export function isFlowBaseAnnotation(node: object, opts?: object): node is FlowBaseAnnotation;
export function isFlowDeclaration(node: object, opts?: object): node is FlowDeclaration;
export function isJSX(node: object, opts?: object): node is JSX;
export function isNumberLiteral(node: object, opts?: object): node is NumericLiteral;
export function isRegexLiteral(node: object, opts?: object): node is RegExpLiteral;
export function isFunction(node: any, opts?: object): node is Function;
export function isFunctionParent(node: any, opts?: object): node is FunctionParent;
export function isPureish(node: any, opts?: object): node is Pureish;
export function isDeclaration(node: any, opts?: object): node is Declaration;
export function isLVal(node: any, opts?: object): node is LVal;
export function isLiteral(node: any, opts?: object): node is Literal;
export function isImmutable(node: any, opts?: object): node is Immutable;
export function isUserWhitespacable(node: any, opts?: object): node is UserWhitespacable;
export function isMethod(node: any, opts?: object): node is Method;
export function isObjectMember(node: any, opts?: object): node is ObjectMember;
export function isProperty(node: any, opts?: object): node is Property;
export function isUnaryLike(node: any, opts?: object): node is UnaryLike;
export function isPattern(node: any, opts?: object): node is Pattern;
export function isClass(node: any, opts?: object): node is Class;
export function isModuleDeclaration(node: any, opts?: object): node is ModuleDeclaration;
export function isExportDeclaration(node: any, opts?: object): node is ExportDeclaration;
export function isModuleSpecifier(node: any, opts?: object): node is ModuleSpecifier;
export function isFlow(node: any, opts?: object): node is Flow;
export function isFlowBaseAnnotation(node: any, opts?: object): node is FlowBaseAnnotation;
export function isFlowDeclaration(node: any, opts?: object): node is FlowDeclaration;
export function isJSX(node: any, opts?: object): node is JSX;
export function isNumberLiteral(node: any, opts?: object): node is NumericLiteral;
export function isRegexLiteral(node: any, opts?: object): node is RegExpLiteral;
export function isReferencedIdentifier(node: object, opts?: object): node is Identifier | JSXIdentifier;
export function isReferencedMemberExpression(node: object, opts?: object): node is MemberExpression;
export function isBindingIdentifier(node: object, opts?: object): node is Identifier;
export function isScope(node: object, opts?: object): node is Scopable;
export function isReferenced(node: object, opts?: object): boolean;
export function isBlockScoped(node: object, opts?: object): node is FunctionDeclaration | ClassDeclaration | VariableDeclaration;
export function isVar(node: object, opts?: object): node is VariableDeclaration;
export function isUser(node: object, opts?: object): boolean;
export function isGenerated(node: object, opts?: object): boolean;
export function isPure(node: object, opts?: object): boolean;
export function isReferencedIdentifier(node: any, opts?: object): node is Identifier | JSXIdentifier;
export function isReferencedMemberExpression(node: any, opts?: object): node is MemberExpression;
export function isBindingIdentifier(node: any, opts?: object): node is Identifier;
export function isScope(node: any, opts?: object): node is Scopable;
export function isReferenced(node: any, opts?: object): boolean;
export function isBlockScoped(node: any, opts?: object): node is FunctionDeclaration | ClassDeclaration | VariableDeclaration;
export function isVar(node: any, opts?: object): node is VariableDeclaration;
export function isUser(node: any, opts?: object): boolean;
export function isGenerated(node: any, opts?: object): boolean;
export function isPure(node: any, opts?: object): boolean;
export function isTSAnyKeyword(node: object, opts?: object): node is TSAnyKeyword;
export function isTSArrayType(node: object, opts?: object): node is TSArrayType;
export function isTSAsExpression(node: object, opts?: object): node is TSAsExpression;
export function isTSBooleanKeyword(node: object, opts?: object): node is TSBooleanKeyword;
export function isTSCallSignatureDeclaration(node: object, opts?: object): node is TSCallSignatureDeclaration;
export function isTSConstructSignatureDeclaration(node: object, opts?: object): node is TSTypeElement;
export function isTSConstructorType(node: object, opts?: object): node is TSConstructorType;
export function isTSDeclareFunction(node: object, opts?: object): node is TSDeclareFunction;
export function isTSDeclareMethod(node: object, opts?: object): node is TSDeclareMethod;
export function isTSEnumDeclaration(node: object, opts?: object): node is TSEnumDeclaration;
export function isTSEnumMember(node: object, opts?: object): node is TSEnumMember;
export function isTSExportAssignment(node: object, opts?: object): node is TSExportAssignment;
export function isTSExpressionWithTypeArguments(node: object, opts?: object): node is TSExpressionWithTypeArguments;
export function isTSExternalModuleReference(node: object, opts?: object): node is TSExternalModuleReference;
export function isTSFunctionType(node: object, opts?: object): node is TSFunctionType;
export function isTSImportEqualsDeclaration(node: object, opts?: object): node is TSImportEqualsDeclaration;
export function isTSIndexSignature(node: object, opts?: object): node is TSIndexSignature;
export function isTSIndexedAccessType(node: object, opts?: object): node is TSIndexedAccessType;
export function isTSInterfaceBody(node: object, opts?: object): node is TSInterfaceBody;
export function isTSInterfaceDeclaration(node: object, opts?: object): node is TSInterfaceDeclaration;
export function isTSIntersectionType(node: object, opts?: object): node is TSIntersectionType;
export function isTSLiteralType(node: object, opts?: object): node is TSLiteralType;
export function isTSMappedType(node: object, opts?: object): node is TSMappedType;
export function isTSMethodSignature(node: object, opts?: object): node is TSMethodSignature;
export function isTSModuleBlock(node: object, opts?: object): node is TSModuleBlock;
export function isTSModuleDeclaration(node: object, opts?: object): node is TSModuleDeclaration;
export function isTSNamespaceExportDeclaration(node: object, opts?: object): node is TSNamespaceExportDeclaration;
export function isTSNeverKeyword(node: object, opts?: object): node is TSNeverKeyword;
export function isTSNonNullExpression(node: object, opts?: object): node is TSNonNullExpression;
export function isTSNullKeyword(node: object, opts?: object): node is TSNullKeyword;
export function isTSNumberKeyword(node: object, opts?: object): node is TSNumberKeyword;
export function isTSObjectKeyword(node: object, opts?: object): node is TSObjectKeyword;
export function isTSParameterProperty(node: object, opts?: object): node is TSParameterProperty;
export function isTSParenthesizedType(node: object, opts?: object): node is TSParenthesizedType;
export function isTSPropertySignature(node: object, opts?: object): node is TSPropertySignature;
export function isTSQualifiedName(node: object, opts?: object): node is TSQualifiedName;
export function isTSStringKeyword(node: object, opts?: object): node is TSStringKeyword;
export function isTSSymbolKeyword(node: object, opts?: object): node is TSSymbolKeyword;
export function isTSThisType(node: object, opts?: object): node is TSThisType;
export function isTSTupleType(node: object, opts?: object): node is TSTupleType;
export function isTSTypeAliasDeclaration(node: object, opts?: object): node is TSTypeAliasDeclaration;
export function isTSTypeAnnotation(node: object, opts?: object): node is TSTypeAnnotation;
export function isTSTypeAssertion(node: object, opts?: object): node is TSTypeAssertion;
export function isTSTypeLiteral(node: object, opts?: object): node is TSTypeLiteral;
export function isTSTypeOperator(node: object, opts?: object): node is TSTypeOperator;
export function isTSTypeParameter(node: object, opts?: object): node is TSTypeParameter;
export function isTSTypeParameterDeclaration(node: object, opts?: object): node is TSTypeParameterDeclaration;
export function isTSTypeParameterInstantiation(node: object, opts?: object): node is TSTypeParameterInstantiation;
export function isTSTypePredicate(node: object, opts?: object): node is TSTypePredicate;
export function isTSTypeQuery(node: object, opts?: object): node is TSTypeQuery;
export function isTSTypeReference(node: object, opts?: object): node is TSTypeReference;
export function isTSUndefinedKeyword(node: object, opts?: object): node is TSUndefinedKeyword;
export function isTSUnionType(node: object, opts?: object): node is TSUnionType;
export function isTSVoidKeyword(node: object, opts?: object): node is TSVoidKeyword;
export function isTSAnyKeyword(node: any, opts?: object): node is TSAnyKeyword;
export function isTSArrayType(node: any, opts?: object): node is TSArrayType;
export function isTSAsExpression(node: any, opts?: object): node is TSAsExpression;
export function isTSBooleanKeyword(node: any, opts?: object): node is TSBooleanKeyword;
export function isTSCallSignatureDeclaration(node: any, opts?: object): node is TSCallSignatureDeclaration;
export function isTSConstructSignatureDeclaration(node: any, opts?: object): node is TSTypeElement;
export function isTSConstructorType(node: any, opts?: object): node is TSConstructorType;
export function isTSDeclareFunction(node: any, opts?: object): node is TSDeclareFunction;
export function isTSDeclareMethod(node: any, opts?: object): node is TSDeclareMethod;
export function isTSEnumDeclaration(node: any, opts?: object): node is TSEnumDeclaration;
export function isTSEnumMember(node: any, opts?: object): node is TSEnumMember;
export function isTSExportAssignment(node: any, opts?: object): node is TSExportAssignment;
export function isTSExpressionWithTypeArguments(node: any, opts?: object): node is TSExpressionWithTypeArguments;
export function isTSExternalModuleReference(node: any, opts?: object): node is TSExternalModuleReference;
export function isTSFunctionType(node: any, opts?: object): node is TSFunctionType;
export function isTSImportEqualsDeclaration(node: any, opts?: object): node is TSImportEqualsDeclaration;
export function isTSIndexSignature(node: any, opts?: object): node is TSIndexSignature;
export function isTSIndexedAccessType(node: any, opts?: object): node is TSIndexedAccessType;
export function isTSInterfaceBody(node: any, opts?: object): node is TSInterfaceBody;
export function isTSInterfaceDeclaration(node: any, opts?: object): node is TSInterfaceDeclaration;
export function isTSIntersectionType(node: any, opts?: object): node is TSIntersectionType;
export function isTSLiteralType(node: any, opts?: object): node is TSLiteralType;
export function isTSMappedType(node: any, opts?: object): node is TSMappedType;
export function isTSMethodSignature(node: any, opts?: object): node is TSMethodSignature;
export function isTSModuleBlock(node: any, opts?: object): node is TSModuleBlock;
export function isTSModuleDeclaration(node: any, opts?: object): node is TSModuleDeclaration;
export function isTSNamespaceExportDeclaration(node: any, opts?: object): node is TSNamespaceExportDeclaration;
export function isTSNeverKeyword(node: any, opts?: object): node is TSNeverKeyword;
export function isTSNonNullExpression(node: any, opts?: object): node is TSNonNullExpression;
export function isTSNullKeyword(node: any, opts?: object): node is TSNullKeyword;
export function isTSNumberKeyword(node: any, opts?: object): node is TSNumberKeyword;
export function isTSObjectKeyword(node: any, opts?: object): node is TSObjectKeyword;
export function isTSParameterProperty(node: any, opts?: object): node is TSParameterProperty;
export function isTSParenthesizedType(node: any, opts?: object): node is TSParenthesizedType;
export function isTSPropertySignature(node: any, opts?: object): node is TSPropertySignature;
export function isTSQualifiedName(node: any, opts?: object): node is TSQualifiedName;
export function isTSStringKeyword(node: any, opts?: object): node is TSStringKeyword;
export function isTSSymbolKeyword(node: any, opts?: object): node is TSSymbolKeyword;
export function isTSThisType(node: any, opts?: object): node is TSThisType;
export function isTSTupleType(node: any, opts?: object): node is TSTupleType;
export function isTSTypeAliasDeclaration(node: any, opts?: object): node is TSTypeAliasDeclaration;
export function isTSTypeAnnotation(node: any, opts?: object): node is TSTypeAnnotation;
export function isTSTypeAssertion(node: any, opts?: object): node is TSTypeAssertion;
export function isTSTypeLiteral(node: any, opts?: object): node is TSTypeLiteral;
export function isTSTypeOperator(node: any, opts?: object): node is TSTypeOperator;
export function isTSTypeParameter(node: any, opts?: object): node is TSTypeParameter;
export function isTSTypeParameterDeclaration(node: any, opts?: object): node is TSTypeParameterDeclaration;
export function isTSTypeParameterInstantiation(node: any, opts?: object): node is TSTypeParameterInstantiation;
export function isTSTypePredicate(node: any, opts?: object): node is TSTypePredicate;
export function isTSTypeQuery(node: any, opts?: object): node is TSTypeQuery;
export function isTSTypeReference(node: any, opts?: object): node is TSTypeReference;
export function isTSUndefinedKeyword(node: any, opts?: object): node is TSUndefinedKeyword;
export function isTSUnionType(node: any, opts?: object): node is TSUnionType;
export function isTSVoidKeyword(node: any, opts?: object): node is TSVoidKeyword;
// React specific
export interface ReactHelpers {
@ -1762,231 +1762,231 @@ export interface ReactHelpers {
}
export const react: ReactHelpers;
export function assertArrayExpression(node: object, opts?: object): void;
export function assertAssignmentExpression(node: object, opts?: object): void;
export function assertBinaryExpression(node: object, opts?: object): void;
export function assertDirective(node: object, opts?: object): void;
export function assertDirectiveLiteral(node: object, opts?: object): void;
export function assertBlockStatement(node: object, opts?: object): void;
export function assertBreakStatement(node: object, opts?: object): void;
export function assertCallExpression(node: object, opts?: object): void;
export function assertCatchClause(node: object, opts?: object): void;
export function assertConditionalExpression(node: object, opts?: object): void;
export function assertContinueStatement(node: object, opts?: object): void;
export function assertDebuggerStatement(node: object, opts?: object): void;
export function assertDoWhileStatement(node: object, opts?: object): void;
export function assertEmptyStatement(node: object, opts?: object): void;
export function assertExpressionStatement(node: object, opts?: object): void;
export function assertFile(node: object, opts?: object): void;
export function assertForInStatement(node: object, opts?: object): void;
export function assertForStatement(node: object, opts?: object): void;
export function assertFunctionDeclaration(node: object, opts?: object): void;
export function assertFunctionExpression(node: object, opts?: object): void;
export function assertIdentifier(node: object, opts?: object): void;
export function assertIfStatement(node: object, opts?: object): void;
export function assertLabeledStatement(node: object, opts?: object): void;
export function assertStringLiteral(node: object, opts?: object): void;
export function assertNumericLiteral(node: object, opts?: object): void;
export function assertNullLiteral(node: object, opts?: object): void;
export function assertBooleanLiteral(node: object, opts?: object): void;
export function assertRegExpLiteral(node: object, opts?: object): void;
export function assertLogicalExpression(node: object, opts?: object): void;
export function assertMemberExpression(node: object, opts?: object): void;
export function assertNewExpression(node: object, opts?: object): void;
export function assertProgram(node: object, opts?: object): void;
export function assertObjectExpression(node: object, opts?: object): void;
export function assertObjectMethod(node: object, opts?: object): void;
export function assertObjectProperty(node: object, opts?: object): void;
export function assertRestElement(node: object, opts?: object): void;
export function assertReturnStatement(node: object, opts?: object): void;
export function assertSequenceExpression(node: object, opts?: object): void;
export function assertSwitchCase(node: object, opts?: object): void;
export function assertSwitchStatement(node: object, opts?: object): void;
export function assertThisExpression(node: object, opts?: object): void;
export function assertThrowStatement(node: object, opts?: object): void;
export function assertTryStatement(node: object, opts?: object): void;
export function assertUnaryExpression(node: object, opts?: object): void;
export function assertUpdateExpression(node: object, opts?: object): void;
export function assertVariableDeclaration(node: object, opts?: object): void;
export function assertVariableDeclarator(node: object, opts?: object): void;
export function assertWhileStatement(node: object, opts?: object): void;
export function assertWithStatement(node: object, opts?: object): void;
export function assertAssignmentPattern(node: object, opts?: object): void;
export function assertArrayPattern(node: object, opts?: object): void;
export function assertArrowFunctionExpression(node: object, opts?: object): void;
export function assertClassBody(node: object, opts?: object): void;
export function assertClassDeclaration(node: object, opts?: object): void;
export function assertClassExpression(node: object, opts?: object): void;
export function assertExportAllDeclaration(node: object, opts?: object): void;
export function assertExportDefaultDeclaration(node: object, opts?: object): void;
export function assertExportNamedDeclaration(node: object, opts?: object): void;
export function assertExportSpecifier(node: object, opts?: object): void;
export function assertForOfStatement(node: object, opts?: object): void;
export function assertImportDeclaration(node: object, opts?: object): void;
export function assertImportDefaultSpecifier(node: object, opts?: object): void;
export function assertImportNamespaceSpecifier(node: object, opts?: object): void;
export function assertImportSpecifier(node: object, opts?: object): void;
export function assertMetaProperty(node: object, opts?: object): void;
export function assertClassMethod(node: object, opts?: object): void;
export function assertObjectPattern(node: object, opts?: object): void;
export function assertSpreadElement(node: object, opts?: object): void;
export function assertSuper(node: object, opts?: object): void;
export function assertTaggedTemplateExpression(node: object, opts?: object): void;
export function assertTemplateElement(node: object, opts?: object): void;
export function assertTemplateLiteral(node: object, opts?: object): void;
export function assertYieldExpression(node: object, opts?: object): void;
export function assertAnyTypeAnnotation(node: object, opts?: object): void;
export function assertArrayTypeAnnotation(node: object, opts?: object): void;
export function assertBooleanTypeAnnotation(node: object, opts?: object): void;
export function assertBooleanLiteralTypeAnnotation(node: object, opts?: object): void;
export function assertNullLiteralTypeAnnotation(node: object, opts?: object): void;
export function assertClassImplements(node: object, opts?: object): void;
export function assertClassProperty(node: object, opts?: object): void;
export function assertDeclareClass(node: object, opts?: object): void;
export function assertDeclareFunction(node: object, opts?: object): void;
export function assertDeclareInterface(node: object, opts?: object): void;
export function assertDeclareModule(node: object, opts?: object): void;
export function assertDeclareTypeAlias(node: object, opts?: object): void;
export function assertDeclareVariable(node: object, opts?: object): void;
export function assertExistentialTypeParam(node: object, opts?: object): void;
export function assertFunctionTypeAnnotation(node: object, opts?: object): void;
export function assertFunctionTypeParam(node: object, opts?: object): void;
export function assertGenericTypeAnnotation(node: object, opts?: object): void;
export function assertInterfaceExtends(node: object, opts?: object): void;
export function assertInterfaceDeclaration(node: object, opts?: object): void;
export function assertIntersectionTypeAnnotation(node: object, opts?: object): void;
export function assertMixedTypeAnnotation(node: object, opts?: object): void;
export function assertNullableTypeAnnotation(node: object, opts?: object): void;
export function assertNumericLiteralTypeAnnotation(node: object, opts?: object): void;
export function assertNumberTypeAnnotation(node: object, opts?: object): void;
export function assertStringLiteralTypeAnnotation(node: object, opts?: object): void;
export function assertStringTypeAnnotation(node: object, opts?: object): void;
export function assertThisTypeAnnotation(node: object, opts?: object): void;
export function assertTupleTypeAnnotation(node: object, opts?: object): void;
export function assertTypeofTypeAnnotation(node: object, opts?: object): void;
export function assertTypeAlias(node: object, opts?: object): void;
export function assertTypeAnnotation(node: object, opts?: object): void;
export function assertTypeCastExpression(node: object, opts?: object): void;
export function assertTypeParameter(node: object, opts?: object): void;
export function assertTypeParameterDeclaration(node: object, opts?: object): void;
export function assertTypeParameterInstantiation(node: object, opts?: object): void;
export function assertObjectTypeAnnotation(node: object, opts?: object): void;
export function assertObjectTypeCallProperty(node: object, opts?: object): void;
export function assertObjectTypeIndexer(node: object, opts?: object): void;
export function assertObjectTypeProperty(node: object, opts?: object): void;
export function assertQualifiedTypeIdentifier(node: object, opts?: object): void;
export function assertUnionTypeAnnotation(node: object, opts?: object): void;
export function assertVoidTypeAnnotation(node: object, opts?: object): void;
export function assertJSXAttribute(node: object, opts?: object): void;
export function assertJSXClosingElement(node: object, opts?: object): void;
export function assertJSXElement(node: object, opts?: object): void;
export function assertJSXEmptyExpression(node: object, opts?: object): void;
export function assertJSXExpressionContainer(node: object, opts?: object): void;
export function assertJSXIdentifier(node: object, opts?: object): void;
export function assertJSXMemberExpression(node: object, opts?: object): void;
export function assertJSXNamespacedName(node: object, opts?: object): void;
export function assertJSXOpeningElement(node: object, opts?: object): void;
export function assertJSXSpreadAttribute(node: object, opts?: object): void;
export function assertJSXText(node: object, opts?: object): void;
export function assertNoop(node: object, opts?: object): void;
export function assertParenthesizedExpression(node: object, opts?: object): void;
export function assertAwaitExpression(node: object, opts?: object): void;
export function assertBindExpression(node: object, opts?: object): void;
export function assertDecorator(node: object, opts?: object): void;
export function assertDoExpression(node: object, opts?: object): void;
export function assertExportDefaultSpecifier(node: object, opts?: object): void;
export function assertExportNamespaceSpecifier(node: object, opts?: object): void;
export function assertRestProperty(node: object, opts?: object): void;
export function assertSpreadProperty(node: object, opts?: object): void;
export function assertExpression(node: object, opts?: object): void;
export function assertBinary(node: object, opts?: object): void;
export function assertScopable(node: object, opts?: object): void;
export function assertBlockParent(node: object, opts?: object): void;
export function assertBlock(node: object, opts?: object): void;
export function assertStatement(node: object, opts?: object): void;
export function assertTerminatorless(node: object, opts?: object): void;
export function assertCompletionStatement(node: object, opts?: object): void;
export function assertConditional(node: object, opts?: object): void;
export function assertLoop(node: object, opts?: object): void;
export function assertWhile(node: object, opts?: object): void;
export function assertExpressionWrapper(node: object, opts?: object): void;
export function assertFor(node: object, opts?: object): void;
export function assertForXStatement(node: object, opts?: object): void;
export function assertFunction(node: object, opts?: object): void;
export function assertFunctionParent(node: object, opts?: object): void;
export function assertPureish(node: object, opts?: object): void;
export function assertDeclaration(node: object, opts?: object): void;
export function assertLVal(node: object, opts?: object): void;
export function assertLiteral(node: object, opts?: object): void;
export function assertImmutable(node: object, opts?: object): void;
export function assertUserWhitespacable(node: object, opts?: object): void;
export function assertMethod(node: object, opts?: object): void;
export function assertObjectMember(node: object, opts?: object): void;
export function assertProperty(node: object, opts?: object): void;
export function assertUnaryLike(node: object, opts?: object): void;
export function assertPattern(node: object, opts?: object): void;
export function assertClass(node: object, opts?: object): void;
export function assertModuleDeclaration(node: object, opts?: object): void;
export function assertExportDeclaration(node: object, opts?: object): void;
export function assertModuleSpecifier(node: object, opts?: object): void;
export function assertFlow(node: object, opts?: object): void;
export function assertFlowBaseAnnotation(node: object, opts?: object): void;
export function assertFlowDeclaration(node: object, opts?: object): void;
export function assertJSX(node: object, opts?: object): void;
export function assertNumberLiteral(node: object, opts?: object): void;
export function assertRegexLiteral(node: object, opts?: object): void;
export function assertArrayExpression(node: any, opts?: object): void;
export function assertAssignmentExpression(node: any, opts?: object): void;
export function assertBinaryExpression(node: any, opts?: object): void;
export function assertDirective(node: any, opts?: object): void;
export function assertDirectiveLiteral(node: any, opts?: object): void;
export function assertBlockStatement(node: any, opts?: object): void;
export function assertBreakStatement(node: any, opts?: object): void;
export function assertCallExpression(node: any, opts?: object): void;
export function assertCatchClause(node: any, opts?: object): void;
export function assertConditionalExpression(node: any, opts?: object): void;
export function assertContinueStatement(node: any, opts?: object): void;
export function assertDebuggerStatement(node: any, opts?: object): void;
export function assertDoWhileStatement(node: any, opts?: object): void;
export function assertEmptyStatement(node: any, opts?: object): void;
export function assertExpressionStatement(node: any, opts?: object): void;
export function assertFile(node: any, opts?: object): void;
export function assertForInStatement(node: any, opts?: object): void;
export function assertForStatement(node: any, opts?: object): void;
export function assertFunctionDeclaration(node: any, opts?: object): void;
export function assertFunctionExpression(node: any, opts?: object): void;
export function assertIdentifier(node: any, opts?: object): void;
export function assertIfStatement(node: any, opts?: object): void;
export function assertLabeledStatement(node: any, opts?: object): void;
export function assertStringLiteral(node: any, opts?: object): void;
export function assertNumericLiteral(node: any, opts?: object): void;
export function assertNullLiteral(node: any, opts?: object): void;
export function assertBooleanLiteral(node: any, opts?: object): void;
export function assertRegExpLiteral(node: any, opts?: object): void;
export function assertLogicalExpression(node: any, opts?: object): void;
export function assertMemberExpression(node: any, opts?: object): void;
export function assertNewExpression(node: any, opts?: object): void;
export function assertProgram(node: any, opts?: object): void;
export function assertObjectExpression(node: any, opts?: object): void;
export function assertObjectMethod(node: any, opts?: object): void;
export function assertObjectProperty(node: any, opts?: object): void;
export function assertRestElement(node: any, opts?: object): void;
export function assertReturnStatement(node: any, opts?: object): void;
export function assertSequenceExpression(node: any, opts?: object): void;
export function assertSwitchCase(node: any, opts?: object): void;
export function assertSwitchStatement(node: any, opts?: object): void;
export function assertThisExpression(node: any, opts?: object): void;
export function assertThrowStatement(node: any, opts?: object): void;
export function assertTryStatement(node: any, opts?: object): void;
export function assertUnaryExpression(node: any, opts?: object): void;
export function assertUpdateExpression(node: any, opts?: object): void;
export function assertVariableDeclaration(node: any, opts?: object): void;
export function assertVariableDeclarator(node: any, opts?: object): void;
export function assertWhileStatement(node: any, opts?: object): void;
export function assertWithStatement(node: any, opts?: object): void;
export function assertAssignmentPattern(node: any, opts?: object): void;
export function assertArrayPattern(node: any, opts?: object): void;
export function assertArrowFunctionExpression(node: any, opts?: object): void;
export function assertClassBody(node: any, opts?: object): void;
export function assertClassDeclaration(node: any, opts?: object): void;
export function assertClassExpression(node: any, opts?: object): void;
export function assertExportAllDeclaration(node: any, opts?: object): void;
export function assertExportDefaultDeclaration(node: any, opts?: object): void;
export function assertExportNamedDeclaration(node: any, opts?: object): void;
export function assertExportSpecifier(node: any, opts?: object): void;
export function assertForOfStatement(node: any, opts?: object): void;
export function assertImportDeclaration(node: any, opts?: object): void;
export function assertImportDefaultSpecifier(node: any, opts?: object): void;
export function assertImportNamespaceSpecifier(node: any, opts?: object): void;
export function assertImportSpecifier(node: any, opts?: object): void;
export function assertMetaProperty(node: any, opts?: object): void;
export function assertClassMethod(node: any, opts?: object): void;
export function assertObjectPattern(node: any, opts?: object): void;
export function assertSpreadElement(node: any, opts?: object): void;
export function assertSuper(node: any, opts?: object): void;
export function assertTaggedTemplateExpression(node: any, opts?: object): void;
export function assertTemplateElement(node: any, opts?: object): void;
export function assertTemplateLiteral(node: any, opts?: object): void;
export function assertYieldExpression(node: any, opts?: object): void;
export function assertAnyTypeAnnotation(node: any, opts?: object): void;
export function assertArrayTypeAnnotation(node: any, opts?: object): void;
export function assertBooleanTypeAnnotation(node: any, opts?: object): void;
export function assertBooleanLiteralTypeAnnotation(node: any, opts?: object): void;
export function assertNullLiteralTypeAnnotation(node: any, opts?: object): void;
export function assertClassImplements(node: any, opts?: object): void;
export function assertClassProperty(node: any, opts?: object): void;
export function assertDeclareClass(node: any, opts?: object): void;
export function assertDeclareFunction(node: any, opts?: object): void;
export function assertDeclareInterface(node: any, opts?: object): void;
export function assertDeclareModule(node: any, opts?: object): void;
export function assertDeclareTypeAlias(node: any, opts?: object): void;
export function assertDeclareVariable(node: any, opts?: object): void;
export function assertExistentialTypeParam(node: any, opts?: object): void;
export function assertFunctionTypeAnnotation(node: any, opts?: object): void;
export function assertFunctionTypeParam(node: any, opts?: object): void;
export function assertGenericTypeAnnotation(node: any, opts?: object): void;
export function assertInterfaceExtends(node: any, opts?: object): void;
export function assertInterfaceDeclaration(node: any, opts?: object): void;
export function assertIntersectionTypeAnnotation(node: any, opts?: object): void;
export function assertMixedTypeAnnotation(node: any, opts?: object): void;
export function assertNullableTypeAnnotation(node: any, opts?: object): void;
export function assertNumericLiteralTypeAnnotation(node: any, opts?: object): void;
export function assertNumberTypeAnnotation(node: any, opts?: object): void;
export function assertStringLiteralTypeAnnotation(node: any, opts?: object): void;
export function assertStringTypeAnnotation(node: any, opts?: object): void;
export function assertThisTypeAnnotation(node: any, opts?: object): void;
export function assertTupleTypeAnnotation(node: any, opts?: object): void;
export function assertTypeofTypeAnnotation(node: any, opts?: object): void;
export function assertTypeAlias(node: any, opts?: object): void;
export function assertTypeAnnotation(node: any, opts?: object): void;
export function assertTypeCastExpression(node: any, opts?: object): void;
export function assertTypeParameter(node: any, opts?: object): void;
export function assertTypeParameterDeclaration(node: any, opts?: object): void;
export function assertTypeParameterInstantiation(node: any, opts?: object): void;
export function assertObjectTypeAnnotation(node: any, opts?: object): void;
export function assertObjectTypeCallProperty(node: any, opts?: object): void;
export function assertObjectTypeIndexer(node: any, opts?: object): void;
export function assertObjectTypeProperty(node: any, opts?: object): void;
export function assertQualifiedTypeIdentifier(node: any, opts?: object): void;
export function assertUnionTypeAnnotation(node: any, opts?: object): void;
export function assertVoidTypeAnnotation(node: any, opts?: object): void;
export function assertJSXAttribute(node: any, opts?: object): void;
export function assertJSXClosingElement(node: any, opts?: object): void;
export function assertJSXElement(node: any, opts?: object): void;
export function assertJSXEmptyExpression(node: any, opts?: object): void;
export function assertJSXExpressionContainer(node: any, opts?: object): void;
export function assertJSXIdentifier(node: any, opts?: object): void;
export function assertJSXMemberExpression(node: any, opts?: object): void;
export function assertJSXNamespacedName(node: any, opts?: object): void;
export function assertJSXOpeningElement(node: any, opts?: object): void;
export function assertJSXSpreadAttribute(node: any, opts?: object): void;
export function assertJSXText(node: any, opts?: object): void;
export function assertNoop(node: any, opts?: object): void;
export function assertParenthesizedExpression(node: any, opts?: object): void;
export function assertAwaitExpression(node: any, opts?: object): void;
export function assertBindExpression(node: any, opts?: object): void;
export function assertDecorator(node: any, opts?: object): void;
export function assertDoExpression(node: any, opts?: object): void;
export function assertExportDefaultSpecifier(node: any, opts?: object): void;
export function assertExportNamespaceSpecifier(node: any, opts?: object): void;
export function assertRestProperty(node: any, opts?: object): void;
export function assertSpreadProperty(node: any, opts?: object): void;
export function assertExpression(node: any, opts?: object): void;
export function assertBinary(node: any, opts?: object): void;
export function assertScopable(node: any, opts?: object): void;
export function assertBlockParent(node: any, opts?: object): void;
export function assertBlock(node: any, opts?: object): void;
export function assertStatement(node: any, opts?: object): void;
export function assertTerminatorless(node: any, opts?: object): void;
export function assertCompletionStatement(node: any, opts?: object): void;
export function assertConditional(node: any, opts?: object): void;
export function assertLoop(node: any, opts?: object): void;
export function assertWhile(node: any, opts?: object): void;
export function assertExpressionWrapper(node: any, opts?: object): void;
export function assertFor(node: any, opts?: object): void;
export function assertForXStatement(node: any, opts?: object): void;
export function assertFunction(node: any, opts?: object): void;
export function assertFunctionParent(node: any, opts?: object): void;
export function assertPureish(node: any, opts?: object): void;
export function assertDeclaration(node: any, opts?: object): void;
export function assertLVal(node: any, opts?: object): void;
export function assertLiteral(node: any, opts?: object): void;
export function assertImmutable(node: any, opts?: object): void;
export function assertUserWhitespacable(node: any, opts?: object): void;
export function assertMethod(node: any, opts?: object): void;
export function assertObjectMember(node: any, opts?: object): void;
export function assertProperty(node: any, opts?: object): void;
export function assertUnaryLike(node: any, opts?: object): void;
export function assertPattern(node: any, opts?: object): void;
export function assertClass(node: any, opts?: object): void;
export function assertModuleDeclaration(node: any, opts?: object): void;
export function assertExportDeclaration(node: any, opts?: object): void;
export function assertModuleSpecifier(node: any, opts?: object): void;
export function assertFlow(node: any, opts?: object): void;
export function assertFlowBaseAnnotation(node: any, opts?: object): void;
export function assertFlowDeclaration(node: any, opts?: object): void;
export function assertJSX(node: any, opts?: object): void;
export function assertNumberLiteral(node: any, opts?: object): void;
export function assertRegexLiteral(node: any, opts?: object): void;
export function assertTSAnyKeyword(node: object, opts?: object): void;
export function assertTSArrayType(node: object, opts?: object): void;
export function assertTSAsExpression(node: object, opts?: object): void;
export function assertTSBooleanKeyword(node: object, opts?: object): void;
export function assertTSCallSignatureDeclaration(node: object, opts?: object): void;
export function assertTSConstructSignatureDeclaration(node: object, opts?: object): void;
export function assertTSConstructorType(node: object, opts?: object): void;
export function assertTSDeclareFunction(node: object, opts?: object): void;
export function assertTSDeclareMethod(node: object, opts?: object): void;
export function assertTSEnumDeclaration(node: object, opts?: object): void;
export function assertTSEnumMember(node: object, opts?: object): void;
export function assertTSExportAssignment(node: object, opts?: object): void;
export function assertTSExpressionWithTypeArguments(node: object, opts?: object): void;
export function assertTSExternalModuleReference(node: object, opts?: object): void;
export function assertTSFunctionType(node: object, opts?: object): void;
export function assertTSImportEqualsDeclaration(node: object, opts?: object): void;
export function assertTSIndexSignature(node: object, opts?: object): void;
export function assertTSIndexedAccessType(node: object, opts?: object): void;
export function assertTSInterfaceBody(node: object, opts?: object): void;
export function assertTSInterfaceDeclaration(node: object, opts?: object): void;
export function assertTSIntersectionType(node: object, opts?: object): void;
export function assertTSLiteralType(node: object, opts?: object): void;
export function assertTSMappedType(node: object, opts?: object): void;
export function assertTSMethodSignature(node: object, opts?: object): void;
export function assertTSModuleBlock(node: object, opts?: object): void;
export function assertTSModuleDeclaration(node: object, opts?: object): void;
export function assertTSNamespaceExportDeclaration(node: object, opts?: object): void;
export function assertTSNeverKeyword(node: object, opts?: object): void;
export function assertTSNonNullExpression(node: object, opts?: object): void;
export function assertTSNullKeyword(node: object, opts?: object): void;
export function assertTSNumberKeyword(node: object, opts?: object): void;
export function assertTSObjectKeyword(node: object, opts?: object): void;
export function assertTSParameterProperty(node: object, opts?: object): void;
export function assertTSParenthesizedType(node: object, opts?: object): void;
export function assertTSPropertySignature(node: object, opts?: object): void;
export function assertTSQualifiedName(node: object, opts?: object): void;
export function assertTSStringKeyword(node: object, opts?: object): void;
export function assertTSSymbolKeyword(node: object, opts?: object): void;
export function assertTSThisType(node: object, opts?: object): void;
export function assertTSTupleType(node: object, opts?: object): void;
export function assertTSTypeAliasDeclaration(node: object, opts?: object): void;
export function assertTSTypeAnnotation(node: object, opts?: object): void;
export function assertTSTypeAssertion(node: object, opts?: object): void;
export function assertTSTypeLiteral(node: object, opts?: object): void;
export function assertTSTypeOperator(node: object, opts?: object): void;
export function assertTSTypeParameter(node: object, opts?: object): void;
export function assertTSTypeParameterDeclaration(node: object, opts?: object): void;
export function assertTSTypeParameterInstantiation(node: object, opts?: object): void;
export function assertTSTypePredicate(node: object, opts?: object): void;
export function assertTSTypeQuery(node: object, opts?: object): void;
export function assertTSTypeReference(node: object, opts?: object): void;
export function assertTSUndefinedKeyword(node: object, opts?: object): void;
export function assertTSUnionType(node: object, opts?: object): void;
export function assertTSVoidKeyword(node: object, opts?: object): void;
export function assertTSAnyKeyword(node: any, opts?: object): void;
export function assertTSArrayType(node: any, opts?: object): void;
export function assertTSAsExpression(node: any, opts?: object): void;
export function assertTSBooleanKeyword(node: any, opts?: object): void;
export function assertTSCallSignatureDeclaration(node: any, opts?: object): void;
export function assertTSConstructSignatureDeclaration(node: any, opts?: object): void;
export function assertTSConstructorType(node: any, opts?: object): void;
export function assertTSDeclareFunction(node: any, opts?: object): void;
export function assertTSDeclareMethod(node: any, opts?: object): void;
export function assertTSEnumDeclaration(node: any, opts?: object): void;
export function assertTSEnumMember(node: any, opts?: object): void;
export function assertTSExportAssignment(node: any, opts?: object): void;
export function assertTSExpressionWithTypeArguments(node: any, opts?: object): void;
export function assertTSExternalModuleReference(node: any, opts?: object): void;
export function assertTSFunctionType(node: any, opts?: object): void;
export function assertTSImportEqualsDeclaration(node: any, opts?: object): void;
export function assertTSIndexSignature(node: any, opts?: object): void;
export function assertTSIndexedAccessType(node: any, opts?: object): void;
export function assertTSInterfaceBody(node: any, opts?: object): void;
export function assertTSInterfaceDeclaration(node: any, opts?: object): void;
export function assertTSIntersectionType(node: any, opts?: object): void;
export function assertTSLiteralType(node: any, opts?: object): void;
export function assertTSMappedType(node: any, opts?: object): void;
export function assertTSMethodSignature(node: any, opts?: object): void;
export function assertTSModuleBlock(node: any, opts?: object): void;
export function assertTSModuleDeclaration(node: any, opts?: object): void;
export function assertTSNamespaceExportDeclaration(node: any, opts?: object): void;
export function assertTSNeverKeyword(node: any, opts?: object): void;
export function assertTSNonNullExpression(node: any, opts?: object): void;
export function assertTSNullKeyword(node: any, opts?: object): void;
export function assertTSNumberKeyword(node: any, opts?: object): void;
export function assertTSObjectKeyword(node: any, opts?: object): void;
export function assertTSParameterProperty(node: any, opts?: object): void;
export function assertTSParenthesizedType(node: any, opts?: object): void;
export function assertTSPropertySignature(node: any, opts?: object): void;
export function assertTSQualifiedName(node: any, opts?: object): void;
export function assertTSStringKeyword(node: any, opts?: object): void;
export function assertTSSymbolKeyword(node: any, opts?: object): void;
export function assertTSThisType(node: any, opts?: object): void;
export function assertTSTupleType(node: any, opts?: object): void;
export function assertTSTypeAliasDeclaration(node: any, opts?: object): void;
export function assertTSTypeAnnotation(node: any, opts?: object): void;
export function assertTSTypeAssertion(node: any, opts?: object): void;
export function assertTSTypeLiteral(node: any, opts?: object): void;
export function assertTSTypeOperator(node: any, opts?: object): void;
export function assertTSTypeParameter(node: any, opts?: object): void;
export function assertTSTypeParameterDeclaration(node: any, opts?: object): void;
export function assertTSTypeParameterInstantiation(node: any, opts?: object): void;
export function assertTSTypePredicate(node: any, opts?: object): void;
export function assertTSTypeQuery(node: any, opts?: object): void;
export function assertTSTypeReference(node: any, opts?: object): void;
export function assertTSUndefinedKeyword(node: any, opts?: object): void;
export function assertTSUnionType(node: any, opts?: object): void;
export function assertTSVoidKeyword(node: any, opts?: object): void;

View File

@ -6,7 +6,7 @@
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": false,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": [