import * as ESTree from 'estree'; /** * Update properties on node * @param node AST node * @param props kv to update */ export declare function sp(node: ASTNode, props: Partial>): node is ASTNode; export declare function getBlockId(node: BlockStatement): BlockId; export declare type BlockId = string; export declare type NodeType = ESTree.Node['type']; export declare type NodeByType = ASTNode>; export declare type ASTNode = { [K in keyof TType]: TType[K] extends object ? ASTNode : TType[K]; } & (TType extends ESTree.Node ? { start: number; end: number; } : {}); export declare type BinaryOperator = ESTree.BinaryOperator; export declare type Node = ASTNode; export declare type Identifier = ASTNode; export declare type Literal = ASTNode; export declare type SimpleLiteral = ASTNode; export declare type RegExpLiteral = ASTNode; export declare type BigIntLiteral = ASTNode; export declare type Program = ASTNode; export declare type Function = ASTNode; export declare type FunctionDeclaration = ASTNode; export declare type FunctionExpression = ASTNode; export declare type ArrowFunctionExpression = ASTNode; export declare type SwitchCase = ASTNode; export declare type CatchClause = ASTNode; export declare type VariableDeclarator = ASTNode; export declare type Statement = ASTNode; export declare type ExpressionStatement = ASTNode; export declare type BlockStatement = ASTNode; export declare type StaticBlock = ASTNode; export declare type EmptyStatement = ASTNode; export declare type DebuggerStatement = ASTNode; export declare type WithStatement = ASTNode; export declare type ReturnStatement = ASTNode; export declare type LabeledStatement = ASTNode; export declare type BreakStatement = ASTNode; export declare type ContinueStatement = ASTNode; export declare type IfStatement = ASTNode; export declare type SwitchStatement = ASTNode; export declare type ThrowStatement = ASTNode; export declare type TryStatement = ASTNode; export declare type WhileStatement = ASTNode; export declare type DoWhileStatement = ASTNode; export declare type ForStatement = ASTNode; export declare type ForInStatement = ASTNode; export declare type ForOfStatement = ASTNode; export declare type VariableDeclaration = ASTNode; export declare type ClassDeclaration = ASTNode; export declare type Expression = ASTNode; export declare type ThisExpression = ASTNode; export declare type ArrayExpression = ASTNode; export declare type ObjectExpression = ASTNode; export declare type YieldExpression = ASTNode; export declare type UnaryExpression = ASTNode; export declare type UpdateExpression = ASTNode; export declare type BinaryExpression = ASTNode; export declare type AssignmentExpression = ASTNode; export declare type LogicalExpression = ASTNode; export declare type MemberExpression = ASTNode; export declare type ConditionalExpression = ASTNode; export declare type SimpleCallExpression = ASTNode; export declare type NewExpression = ASTNode; export declare type SequenceExpression = ASTNode; export declare type TemplateLiteral = ASTNode; export declare type TaggedTemplateExpression = ASTNode; export declare type ClassExpression = ASTNode; export declare type MetaProperty = ASTNode; export declare type AwaitExpression = ASTNode; export declare type ImportExpression = ASTNode; export declare type ChainExpression = ASTNode; export declare type PrivateIdentifier = ASTNode; export declare type Property = ASTNode; export declare type PropertyDefinition = ASTNode; export declare type AssignmentProperty = ASTNode; export declare type Super = ASTNode; export declare type TemplateElement = ASTNode; export declare type SpreadElement = ASTNode; export declare type ObjectPattern = ASTNode; export declare type ArrayPattern = ASTNode; export declare type RestElement = ASTNode; export declare type AssignmentPattern = ASTNode; export declare type ClassBody = ASTNode; export declare type MethodDefinition = ASTNode; export declare type ImportDeclaration = ASTNode; export declare type ExportNamedDeclaration = ASTNode; export declare type ExportDefaultDeclaration = ASTNode; export declare type ExportAllDeclaration = ASTNode; export declare type ImportSpecifier = ASTNode; export declare type ImportDefaultSpecifier = ASTNode; export declare type ImportNamespaceSpecifier = ASTNode; export declare type ExportSpecifier = ASTNode; export declare type Pattern = ASTNode; export declare type CallExpression = ASTNode; export declare type PropertyLiteral = Property & { key: Literal; }; export declare type StringLiteral = Literal & { value: string; }; export declare type NumericLiteral = Literal & { value: number; }; export declare type BooleanLiteral = Literal & { value: boolean; }; export declare type NumericUnaryExpression = UnaryExpression & { argument: NumericLiteral; }; //# sourceMappingURL=types.d.ts.map