import { Ast } from ".."; import { Constant } from "../../constant"; import { TokenKind } from "../../token"; export interface SimplifiedType { readonly isNullable: boolean; readonly primitiveTypeConstantKind: Constant.PrimitiveTypeConstant; } export declare function assertIsLeaf(node: Ast.TNode): asserts node is Ast.TLeaf; export declare function assertIsTUnaryExpression(node: Ast.TNode): asserts node is Ast.TUnaryExpression; export declare function assertIsTNullablePrimitiveType(node: Ast.TNode): asserts node is Ast.TNullablePrimitiveType; export declare function getIdentifierLiteral(node: Ast.Identifier | Ast.IdentifierExpression): string; export declare function isTAnyLiteral(node: Ast.TNode): node is Ast.TAnyLiteral; export declare function isTArithmeticExpression(node: Ast.TNode): node is Ast.TArithmeticExpression; export declare function isTAsExpression(node: Ast.TNode): node is Ast.TAsExpression; export declare function isTEqualityExpression(node: Ast.TNode): node is Ast.TEqualityExpression; export declare function isTExpression(node: Ast.TNode): node is Ast.TExpression; export declare function isTFieldAccessExpression(node: Ast.TNode): node is Ast.TFieldAccessExpression; export declare function isTIsExpression(node: Ast.TNode): node is Ast.TIsExpression; export declare function isTLeaf(node: Ast.TNode): node is Ast.TLeaf; export declare function isTListItem(node: Ast.TNode): node is Ast.TListItem; export declare function isTLogicalExpression(node: Ast.TNode): node is Ast.TLogicalExpression; export declare function isTMetadataExpression(node: Ast.TNode): node is Ast.TMetadataExpression; export declare function isTNullablePrimitiveType(node: Ast.TNode): node is Ast.TNullablePrimitiveType; export declare function isTNullCoalescingExpression(node: Ast.TNode): node is Ast.TNullCoalescingExpression; export declare function isTPrimaryExpression(node: Ast.TNode): node is Ast.TPrimaryExpression; export declare function isTPrimaryType(node: Ast.TNode): node is Ast.TPrimaryType; export declare function isTRecursivePrimaryExpression(node: Ast.TNode): node is Ast.TRecursivePrimaryExpression; export declare function isTRelationalExpression(node: Ast.TNode): node is Ast.TRelationalExpression; export declare function isTType(node: Ast.TNode): node is Ast.TType; export declare function isTTypeExpression(node: Ast.TNode): node is Ast.TTypeExpression; export declare function isTUnaryExpression(node: Ast.TNode): node is Ast.TUnaryExpression; export declare function literalKindFrom(tokenKind: TokenKind | undefined): Ast.LiteralKind.Numeric | Ast.LiteralKind.Logical | Ast.LiteralKind.Null | Ast.LiteralKind.Text | undefined; export declare function simplifyType(type: Ast.TType): SimplifiedType; export declare function nodeKindFromTBinOpExpressionOperator(constantKind: Constant.TBinOpExpressionOperator): Ast.TBinOpExpressionNodeKind; export declare function simplifyAsNullablePrimitiveType(node: Ast.AsNullablePrimitiveType): SimplifiedType; export declare function primitiveTypeConstantKindFrom(node: Ast.AsNullablePrimitiveType | Ast.NullablePrimitiveType | Ast.PrimitiveType): Constant.PrimitiveTypeConstant;