Update .bashrc
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / tsutils / typeguard / 2.8 / node.js
index b63a09be9179fb916ec60dcf6fb3ae515e24e9b3..016e39532b276a8ef3f2e29203a6017ab6b6d99c 100644 (file)
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-const ts = require("typescript");
-function isAccessorDeclaration(node) {
-    return node.kind === ts.SyntaxKind.GetAccessor ||
-        node.kind === ts.SyntaxKind.SetAccessor;
-}
-exports.isAccessorDeclaration = isAccessorDeclaration;
-function isArrayBindingPattern(node) {
-    return node.kind === ts.SyntaxKind.ArrayBindingPattern;
-}
-exports.isArrayBindingPattern = isArrayBindingPattern;
-function isArrayLiteralExpression(node) {
-    return node.kind === ts.SyntaxKind.ArrayLiteralExpression;
-}
-exports.isArrayLiteralExpression = isArrayLiteralExpression;
-function isArrayTypeNode(node) {
-    return node.kind === ts.SyntaxKind.ArrayType;
-}
-exports.isArrayTypeNode = isArrayTypeNode;
-function isArrowFunction(node) {
-    return node.kind === ts.SyntaxKind.ArrowFunction;
-}
-exports.isArrowFunction = isArrowFunction;
-function isAsExpression(node) {
-    return node.kind === ts.SyntaxKind.AsExpression;
-}
-exports.isAsExpression = isAsExpression;
-function isAssertionExpression(node) {
-    return node.kind === ts.SyntaxKind.AsExpression ||
-        node.kind === ts.SyntaxKind.TypeAssertionExpression;
-}
-exports.isAssertionExpression = isAssertionExpression;
-function isAwaitExpression(node) {
-    return node.kind === ts.SyntaxKind.AwaitExpression;
-}
-exports.isAwaitExpression = isAwaitExpression;
-function isBinaryExpression(node) {
-    return node.kind === ts.SyntaxKind.BinaryExpression;
-}
-exports.isBinaryExpression = isBinaryExpression;
-function isBindingElement(node) {
-    return node.kind === ts.SyntaxKind.BindingElement;
-}
-exports.isBindingElement = isBindingElement;
-function isBindingPattern(node) {
-    return node.kind === ts.SyntaxKind.ArrayBindingPattern ||
-        node.kind === ts.SyntaxKind.ObjectBindingPattern;
-}
-exports.isBindingPattern = isBindingPattern;
-function isBlock(node) {
-    return node.kind === ts.SyntaxKind.Block;
-}
-exports.isBlock = isBlock;
-function isBlockLike(node) {
-    return node.statements !== undefined;
-}
-exports.isBlockLike = isBlockLike;
-function isBooleanLiteral(node) {
-    return node.kind === ts.SyntaxKind.TrueKeyword || node.kind === ts.SyntaxKind.FalseKeyword;
-}
-exports.isBooleanLiteral = isBooleanLiteral;
-function isBreakOrContinueStatement(node) {
-    return node.kind === ts.SyntaxKind.BreakStatement ||
-        node.kind === ts.SyntaxKind.ContinueStatement;
-}
-exports.isBreakOrContinueStatement = isBreakOrContinueStatement;
-function isBreakStatement(node) {
-    return node.kind === ts.SyntaxKind.BreakStatement;
-}
-exports.isBreakStatement = isBreakStatement;
-function isCallExpression(node) {
-    return node.kind === ts.SyntaxKind.CallExpression;
-}
-exports.isCallExpression = isCallExpression;
-function isCallLikeExpression(node) {
-    switch (node.kind) {
-        case ts.SyntaxKind.CallExpression:
-        case ts.SyntaxKind.Decorator:
-        case ts.SyntaxKind.JsxOpeningElement:
-        case ts.SyntaxKind.JsxSelfClosingElement:
-        case ts.SyntaxKind.NewExpression:
-        case ts.SyntaxKind.TaggedTemplateExpression:
-            return true;
-        default:
-            return false;
-    }
-}
-exports.isCallLikeExpression = isCallLikeExpression;
-function isCallSignatureDeclaration(node) {
-    return node.kind === ts.SyntaxKind.CallSignature;
-}
-exports.isCallSignatureDeclaration = isCallSignatureDeclaration;
-function isCaseBlock(node) {
-    return node.kind === ts.SyntaxKind.CaseBlock;
-}
-exports.isCaseBlock = isCaseBlock;
-function isCaseClause(node) {
-    return node.kind === ts.SyntaxKind.CaseClause;
-}
-exports.isCaseClause = isCaseClause;
-function isCaseOrDefaultClause(node) {
-    return node.kind === ts.SyntaxKind.CaseClause ||
-        node.kind === ts.SyntaxKind.DefaultClause;
-}
-exports.isCaseOrDefaultClause = isCaseOrDefaultClause;
-function isCatchClause(node) {
-    return node.kind === ts.SyntaxKind.CatchClause;
-}
-exports.isCatchClause = isCatchClause;
-function isClassDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ClassDeclaration;
-}
-exports.isClassDeclaration = isClassDeclaration;
-function isClassExpression(node) {
-    return node.kind === ts.SyntaxKind.ClassExpression;
-}
-exports.isClassExpression = isClassExpression;
-function isClassLikeDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ClassDeclaration ||
-        node.kind === ts.SyntaxKind.ClassExpression;
-}
-exports.isClassLikeDeclaration = isClassLikeDeclaration;
-function isCommaListExpression(node) {
-    return node.kind === ts.SyntaxKind.CommaListExpression;
-}
-exports.isCommaListExpression = isCommaListExpression;
-function isConditionalExpression(node) {
-    return node.kind === ts.SyntaxKind.ConditionalExpression;
-}
-exports.isConditionalExpression = isConditionalExpression;
-function isConditionalTypeNode(node) {
-    return node.kind === ts.SyntaxKind.ConditionalType;
-}
-exports.isConditionalTypeNode = isConditionalTypeNode;
-function isConstructorDeclaration(node) {
-    return node.kind === ts.SyntaxKind.Constructor;
-}
-exports.isConstructorDeclaration = isConstructorDeclaration;
-function isConstructorTypeNode(node) {
-    return node.kind === ts.SyntaxKind.ConstructorType;
-}
-exports.isConstructorTypeNode = isConstructorTypeNode;
-function isConstructSignatureDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ConstructSignature;
-}
-exports.isConstructSignatureDeclaration = isConstructSignatureDeclaration;
-function isContinueStatement(node) {
-    return node.kind === ts.SyntaxKind.ContinueStatement;
-}
-exports.isContinueStatement = isContinueStatement;
-function isComputedPropertyName(node) {
-    return node.kind === ts.SyntaxKind.ComputedPropertyName;
-}
-exports.isComputedPropertyName = isComputedPropertyName;
-function isDebuggerStatement(node) {
-    return node.kind === ts.SyntaxKind.DebuggerStatement;
-}
-exports.isDebuggerStatement = isDebuggerStatement;
-function isDecorator(node) {
-    return node.kind === ts.SyntaxKind.Decorator;
-}
-exports.isDecorator = isDecorator;
-function isDefaultClause(node) {
-    return node.kind === ts.SyntaxKind.DefaultClause;
-}
-exports.isDefaultClause = isDefaultClause;
-function isDeleteExpression(node) {
-    return node.kind === ts.SyntaxKind.DeleteExpression;
-}
-exports.isDeleteExpression = isDeleteExpression;
-function isDoStatement(node) {
-    return node.kind === ts.SyntaxKind.DoStatement;
-}
-exports.isDoStatement = isDoStatement;
-function isElementAccessExpression(node) {
-    return node.kind === ts.SyntaxKind.ElementAccessExpression;
-}
-exports.isElementAccessExpression = isElementAccessExpression;
-function isEmptyStatement(node) {
-    return node.kind === ts.SyntaxKind.EmptyStatement;
-}
-exports.isEmptyStatement = isEmptyStatement;
-function isEntityName(node) {
-    return node.kind === ts.SyntaxKind.Identifier || isQualifiedName(node);
-}
-exports.isEntityName = isEntityName;
-function isEntityNameExpression(node) {
-    return node.kind === ts.SyntaxKind.Identifier ||
-        isPropertyAccessExpression(node) && isEntityNameExpression(node.expression);
-}
-exports.isEntityNameExpression = isEntityNameExpression;
-function isEnumDeclaration(node) {
-    return node.kind === ts.SyntaxKind.EnumDeclaration;
-}
-exports.isEnumDeclaration = isEnumDeclaration;
-function isEnumMember(node) {
-    return node.kind === ts.SyntaxKind.EnumMember;
-}
-exports.isEnumMember = isEnumMember;
-function isExportAssignment(node) {
-    return node.kind === ts.SyntaxKind.ExportAssignment;
-}
-exports.isExportAssignment = isExportAssignment;
-function isExportDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ExportDeclaration;
-}
-exports.isExportDeclaration = isExportDeclaration;
-function isExportSpecifier(node) {
-    return node.kind === ts.SyntaxKind.ExportSpecifier;
-}
-exports.isExportSpecifier = isExportSpecifier;
-function isExpression(node) {
-    switch (node.kind) {
-        case ts.SyntaxKind.ArrayLiteralExpression:
-        case ts.SyntaxKind.ArrowFunction:
-        case ts.SyntaxKind.AsExpression:
-        case ts.SyntaxKind.AwaitExpression:
-        case ts.SyntaxKind.BinaryExpression:
-        case ts.SyntaxKind.CallExpression:
-        case ts.SyntaxKind.ClassExpression:
-        case ts.SyntaxKind.CommaListExpression:
-        case ts.SyntaxKind.ConditionalExpression:
-        case ts.SyntaxKind.DeleteExpression:
-        case ts.SyntaxKind.ElementAccessExpression:
-        case ts.SyntaxKind.FalseKeyword:
-        case ts.SyntaxKind.FunctionExpression:
-        case ts.SyntaxKind.Identifier:
-        case ts.SyntaxKind.JsxElement:
-        case ts.SyntaxKind.JsxFragment:
-        case ts.SyntaxKind.JsxExpression:
-        case ts.SyntaxKind.JsxOpeningElement:
-        case ts.SyntaxKind.JsxOpeningFragment:
-        case ts.SyntaxKind.JsxSelfClosingElement:
-        case ts.SyntaxKind.MetaProperty:
-        case ts.SyntaxKind.NewExpression:
-        case ts.SyntaxKind.NonNullExpression:
-        case ts.SyntaxKind.NoSubstitutionTemplateLiteral:
-        case ts.SyntaxKind.NullKeyword:
-        case ts.SyntaxKind.NumericLiteral:
-        case ts.SyntaxKind.ObjectLiteralExpression:
-        case ts.SyntaxKind.OmittedExpression:
-        case ts.SyntaxKind.ParenthesizedExpression:
-        case ts.SyntaxKind.PostfixUnaryExpression:
-        case ts.SyntaxKind.PrefixUnaryExpression:
-        case ts.SyntaxKind.PropertyAccessExpression:
-        case ts.SyntaxKind.RegularExpressionLiteral:
-        case ts.SyntaxKind.SpreadElement:
-        case ts.SyntaxKind.StringLiteral:
-        case ts.SyntaxKind.SuperKeyword:
-        case ts.SyntaxKind.TaggedTemplateExpression:
-        case ts.SyntaxKind.TemplateExpression:
-        case ts.SyntaxKind.ThisKeyword:
-        case ts.SyntaxKind.TrueKeyword:
-        case ts.SyntaxKind.TypeAssertionExpression:
-        case ts.SyntaxKind.TypeOfExpression:
-        case ts.SyntaxKind.VoidExpression:
-        case ts.SyntaxKind.YieldExpression:
-            return true;
-        default:
-            return false;
-    }
-}
-exports.isExpression = isExpression;
-function isExpressionStatement(node) {
-    return node.kind === ts.SyntaxKind.ExpressionStatement;
-}
-exports.isExpressionStatement = isExpressionStatement;
-function isExpressionWithTypeArguments(node) {
-    return node.kind === ts.SyntaxKind.ExpressionWithTypeArguments;
-}
-exports.isExpressionWithTypeArguments = isExpressionWithTypeArguments;
-function isExternalModuleReference(node) {
-    return node.kind === ts.SyntaxKind.ExternalModuleReference;
-}
-exports.isExternalModuleReference = isExternalModuleReference;
-function isForInStatement(node) {
-    return node.kind === ts.SyntaxKind.ForInStatement;
-}
-exports.isForInStatement = isForInStatement;
-function isForInOrOfStatement(node) {
-    return node.kind === ts.SyntaxKind.ForOfStatement || node.kind === ts.SyntaxKind.ForInStatement;
-}
-exports.isForInOrOfStatement = isForInOrOfStatement;
-function isForOfStatement(node) {
-    return node.kind === ts.SyntaxKind.ForOfStatement;
-}
-exports.isForOfStatement = isForOfStatement;
-function isForStatement(node) {
-    return node.kind === ts.SyntaxKind.ForStatement;
-}
-exports.isForStatement = isForStatement;
-function isFunctionDeclaration(node) {
-    return node.kind === ts.SyntaxKind.FunctionDeclaration;
-}
-exports.isFunctionDeclaration = isFunctionDeclaration;
-function isFunctionExpression(node) {
-    return node.kind === ts.SyntaxKind.FunctionExpression;
-}
-exports.isFunctionExpression = isFunctionExpression;
-function isFunctionTypeNode(node) {
-    return node.kind === ts.SyntaxKind.FunctionType;
-}
-exports.isFunctionTypeNode = isFunctionTypeNode;
-function isGetAccessorDeclaration(node) {
-    return node.kind === ts.SyntaxKind.GetAccessor;
-}
-exports.isGetAccessorDeclaration = isGetAccessorDeclaration;
-function isIdentifier(node) {
-    return node.kind === ts.SyntaxKind.Identifier;
-}
-exports.isIdentifier = isIdentifier;
-function isIfStatement(node) {
-    return node.kind === ts.SyntaxKind.IfStatement;
-}
-exports.isIfStatement = isIfStatement;
-function isImportClause(node) {
-    return node.kind === ts.SyntaxKind.ImportClause;
-}
-exports.isImportClause = isImportClause;
-function isImportDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ImportDeclaration;
-}
-exports.isImportDeclaration = isImportDeclaration;
-function isImportEqualsDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ImportEqualsDeclaration;
-}
-exports.isImportEqualsDeclaration = isImportEqualsDeclaration;
-function isImportSpecifier(node) {
-    return node.kind === ts.SyntaxKind.ImportSpecifier;
-}
-exports.isImportSpecifier = isImportSpecifier;
-function isIndexedAccessTypeNode(node) {
-    return node.kind === ts.SyntaxKind.IndexedAccessType;
-}
-exports.isIndexedAccessTypeNode = isIndexedAccessTypeNode;
-function isIndexSignatureDeclaration(node) {
-    return node.kind === ts.SyntaxKind.IndexSignature;
-}
-exports.isIndexSignatureDeclaration = isIndexSignatureDeclaration;
-function isInferTypeNode(node) {
-    return node.kind === ts.SyntaxKind.InferType;
-}
-exports.isInferTypeNode = isInferTypeNode;
-function isInterfaceDeclaration(node) {
-    return node.kind === ts.SyntaxKind.InterfaceDeclaration;
-}
-exports.isInterfaceDeclaration = isInterfaceDeclaration;
-function isIntersectionTypeNode(node) {
-    return node.kind === ts.SyntaxKind.IntersectionType;
-}
-exports.isIntersectionTypeNode = isIntersectionTypeNode;
-function isIterationStatement(node) {
-    switch (node.kind) {
-        case ts.SyntaxKind.ForStatement:
-        case ts.SyntaxKind.ForOfStatement:
-        case ts.SyntaxKind.ForInStatement:
-        case ts.SyntaxKind.WhileStatement:
-        case ts.SyntaxKind.DoStatement:
-            return true;
-        default:
-            return false;
-    }
-}
-exports.isIterationStatement = isIterationStatement;
-function isJsDoc(node) {
-    return node.kind === ts.SyntaxKind.JSDocComment;
-}
-exports.isJsDoc = isJsDoc;
-function isJsxAttribute(node) {
-    return node.kind === ts.SyntaxKind.JsxAttribute;
-}
-exports.isJsxAttribute = isJsxAttribute;
-function isJsxAttributeLike(node) {
-    return node.kind === ts.SyntaxKind.JsxAttribute ||
-        node.kind === ts.SyntaxKind.JsxSpreadAttribute;
-}
-exports.isJsxAttributeLike = isJsxAttributeLike;
-function isJsxAttributes(node) {
-    return node.kind === ts.SyntaxKind.JsxAttributes;
-}
-exports.isJsxAttributes = isJsxAttributes;
-function isJsxClosingElement(node) {
-    return node.kind === ts.SyntaxKind.JsxClosingElement;
-}
-exports.isJsxClosingElement = isJsxClosingElement;
-function isJsxClosingFragment(node) {
-    return node.kind === ts.SyntaxKind.JsxClosingFragment;
-}
-exports.isJsxClosingFragment = isJsxClosingFragment;
-function isJsxElement(node) {
-    return node.kind === ts.SyntaxKind.JsxElement;
-}
-exports.isJsxElement = isJsxElement;
-function isJsxExpression(node) {
-    return node.kind === ts.SyntaxKind.JsxExpression;
-}
-exports.isJsxExpression = isJsxExpression;
-function isJsxFragment(node) {
-    return node.kind === ts.SyntaxKind.JsxFragment;
-}
-exports.isJsxFragment = isJsxFragment;
-function isJsxOpeningElement(node) {
-    return node.kind === ts.SyntaxKind.JsxOpeningElement;
-}
-exports.isJsxOpeningElement = isJsxOpeningElement;
-function isJsxOpeningFragment(node) {
-    return node.kind === ts.SyntaxKind.JsxOpeningFragment;
-}
-exports.isJsxOpeningFragment = isJsxOpeningFragment;
-function isJsxOpeningLikeElement(node) {
-    return node.kind === ts.SyntaxKind.JsxOpeningElement ||
-        node.kind === ts.SyntaxKind.JsxSelfClosingElement;
-}
-exports.isJsxOpeningLikeElement = isJsxOpeningLikeElement;
-function isJsxSelfClosingElement(node) {
-    return node.kind === ts.SyntaxKind.JsxSelfClosingElement;
-}
-exports.isJsxSelfClosingElement = isJsxSelfClosingElement;
-function isJsxSpreadAttribute(node) {
-    return node.kind === ts.SyntaxKind.JsxSpreadAttribute;
-}
-exports.isJsxSpreadAttribute = isJsxSpreadAttribute;
-function isJsxText(node) {
-    return node.kind === ts.SyntaxKind.JsxText;
-}
-exports.isJsxText = isJsxText;
-function isLabeledStatement(node) {
-    return node.kind === ts.SyntaxKind.LabeledStatement;
-}
-exports.isLabeledStatement = isLabeledStatement;
-function isLiteralExpression(node) {
-    return node.kind >= ts.SyntaxKind.FirstLiteralToken &&
-        node.kind <= ts.SyntaxKind.LastLiteralToken;
-}
-exports.isLiteralExpression = isLiteralExpression;
-function isLiteralTypeNode(node) {
-    return node.kind === ts.SyntaxKind.LiteralType;
-}
-exports.isLiteralTypeNode = isLiteralTypeNode;
-function isMappedTypeNode(node) {
-    return node.kind === ts.SyntaxKind.MappedType;
-}
-exports.isMappedTypeNode = isMappedTypeNode;
-function isMetaProperty(node) {
-    return node.kind === ts.SyntaxKind.MetaProperty;
-}
-exports.isMetaProperty = isMetaProperty;
-function isMethodDeclaration(node) {
-    return node.kind === ts.SyntaxKind.MethodDeclaration;
-}
-exports.isMethodDeclaration = isMethodDeclaration;
-function isMethodSignature(node) {
-    return node.kind === ts.SyntaxKind.MethodSignature;
-}
-exports.isMethodSignature = isMethodSignature;
-function isModuleBlock(node) {
-    return node.kind === ts.SyntaxKind.ModuleBlock;
-}
-exports.isModuleBlock = isModuleBlock;
-function isModuleDeclaration(node) {
-    return node.kind === ts.SyntaxKind.ModuleDeclaration;
-}
-exports.isModuleDeclaration = isModuleDeclaration;
-function isNamedExports(node) {
-    return node.kind === ts.SyntaxKind.NamedExports;
-}
-exports.isNamedExports = isNamedExports;
-function isNamedImports(node) {
-    return node.kind === ts.SyntaxKind.NamedImports;
-}
-exports.isNamedImports = isNamedImports;
-function isNamespaceDeclaration(node) {
-    return isModuleDeclaration(node) &&
-        node.name.kind === ts.SyntaxKind.Identifier &&
-        node.body !== undefined &&
-        (node.body.kind === ts.SyntaxKind.ModuleBlock ||
-            isNamespaceDeclaration(node.body));
-}
-exports.isNamespaceDeclaration = isNamespaceDeclaration;
-function isNamespaceImport(node) {
-    return node.kind === ts.SyntaxKind.NamespaceImport;
-}
-exports.isNamespaceImport = isNamespaceImport;
-function isNamespaceExportDeclaration(node) {
-    return node.kind === ts.SyntaxKind.NamespaceExportDeclaration;
-}
-exports.isNamespaceExportDeclaration = isNamespaceExportDeclaration;
-function isNewExpression(node) {
-    return node.kind === ts.SyntaxKind.NewExpression;
-}
-exports.isNewExpression = isNewExpression;
-function isNonNullExpression(node) {
-    return node.kind === ts.SyntaxKind.NonNullExpression;
-}
-exports.isNonNullExpression = isNonNullExpression;
-function isNoSubstitutionTemplateLiteral(node) {
-    return node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;
-}
-exports.isNoSubstitutionTemplateLiteral = isNoSubstitutionTemplateLiteral;
-function isNullLiteral(node) {
-    return node.kind === ts.SyntaxKind.NullKeyword;
-}
-exports.isNullLiteral = isNullLiteral;
-function isNumericLiteral(node) {
-    return node.kind === ts.SyntaxKind.NumericLiteral;
-}
-exports.isNumericLiteral = isNumericLiteral;
-function isNumericOrStringLikeLiteral(node) {
-    switch (node.kind) {
-        case ts.SyntaxKind.StringLiteral:
-        case ts.SyntaxKind.NumericLiteral:
-        case ts.SyntaxKind.NoSubstitutionTemplateLiteral:
-            return true;
-        default:
-            return false;
-    }
-}
-exports.isNumericOrStringLikeLiteral = isNumericOrStringLikeLiteral;
-function isObjectBindingPattern(node) {
-    return node.kind === ts.SyntaxKind.ObjectBindingPattern;
-}
-exports.isObjectBindingPattern = isObjectBindingPattern;
-function isObjectLiteralExpression(node) {
-    return node.kind === ts.SyntaxKind.ObjectLiteralExpression;
-}
-exports.isObjectLiteralExpression = isObjectLiteralExpression;
-function isOmittedExpression(node) {
-    return node.kind === ts.SyntaxKind.OmittedExpression;
-}
-exports.isOmittedExpression = isOmittedExpression;
-function isParameterDeclaration(node) {
-    return node.kind === ts.SyntaxKind.Parameter;
-}
-exports.isParameterDeclaration = isParameterDeclaration;
-function isParenthesizedExpression(node) {
-    return node.kind === ts.SyntaxKind.ParenthesizedExpression;
-}
-exports.isParenthesizedExpression = isParenthesizedExpression;
-function isParenthesizedTypeNode(node) {
-    return node.kind === ts.SyntaxKind.ParenthesizedType;
-}
-exports.isParenthesizedTypeNode = isParenthesizedTypeNode;
-function isPostfixUnaryExpression(node) {
-    return node.kind === ts.SyntaxKind.PostfixUnaryExpression;
-}
-exports.isPostfixUnaryExpression = isPostfixUnaryExpression;
-function isPrefixUnaryExpression(node) {
-    return node.kind === ts.SyntaxKind.PrefixUnaryExpression;
-}
-exports.isPrefixUnaryExpression = isPrefixUnaryExpression;
-function isPropertyAccessExpression(node) {
-    return node.kind === ts.SyntaxKind.PropertyAccessExpression;
-}
-exports.isPropertyAccessExpression = isPropertyAccessExpression;
-function isPropertyAssignment(node) {
-    return node.kind === ts.SyntaxKind.PropertyAssignment;
-}
-exports.isPropertyAssignment = isPropertyAssignment;
-function isPropertyDeclaration(node) {
-    return node.kind === ts.SyntaxKind.PropertyDeclaration;
-}
-exports.isPropertyDeclaration = isPropertyDeclaration;
-function isPropertySignature(node) {
-    return node.kind === ts.SyntaxKind.PropertySignature;
-}
-exports.isPropertySignature = isPropertySignature;
-function isQualifiedName(node) {
-    return node.kind === ts.SyntaxKind.QualifiedName;
-}
-exports.isQualifiedName = isQualifiedName;
-function isRegularExpressionLiteral(node) {
-    return node.kind === ts.SyntaxKind.RegularExpressionLiteral;
-}
-exports.isRegularExpressionLiteral = isRegularExpressionLiteral;
-function isReturnStatement(node) {
-    return node.kind === ts.SyntaxKind.ReturnStatement;
-}
-exports.isReturnStatement = isReturnStatement;
-function isSetAccessorDeclaration(node) {
-    return node.kind === ts.SyntaxKind.SetAccessor;
-}
-exports.isSetAccessorDeclaration = isSetAccessorDeclaration;
-function isShorthandPropertyAssignment(node) {
-    return node.kind === ts.SyntaxKind.ShorthandPropertyAssignment;
-}
-exports.isShorthandPropertyAssignment = isShorthandPropertyAssignment;
-function isSignatureDeclaration(node) {
-    return node.parameters !== undefined;
-}
-exports.isSignatureDeclaration = isSignatureDeclaration;
-function isSourceFile(node) {
-    return node.kind === ts.SyntaxKind.SourceFile;
-}
-exports.isSourceFile = isSourceFile;
-function isSpreadAssignment(node) {
-    return node.kind === ts.SyntaxKind.SpreadAssignment;
-}
-exports.isSpreadAssignment = isSpreadAssignment;
-function isSpreadElement(node) {
-    return node.kind === ts.SyntaxKind.SpreadElement;
-}
-exports.isSpreadElement = isSpreadElement;
-function isStringLiteral(node) {
-    return node.kind === ts.SyntaxKind.StringLiteral;
-}
-exports.isStringLiteral = isStringLiteral;
-function isSwitchStatement(node) {
-    return node.kind === ts.SyntaxKind.SwitchStatement;
-}
-exports.isSwitchStatement = isSwitchStatement;
-function isSyntaxList(node) {
-    return node.kind === ts.SyntaxKind.SyntaxList;
-}
-exports.isSyntaxList = isSyntaxList;
-function isTaggedTemplateExpression(node) {
-    return node.kind === ts.SyntaxKind.TaggedTemplateExpression;
-}
-exports.isTaggedTemplateExpression = isTaggedTemplateExpression;
-function isTemplateExpression(node) {
-    return node.kind === ts.SyntaxKind.TemplateExpression;
-}
-exports.isTemplateExpression = isTemplateExpression;
-function isTemplateLiteral(node) {
-    return node.kind === ts.SyntaxKind.TemplateExpression ||
-        node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;
-}
-exports.isTemplateLiteral = isTemplateLiteral;
-function isTextualLiteral(node) {
-    return node.kind === ts.SyntaxKind.StringLiteral ||
-        node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;
-}
-exports.isTextualLiteral = isTextualLiteral;
-function isThrowStatement(node) {
-    return node.kind === ts.SyntaxKind.ThrowStatement;
-}
-exports.isThrowStatement = isThrowStatement;
-function isTryStatement(node) {
-    return node.kind === ts.SyntaxKind.TryStatement;
-}
-exports.isTryStatement = isTryStatement;
-function isTupleTypeNode(node) {
-    return node.kind === ts.SyntaxKind.TupleType;
-}
-exports.isTupleTypeNode = isTupleTypeNode;
-function isTypeAliasDeclaration(node) {
-    return node.kind === ts.SyntaxKind.TypeAliasDeclaration;
-}
-exports.isTypeAliasDeclaration = isTypeAliasDeclaration;
-function isTypeAssertion(node) {
-    return node.kind === ts.SyntaxKind.TypeAssertionExpression;
-}
-exports.isTypeAssertion = isTypeAssertion;
-function isTypeLiteralNode(node) {
-    return node.kind === ts.SyntaxKind.TypeLiteral;
-}
-exports.isTypeLiteralNode = isTypeLiteralNode;
-function isTypeOfExpression(node) {
-    return node.kind === ts.SyntaxKind.TypeOfExpression;
-}
-exports.isTypeOfExpression = isTypeOfExpression;
-function isTypeOperatorNode(node) {
-    return node.kind === ts.SyntaxKind.TypeOperator;
-}
-exports.isTypeOperatorNode = isTypeOperatorNode;
-function isTypeParameterDeclaration(node) {
-    return node.kind === ts.SyntaxKind.TypeParameter;
-}
-exports.isTypeParameterDeclaration = isTypeParameterDeclaration;
-function isTypePredicateNode(node) {
-    return node.kind === ts.SyntaxKind.TypePredicate;
-}
-exports.isTypePredicateNode = isTypePredicateNode;
-function isTypeReferenceNode(node) {
-    return node.kind === ts.SyntaxKind.TypeReference;
-}
-exports.isTypeReferenceNode = isTypeReferenceNode;
-function isTypeQueryNode(node) {
-    return node.kind === ts.SyntaxKind.TypeQuery;
-}
-exports.isTypeQueryNode = isTypeQueryNode;
-function isUnionTypeNode(node) {
-    return node.kind === ts.SyntaxKind.UnionType;
-}
-exports.isUnionTypeNode = isUnionTypeNode;
-function isVariableDeclaration(node) {
-    return node.kind === ts.SyntaxKind.VariableDeclaration;
-}
-exports.isVariableDeclaration = isVariableDeclaration;
-function isVariableStatement(node) {
-    return node.kind === ts.SyntaxKind.VariableStatement;
-}
-exports.isVariableStatement = isVariableStatement;
-function isVariableDeclarationList(node) {
-    return node.kind === ts.SyntaxKind.VariableDeclarationList;
-}
-exports.isVariableDeclarationList = isVariableDeclarationList;
-function isVoidExpression(node) {
-    return node.kind === ts.SyntaxKind.VoidExpression;
-}
-exports.isVoidExpression = isVoidExpression;
-function isWhileStatement(node) {
-    return node.kind === ts.SyntaxKind.WhileStatement;
-}
-exports.isWhileStatement = isWhileStatement;
-function isWithStatement(node) {
-    return node.kind === ts.SyntaxKind.WithStatement;
-}
-exports.isWithStatement = isWithStatement;
+"use strict";\r
+Object.defineProperty(exports, "__esModule", { value: true });\r
+exports.isExpressionStatement = exports.isExpression = exports.isExportSpecifier = exports.isExportDeclaration = exports.isExportAssignment = exports.isEnumMember = exports.isEnumDeclaration = exports.isEntityNameExpression = exports.isEntityName = exports.isEmptyStatement = exports.isElementAccessExpression = exports.isDoStatement = exports.isDeleteExpression = exports.isDefaultClause = exports.isDecorator = exports.isDebuggerStatement = exports.isComputedPropertyName = exports.isContinueStatement = exports.isConstructSignatureDeclaration = exports.isConstructorTypeNode = exports.isConstructorDeclaration = exports.isConditionalTypeNode = exports.isConditionalExpression = exports.isCommaListExpression = exports.isClassLikeDeclaration = exports.isClassExpression = exports.isClassDeclaration = exports.isCatchClause = exports.isCaseOrDefaultClause = exports.isCaseClause = exports.isCaseBlock = exports.isCallSignatureDeclaration = exports.isCallLikeExpression = exports.isCallExpression = exports.isBreakStatement = exports.isBreakOrContinueStatement = exports.isBooleanLiteral = exports.isBlockLike = exports.isBlock = exports.isBindingPattern = exports.isBindingElement = exports.isBinaryExpression = exports.isAwaitExpression = exports.isAssertionExpression = exports.isAsExpression = exports.isArrowFunction = exports.isArrayTypeNode = exports.isArrayLiteralExpression = exports.isArrayBindingPattern = exports.isAccessorDeclaration = void 0;\r
+exports.isNamespaceImport = exports.isNamespaceDeclaration = exports.isNamedImports = exports.isNamedExports = exports.isModuleDeclaration = exports.isModuleBlock = exports.isMethodSignature = exports.isMethodDeclaration = exports.isMetaProperty = exports.isMappedTypeNode = exports.isLiteralTypeNode = exports.isLiteralExpression = exports.isLabeledStatement = exports.isJsxText = exports.isJsxSpreadAttribute = exports.isJsxSelfClosingElement = exports.isJsxOpeningLikeElement = exports.isJsxOpeningFragment = exports.isJsxOpeningElement = exports.isJsxFragment = exports.isJsxExpression = exports.isJsxElement = exports.isJsxClosingFragment = exports.isJsxClosingElement = exports.isJsxAttributes = exports.isJsxAttributeLike = exports.isJsxAttribute = exports.isJsDoc = exports.isIterationStatement = exports.isIntersectionTypeNode = exports.isInterfaceDeclaration = exports.isInferTypeNode = exports.isIndexSignatureDeclaration = exports.isIndexedAccessTypeNode = exports.isImportSpecifier = exports.isImportEqualsDeclaration = exports.isImportDeclaration = exports.isImportClause = exports.isIfStatement = exports.isIdentifier = exports.isGetAccessorDeclaration = exports.isFunctionTypeNode = exports.isFunctionExpression = exports.isFunctionDeclaration = exports.isForStatement = exports.isForOfStatement = exports.isForInOrOfStatement = exports.isForInStatement = exports.isExternalModuleReference = exports.isExpressionWithTypeArguments = void 0;\r
+exports.isVariableStatement = exports.isVariableDeclaration = exports.isUnionTypeNode = exports.isTypeQueryNode = exports.isTypeReferenceNode = exports.isTypePredicateNode = exports.isTypeParameterDeclaration = exports.isTypeOperatorNode = exports.isTypeOfExpression = exports.isTypeLiteralNode = exports.isTypeAssertion = exports.isTypeAliasDeclaration = exports.isTupleTypeNode = exports.isTryStatement = exports.isThrowStatement = exports.isTextualLiteral = exports.isTemplateLiteral = exports.isTemplateExpression = exports.isTaggedTemplateExpression = exports.isSyntaxList = exports.isSwitchStatement = exports.isStringLiteral = exports.isSpreadElement = exports.isSpreadAssignment = exports.isSourceFile = exports.isSignatureDeclaration = exports.isShorthandPropertyAssignment = exports.isSetAccessorDeclaration = exports.isReturnStatement = exports.isRegularExpressionLiteral = exports.isQualifiedName = exports.isPropertySignature = exports.isPropertyDeclaration = exports.isPropertyAssignment = exports.isPropertyAccessExpression = exports.isPrefixUnaryExpression = exports.isPostfixUnaryExpression = exports.isParenthesizedTypeNode = exports.isParenthesizedExpression = exports.isParameterDeclaration = exports.isOmittedExpression = exports.isObjectLiteralExpression = exports.isObjectBindingPattern = exports.isNumericOrStringLikeLiteral = exports.isNumericLiteral = exports.isNullLiteral = exports.isNoSubstitutionTemplateLiteral = exports.isNonNullExpression = exports.isNewExpression = exports.isNamespaceExportDeclaration = void 0;\r
+exports.isWithStatement = exports.isWhileStatement = exports.isVoidExpression = exports.isVariableDeclarationList = void 0;\r
+const ts = require("typescript");\r
+function isAccessorDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.GetAccessor ||\r
+        node.kind === ts.SyntaxKind.SetAccessor;\r
+}\r
+exports.isAccessorDeclaration = isAccessorDeclaration;\r
+function isArrayBindingPattern(node) {\r
+    return node.kind === ts.SyntaxKind.ArrayBindingPattern;\r
+}\r
+exports.isArrayBindingPattern = isArrayBindingPattern;\r
+function isArrayLiteralExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ArrayLiteralExpression;\r
+}\r
+exports.isArrayLiteralExpression = isArrayLiteralExpression;\r
+function isArrayTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.ArrayType;\r
+}\r
+exports.isArrayTypeNode = isArrayTypeNode;\r
+function isArrowFunction(node) {\r
+    return node.kind === ts.SyntaxKind.ArrowFunction;\r
+}\r
+exports.isArrowFunction = isArrowFunction;\r
+function isAsExpression(node) {\r
+    return node.kind === ts.SyntaxKind.AsExpression;\r
+}\r
+exports.isAsExpression = isAsExpression;\r
+function isAssertionExpression(node) {\r
+    return node.kind === ts.SyntaxKind.AsExpression ||\r
+        node.kind === ts.SyntaxKind.TypeAssertionExpression;\r
+}\r
+exports.isAssertionExpression = isAssertionExpression;\r
+function isAwaitExpression(node) {\r
+    return node.kind === ts.SyntaxKind.AwaitExpression;\r
+}\r
+exports.isAwaitExpression = isAwaitExpression;\r
+function isBinaryExpression(node) {\r
+    return node.kind === ts.SyntaxKind.BinaryExpression;\r
+}\r
+exports.isBinaryExpression = isBinaryExpression;\r
+function isBindingElement(node) {\r
+    return node.kind === ts.SyntaxKind.BindingElement;\r
+}\r
+exports.isBindingElement = isBindingElement;\r
+function isBindingPattern(node) {\r
+    return node.kind === ts.SyntaxKind.ArrayBindingPattern ||\r
+        node.kind === ts.SyntaxKind.ObjectBindingPattern;\r
+}\r
+exports.isBindingPattern = isBindingPattern;\r
+function isBlock(node) {\r
+    return node.kind === ts.SyntaxKind.Block;\r
+}\r
+exports.isBlock = isBlock;\r
+function isBlockLike(node) {\r
+    return node.statements !== undefined;\r
+}\r
+exports.isBlockLike = isBlockLike;\r
+function isBooleanLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.TrueKeyword || node.kind === ts.SyntaxKind.FalseKeyword;\r
+}\r
+exports.isBooleanLiteral = isBooleanLiteral;\r
+function isBreakOrContinueStatement(node) {\r
+    return node.kind === ts.SyntaxKind.BreakStatement ||\r
+        node.kind === ts.SyntaxKind.ContinueStatement;\r
+}\r
+exports.isBreakOrContinueStatement = isBreakOrContinueStatement;\r
+function isBreakStatement(node) {\r
+    return node.kind === ts.SyntaxKind.BreakStatement;\r
+}\r
+exports.isBreakStatement = isBreakStatement;\r
+function isCallExpression(node) {\r
+    return node.kind === ts.SyntaxKind.CallExpression;\r
+}\r
+exports.isCallExpression = isCallExpression;\r
+function isCallLikeExpression(node) {\r
+    switch (node.kind) {\r
+        case ts.SyntaxKind.CallExpression:\r
+        case ts.SyntaxKind.Decorator:\r
+        case ts.SyntaxKind.JsxOpeningElement:\r
+        case ts.SyntaxKind.JsxSelfClosingElement:\r
+        case ts.SyntaxKind.NewExpression:\r
+        case ts.SyntaxKind.TaggedTemplateExpression:\r
+            return true;\r
+        default:\r
+            return false;\r
+    }\r
+}\r
+exports.isCallLikeExpression = isCallLikeExpression;\r
+function isCallSignatureDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.CallSignature;\r
+}\r
+exports.isCallSignatureDeclaration = isCallSignatureDeclaration;\r
+function isCaseBlock(node) {\r
+    return node.kind === ts.SyntaxKind.CaseBlock;\r
+}\r
+exports.isCaseBlock = isCaseBlock;\r
+function isCaseClause(node) {\r
+    return node.kind === ts.SyntaxKind.CaseClause;\r
+}\r
+exports.isCaseClause = isCaseClause;\r
+function isCaseOrDefaultClause(node) {\r
+    return node.kind === ts.SyntaxKind.CaseClause ||\r
+        node.kind === ts.SyntaxKind.DefaultClause;\r
+}\r
+exports.isCaseOrDefaultClause = isCaseOrDefaultClause;\r
+function isCatchClause(node) {\r
+    return node.kind === ts.SyntaxKind.CatchClause;\r
+}\r
+exports.isCatchClause = isCatchClause;\r
+function isClassDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ClassDeclaration;\r
+}\r
+exports.isClassDeclaration = isClassDeclaration;\r
+function isClassExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ClassExpression;\r
+}\r
+exports.isClassExpression = isClassExpression;\r
+function isClassLikeDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ClassDeclaration ||\r
+        node.kind === ts.SyntaxKind.ClassExpression;\r
+}\r
+exports.isClassLikeDeclaration = isClassLikeDeclaration;\r
+function isCommaListExpression(node) {\r
+    return node.kind === ts.SyntaxKind.CommaListExpression;\r
+}\r
+exports.isCommaListExpression = isCommaListExpression;\r
+function isConditionalExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ConditionalExpression;\r
+}\r
+exports.isConditionalExpression = isConditionalExpression;\r
+function isConditionalTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.ConditionalType;\r
+}\r
+exports.isConditionalTypeNode = isConditionalTypeNode;\r
+function isConstructorDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.Constructor;\r
+}\r
+exports.isConstructorDeclaration = isConstructorDeclaration;\r
+function isConstructorTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.ConstructorType;\r
+}\r
+exports.isConstructorTypeNode = isConstructorTypeNode;\r
+function isConstructSignatureDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ConstructSignature;\r
+}\r
+exports.isConstructSignatureDeclaration = isConstructSignatureDeclaration;\r
+function isContinueStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ContinueStatement;\r
+}\r
+exports.isContinueStatement = isContinueStatement;\r
+function isComputedPropertyName(node) {\r
+    return node.kind === ts.SyntaxKind.ComputedPropertyName;\r
+}\r
+exports.isComputedPropertyName = isComputedPropertyName;\r
+function isDebuggerStatement(node) {\r
+    return node.kind === ts.SyntaxKind.DebuggerStatement;\r
+}\r
+exports.isDebuggerStatement = isDebuggerStatement;\r
+function isDecorator(node) {\r
+    return node.kind === ts.SyntaxKind.Decorator;\r
+}\r
+exports.isDecorator = isDecorator;\r
+function isDefaultClause(node) {\r
+    return node.kind === ts.SyntaxKind.DefaultClause;\r
+}\r
+exports.isDefaultClause = isDefaultClause;\r
+function isDeleteExpression(node) {\r
+    return node.kind === ts.SyntaxKind.DeleteExpression;\r
+}\r
+exports.isDeleteExpression = isDeleteExpression;\r
+function isDoStatement(node) {\r
+    return node.kind === ts.SyntaxKind.DoStatement;\r
+}\r
+exports.isDoStatement = isDoStatement;\r
+function isElementAccessExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ElementAccessExpression;\r
+}\r
+exports.isElementAccessExpression = isElementAccessExpression;\r
+function isEmptyStatement(node) {\r
+    return node.kind === ts.SyntaxKind.EmptyStatement;\r
+}\r
+exports.isEmptyStatement = isEmptyStatement;\r
+function isEntityName(node) {\r
+    return node.kind === ts.SyntaxKind.Identifier || isQualifiedName(node);\r
+}\r
+exports.isEntityName = isEntityName;\r
+function isEntityNameExpression(node) {\r
+    return node.kind === ts.SyntaxKind.Identifier ||\r
+        isPropertyAccessExpression(node) && isEntityNameExpression(node.expression);\r
+}\r
+exports.isEntityNameExpression = isEntityNameExpression;\r
+function isEnumDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.EnumDeclaration;\r
+}\r
+exports.isEnumDeclaration = isEnumDeclaration;\r
+function isEnumMember(node) {\r
+    return node.kind === ts.SyntaxKind.EnumMember;\r
+}\r
+exports.isEnumMember = isEnumMember;\r
+function isExportAssignment(node) {\r
+    return node.kind === ts.SyntaxKind.ExportAssignment;\r
+}\r
+exports.isExportAssignment = isExportAssignment;\r
+function isExportDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ExportDeclaration;\r
+}\r
+exports.isExportDeclaration = isExportDeclaration;\r
+function isExportSpecifier(node) {\r
+    return node.kind === ts.SyntaxKind.ExportSpecifier;\r
+}\r
+exports.isExportSpecifier = isExportSpecifier;\r
+function isExpression(node) {\r
+    switch (node.kind) {\r
+        case ts.SyntaxKind.ArrayLiteralExpression:\r
+        case ts.SyntaxKind.ArrowFunction:\r
+        case ts.SyntaxKind.AsExpression:\r
+        case ts.SyntaxKind.AwaitExpression:\r
+        case ts.SyntaxKind.BinaryExpression:\r
+        case ts.SyntaxKind.CallExpression:\r
+        case ts.SyntaxKind.ClassExpression:\r
+        case ts.SyntaxKind.CommaListExpression:\r
+        case ts.SyntaxKind.ConditionalExpression:\r
+        case ts.SyntaxKind.DeleteExpression:\r
+        case ts.SyntaxKind.ElementAccessExpression:\r
+        case ts.SyntaxKind.FalseKeyword:\r
+        case ts.SyntaxKind.FunctionExpression:\r
+        case ts.SyntaxKind.Identifier:\r
+        case ts.SyntaxKind.JsxElement:\r
+        case ts.SyntaxKind.JsxFragment:\r
+        case ts.SyntaxKind.JsxExpression:\r
+        case ts.SyntaxKind.JsxOpeningElement:\r
+        case ts.SyntaxKind.JsxOpeningFragment:\r
+        case ts.SyntaxKind.JsxSelfClosingElement:\r
+        case ts.SyntaxKind.MetaProperty:\r
+        case ts.SyntaxKind.NewExpression:\r
+        case ts.SyntaxKind.NonNullExpression:\r
+        case ts.SyntaxKind.NoSubstitutionTemplateLiteral:\r
+        case ts.SyntaxKind.NullKeyword:\r
+        case ts.SyntaxKind.NumericLiteral:\r
+        case ts.SyntaxKind.ObjectLiteralExpression:\r
+        case ts.SyntaxKind.OmittedExpression:\r
+        case ts.SyntaxKind.ParenthesizedExpression:\r
+        case ts.SyntaxKind.PostfixUnaryExpression:\r
+        case ts.SyntaxKind.PrefixUnaryExpression:\r
+        case ts.SyntaxKind.PropertyAccessExpression:\r
+        case ts.SyntaxKind.RegularExpressionLiteral:\r
+        case ts.SyntaxKind.SpreadElement:\r
+        case ts.SyntaxKind.StringLiteral:\r
+        case ts.SyntaxKind.SuperKeyword:\r
+        case ts.SyntaxKind.TaggedTemplateExpression:\r
+        case ts.SyntaxKind.TemplateExpression:\r
+        case ts.SyntaxKind.ThisKeyword:\r
+        case ts.SyntaxKind.TrueKeyword:\r
+        case ts.SyntaxKind.TypeAssertionExpression:\r
+        case ts.SyntaxKind.TypeOfExpression:\r
+        case ts.SyntaxKind.VoidExpression:\r
+        case ts.SyntaxKind.YieldExpression:\r
+            return true;\r
+        default:\r
+            return false;\r
+    }\r
+}\r
+exports.isExpression = isExpression;\r
+function isExpressionStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ExpressionStatement;\r
+}\r
+exports.isExpressionStatement = isExpressionStatement;\r
+function isExpressionWithTypeArguments(node) {\r
+    return node.kind === ts.SyntaxKind.ExpressionWithTypeArguments;\r
+}\r
+exports.isExpressionWithTypeArguments = isExpressionWithTypeArguments;\r
+function isExternalModuleReference(node) {\r
+    return node.kind === ts.SyntaxKind.ExternalModuleReference;\r
+}\r
+exports.isExternalModuleReference = isExternalModuleReference;\r
+function isForInStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ForInStatement;\r
+}\r
+exports.isForInStatement = isForInStatement;\r
+function isForInOrOfStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ForOfStatement || node.kind === ts.SyntaxKind.ForInStatement;\r
+}\r
+exports.isForInOrOfStatement = isForInOrOfStatement;\r
+function isForOfStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ForOfStatement;\r
+}\r
+exports.isForOfStatement = isForOfStatement;\r
+function isForStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ForStatement;\r
+}\r
+exports.isForStatement = isForStatement;\r
+function isFunctionDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.FunctionDeclaration;\r
+}\r
+exports.isFunctionDeclaration = isFunctionDeclaration;\r
+function isFunctionExpression(node) {\r
+    return node.kind === ts.SyntaxKind.FunctionExpression;\r
+}\r
+exports.isFunctionExpression = isFunctionExpression;\r
+function isFunctionTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.FunctionType;\r
+}\r
+exports.isFunctionTypeNode = isFunctionTypeNode;\r
+function isGetAccessorDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.GetAccessor;\r
+}\r
+exports.isGetAccessorDeclaration = isGetAccessorDeclaration;\r
+function isIdentifier(node) {\r
+    return node.kind === ts.SyntaxKind.Identifier;\r
+}\r
+exports.isIdentifier = isIdentifier;\r
+function isIfStatement(node) {\r
+    return node.kind === ts.SyntaxKind.IfStatement;\r
+}\r
+exports.isIfStatement = isIfStatement;\r
+function isImportClause(node) {\r
+    return node.kind === ts.SyntaxKind.ImportClause;\r
+}\r
+exports.isImportClause = isImportClause;\r
+function isImportDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ImportDeclaration;\r
+}\r
+exports.isImportDeclaration = isImportDeclaration;\r
+function isImportEqualsDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ImportEqualsDeclaration;\r
+}\r
+exports.isImportEqualsDeclaration = isImportEqualsDeclaration;\r
+function isImportSpecifier(node) {\r
+    return node.kind === ts.SyntaxKind.ImportSpecifier;\r
+}\r
+exports.isImportSpecifier = isImportSpecifier;\r
+function isIndexedAccessTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.IndexedAccessType;\r
+}\r
+exports.isIndexedAccessTypeNode = isIndexedAccessTypeNode;\r
+function isIndexSignatureDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.IndexSignature;\r
+}\r
+exports.isIndexSignatureDeclaration = isIndexSignatureDeclaration;\r
+function isInferTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.InferType;\r
+}\r
+exports.isInferTypeNode = isInferTypeNode;\r
+function isInterfaceDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.InterfaceDeclaration;\r
+}\r
+exports.isInterfaceDeclaration = isInterfaceDeclaration;\r
+function isIntersectionTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.IntersectionType;\r
+}\r
+exports.isIntersectionTypeNode = isIntersectionTypeNode;\r
+function isIterationStatement(node) {\r
+    switch (node.kind) {\r
+        case ts.SyntaxKind.ForStatement:\r
+        case ts.SyntaxKind.ForOfStatement:\r
+        case ts.SyntaxKind.ForInStatement:\r
+        case ts.SyntaxKind.WhileStatement:\r
+        case ts.SyntaxKind.DoStatement:\r
+            return true;\r
+        default:\r
+            return false;\r
+    }\r
+}\r
+exports.isIterationStatement = isIterationStatement;\r
+function isJsDoc(node) {\r
+    return node.kind === ts.SyntaxKind.JSDocComment;\r
+}\r
+exports.isJsDoc = isJsDoc;\r
+function isJsxAttribute(node) {\r
+    return node.kind === ts.SyntaxKind.JsxAttribute;\r
+}\r
+exports.isJsxAttribute = isJsxAttribute;\r
+function isJsxAttributeLike(node) {\r
+    return node.kind === ts.SyntaxKind.JsxAttribute ||\r
+        node.kind === ts.SyntaxKind.JsxSpreadAttribute;\r
+}\r
+exports.isJsxAttributeLike = isJsxAttributeLike;\r
+function isJsxAttributes(node) {\r
+    return node.kind === ts.SyntaxKind.JsxAttributes;\r
+}\r
+exports.isJsxAttributes = isJsxAttributes;\r
+function isJsxClosingElement(node) {\r
+    return node.kind === ts.SyntaxKind.JsxClosingElement;\r
+}\r
+exports.isJsxClosingElement = isJsxClosingElement;\r
+function isJsxClosingFragment(node) {\r
+    return node.kind === ts.SyntaxKind.JsxClosingFragment;\r
+}\r
+exports.isJsxClosingFragment = isJsxClosingFragment;\r
+function isJsxElement(node) {\r
+    return node.kind === ts.SyntaxKind.JsxElement;\r
+}\r
+exports.isJsxElement = isJsxElement;\r
+function isJsxExpression(node) {\r
+    return node.kind === ts.SyntaxKind.JsxExpression;\r
+}\r
+exports.isJsxExpression = isJsxExpression;\r
+function isJsxFragment(node) {\r
+    return node.kind === ts.SyntaxKind.JsxFragment;\r
+}\r
+exports.isJsxFragment = isJsxFragment;\r
+function isJsxOpeningElement(node) {\r
+    return node.kind === ts.SyntaxKind.JsxOpeningElement;\r
+}\r
+exports.isJsxOpeningElement = isJsxOpeningElement;\r
+function isJsxOpeningFragment(node) {\r
+    return node.kind === ts.SyntaxKind.JsxOpeningFragment;\r
+}\r
+exports.isJsxOpeningFragment = isJsxOpeningFragment;\r
+function isJsxOpeningLikeElement(node) {\r
+    return node.kind === ts.SyntaxKind.JsxOpeningElement ||\r
+        node.kind === ts.SyntaxKind.JsxSelfClosingElement;\r
+}\r
+exports.isJsxOpeningLikeElement = isJsxOpeningLikeElement;\r
+function isJsxSelfClosingElement(node) {\r
+    return node.kind === ts.SyntaxKind.JsxSelfClosingElement;\r
+}\r
+exports.isJsxSelfClosingElement = isJsxSelfClosingElement;\r
+function isJsxSpreadAttribute(node) {\r
+    return node.kind === ts.SyntaxKind.JsxSpreadAttribute;\r
+}\r
+exports.isJsxSpreadAttribute = isJsxSpreadAttribute;\r
+function isJsxText(node) {\r
+    return node.kind === ts.SyntaxKind.JsxText;\r
+}\r
+exports.isJsxText = isJsxText;\r
+function isLabeledStatement(node) {\r
+    return node.kind === ts.SyntaxKind.LabeledStatement;\r
+}\r
+exports.isLabeledStatement = isLabeledStatement;\r
+function isLiteralExpression(node) {\r
+    return node.kind >= ts.SyntaxKind.FirstLiteralToken &&\r
+        node.kind <= ts.SyntaxKind.LastLiteralToken;\r
+}\r
+exports.isLiteralExpression = isLiteralExpression;\r
+function isLiteralTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.LiteralType;\r
+}\r
+exports.isLiteralTypeNode = isLiteralTypeNode;\r
+function isMappedTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.MappedType;\r
+}\r
+exports.isMappedTypeNode = isMappedTypeNode;\r
+function isMetaProperty(node) {\r
+    return node.kind === ts.SyntaxKind.MetaProperty;\r
+}\r
+exports.isMetaProperty = isMetaProperty;\r
+function isMethodDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.MethodDeclaration;\r
+}\r
+exports.isMethodDeclaration = isMethodDeclaration;\r
+function isMethodSignature(node) {\r
+    return node.kind === ts.SyntaxKind.MethodSignature;\r
+}\r
+exports.isMethodSignature = isMethodSignature;\r
+function isModuleBlock(node) {\r
+    return node.kind === ts.SyntaxKind.ModuleBlock;\r
+}\r
+exports.isModuleBlock = isModuleBlock;\r
+function isModuleDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.ModuleDeclaration;\r
+}\r
+exports.isModuleDeclaration = isModuleDeclaration;\r
+function isNamedExports(node) {\r
+    return node.kind === ts.SyntaxKind.NamedExports;\r
+}\r
+exports.isNamedExports = isNamedExports;\r
+function isNamedImports(node) {\r
+    return node.kind === ts.SyntaxKind.NamedImports;\r
+}\r
+exports.isNamedImports = isNamedImports;\r
+function isNamespaceDeclaration(node) {\r
+    return isModuleDeclaration(node) &&\r
+        node.name.kind === ts.SyntaxKind.Identifier &&\r
+        node.body !== undefined &&\r
+        (node.body.kind === ts.SyntaxKind.ModuleBlock ||\r
+            isNamespaceDeclaration(node.body));\r
+}\r
+exports.isNamespaceDeclaration = isNamespaceDeclaration;\r
+function isNamespaceImport(node) {\r
+    return node.kind === ts.SyntaxKind.NamespaceImport;\r
+}\r
+exports.isNamespaceImport = isNamespaceImport;\r
+function isNamespaceExportDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.NamespaceExportDeclaration;\r
+}\r
+exports.isNamespaceExportDeclaration = isNamespaceExportDeclaration;\r
+function isNewExpression(node) {\r
+    return node.kind === ts.SyntaxKind.NewExpression;\r
+}\r
+exports.isNewExpression = isNewExpression;\r
+function isNonNullExpression(node) {\r
+    return node.kind === ts.SyntaxKind.NonNullExpression;\r
+}\r
+exports.isNonNullExpression = isNonNullExpression;\r
+function isNoSubstitutionTemplateLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;\r
+}\r
+exports.isNoSubstitutionTemplateLiteral = isNoSubstitutionTemplateLiteral;\r
+function isNullLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.NullKeyword;\r
+}\r
+exports.isNullLiteral = isNullLiteral;\r
+function isNumericLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.NumericLiteral;\r
+}\r
+exports.isNumericLiteral = isNumericLiteral;\r
+function isNumericOrStringLikeLiteral(node) {\r
+    switch (node.kind) {\r
+        case ts.SyntaxKind.StringLiteral:\r
+        case ts.SyntaxKind.NumericLiteral:\r
+        case ts.SyntaxKind.NoSubstitutionTemplateLiteral:\r
+            return true;\r
+        default:\r
+            return false;\r
+    }\r
+}\r
+exports.isNumericOrStringLikeLiteral = isNumericOrStringLikeLiteral;\r
+function isObjectBindingPattern(node) {\r
+    return node.kind === ts.SyntaxKind.ObjectBindingPattern;\r
+}\r
+exports.isObjectBindingPattern = isObjectBindingPattern;\r
+function isObjectLiteralExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ObjectLiteralExpression;\r
+}\r
+exports.isObjectLiteralExpression = isObjectLiteralExpression;\r
+function isOmittedExpression(node) {\r
+    return node.kind === ts.SyntaxKind.OmittedExpression;\r
+}\r
+exports.isOmittedExpression = isOmittedExpression;\r
+function isParameterDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.Parameter;\r
+}\r
+exports.isParameterDeclaration = isParameterDeclaration;\r
+function isParenthesizedExpression(node) {\r
+    return node.kind === ts.SyntaxKind.ParenthesizedExpression;\r
+}\r
+exports.isParenthesizedExpression = isParenthesizedExpression;\r
+function isParenthesizedTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.ParenthesizedType;\r
+}\r
+exports.isParenthesizedTypeNode = isParenthesizedTypeNode;\r
+function isPostfixUnaryExpression(node) {\r
+    return node.kind === ts.SyntaxKind.PostfixUnaryExpression;\r
+}\r
+exports.isPostfixUnaryExpression = isPostfixUnaryExpression;\r
+function isPrefixUnaryExpression(node) {\r
+    return node.kind === ts.SyntaxKind.PrefixUnaryExpression;\r
+}\r
+exports.isPrefixUnaryExpression = isPrefixUnaryExpression;\r
+function isPropertyAccessExpression(node) {\r
+    return node.kind === ts.SyntaxKind.PropertyAccessExpression;\r
+}\r
+exports.isPropertyAccessExpression = isPropertyAccessExpression;\r
+function isPropertyAssignment(node) {\r
+    return node.kind === ts.SyntaxKind.PropertyAssignment;\r
+}\r
+exports.isPropertyAssignment = isPropertyAssignment;\r
+function isPropertyDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.PropertyDeclaration;\r
+}\r
+exports.isPropertyDeclaration = isPropertyDeclaration;\r
+function isPropertySignature(node) {\r
+    return node.kind === ts.SyntaxKind.PropertySignature;\r
+}\r
+exports.isPropertySignature = isPropertySignature;\r
+function isQualifiedName(node) {\r
+    return node.kind === ts.SyntaxKind.QualifiedName;\r
+}\r
+exports.isQualifiedName = isQualifiedName;\r
+function isRegularExpressionLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.RegularExpressionLiteral;\r
+}\r
+exports.isRegularExpressionLiteral = isRegularExpressionLiteral;\r
+function isReturnStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ReturnStatement;\r
+}\r
+exports.isReturnStatement = isReturnStatement;\r
+function isSetAccessorDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.SetAccessor;\r
+}\r
+exports.isSetAccessorDeclaration = isSetAccessorDeclaration;\r
+function isShorthandPropertyAssignment(node) {\r
+    return node.kind === ts.SyntaxKind.ShorthandPropertyAssignment;\r
+}\r
+exports.isShorthandPropertyAssignment = isShorthandPropertyAssignment;\r
+function isSignatureDeclaration(node) {\r
+    return node.parameters !== undefined;\r
+}\r
+exports.isSignatureDeclaration = isSignatureDeclaration;\r
+function isSourceFile(node) {\r
+    return node.kind === ts.SyntaxKind.SourceFile;\r
+}\r
+exports.isSourceFile = isSourceFile;\r
+function isSpreadAssignment(node) {\r
+    return node.kind === ts.SyntaxKind.SpreadAssignment;\r
+}\r
+exports.isSpreadAssignment = isSpreadAssignment;\r
+function isSpreadElement(node) {\r
+    return node.kind === ts.SyntaxKind.SpreadElement;\r
+}\r
+exports.isSpreadElement = isSpreadElement;\r
+function isStringLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.StringLiteral;\r
+}\r
+exports.isStringLiteral = isStringLiteral;\r
+function isSwitchStatement(node) {\r
+    return node.kind === ts.SyntaxKind.SwitchStatement;\r
+}\r
+exports.isSwitchStatement = isSwitchStatement;\r
+function isSyntaxList(node) {\r
+    return node.kind === ts.SyntaxKind.SyntaxList;\r
+}\r
+exports.isSyntaxList = isSyntaxList;\r
+function isTaggedTemplateExpression(node) {\r
+    return node.kind === ts.SyntaxKind.TaggedTemplateExpression;\r
+}\r
+exports.isTaggedTemplateExpression = isTaggedTemplateExpression;\r
+function isTemplateExpression(node) {\r
+    return node.kind === ts.SyntaxKind.TemplateExpression;\r
+}\r
+exports.isTemplateExpression = isTemplateExpression;\r
+function isTemplateLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.TemplateExpression ||\r
+        node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;\r
+}\r
+exports.isTemplateLiteral = isTemplateLiteral;\r
+function isTextualLiteral(node) {\r
+    return node.kind === ts.SyntaxKind.StringLiteral ||\r
+        node.kind === ts.SyntaxKind.NoSubstitutionTemplateLiteral;\r
+}\r
+exports.isTextualLiteral = isTextualLiteral;\r
+function isThrowStatement(node) {\r
+    return node.kind === ts.SyntaxKind.ThrowStatement;\r
+}\r
+exports.isThrowStatement = isThrowStatement;\r
+function isTryStatement(node) {\r
+    return node.kind === ts.SyntaxKind.TryStatement;\r
+}\r
+exports.isTryStatement = isTryStatement;\r
+function isTupleTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.TupleType;\r
+}\r
+exports.isTupleTypeNode = isTupleTypeNode;\r
+function isTypeAliasDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.TypeAliasDeclaration;\r
+}\r
+exports.isTypeAliasDeclaration = isTypeAliasDeclaration;\r
+function isTypeAssertion(node) {\r
+    return node.kind === ts.SyntaxKind.TypeAssertionExpression;\r
+}\r
+exports.isTypeAssertion = isTypeAssertion;\r
+function isTypeLiteralNode(node) {\r
+    return node.kind === ts.SyntaxKind.TypeLiteral;\r
+}\r
+exports.isTypeLiteralNode = isTypeLiteralNode;\r
+function isTypeOfExpression(node) {\r
+    return node.kind === ts.SyntaxKind.TypeOfExpression;\r
+}\r
+exports.isTypeOfExpression = isTypeOfExpression;\r
+function isTypeOperatorNode(node) {\r
+    return node.kind === ts.SyntaxKind.TypeOperator;\r
+}\r
+exports.isTypeOperatorNode = isTypeOperatorNode;\r
+function isTypeParameterDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.TypeParameter;\r
+}\r
+exports.isTypeParameterDeclaration = isTypeParameterDeclaration;\r
+function isTypePredicateNode(node) {\r
+    return node.kind === ts.SyntaxKind.TypePredicate;\r
+}\r
+exports.isTypePredicateNode = isTypePredicateNode;\r
+function isTypeReferenceNode(node) {\r
+    return node.kind === ts.SyntaxKind.TypeReference;\r
+}\r
+exports.isTypeReferenceNode = isTypeReferenceNode;\r
+function isTypeQueryNode(node) {\r
+    return node.kind === ts.SyntaxKind.TypeQuery;\r
+}\r
+exports.isTypeQueryNode = isTypeQueryNode;\r
+function isUnionTypeNode(node) {\r
+    return node.kind === ts.SyntaxKind.UnionType;\r
+}\r
+exports.isUnionTypeNode = isUnionTypeNode;\r
+function isVariableDeclaration(node) {\r
+    return node.kind === ts.SyntaxKind.VariableDeclaration;\r
+}\r
+exports.isVariableDeclaration = isVariableDeclaration;\r
+function isVariableStatement(node) {\r
+    return node.kind === ts.SyntaxKind.VariableStatement;\r
+}\r
+exports.isVariableStatement = isVariableStatement;\r
+function isVariableDeclarationList(node) {\r
+    return node.kind === ts.SyntaxKind.VariableDeclarationList;\r
+}\r
+exports.isVariableDeclarationList = isVariableDeclarationList;\r
+function isVoidExpression(node) {\r
+    return node.kind === ts.SyntaxKind.VoidExpression;\r
+}\r
+exports.isVoidExpression = isVoidExpression;\r
+function isWhileStatement(node) {\r
+    return node.kind === ts.SyntaxKind.WhileStatement;\r
+}\r
+exports.isWhileStatement = isWhileStatement;\r
+function isWithStatement(node) {\r
+    return node.kind === ts.SyntaxKind.WithStatement;\r
+}\r
+exports.isWithStatement = isWithStatement;\r
+//# sourceMappingURL=node.js.map
\ No newline at end of file