# Constants

AST_ARRAY.
AST_BINARY_OP.
AST_BOOL.
AST_DATE.
AST_IDENTIFIER.
AST_NULL.
AST_NUMBER.
AST_STRING.
AST_RFC3339.
AST_UNARY_OP.
K_AND.
K_BETWEEN.
EQ.
GE.
GT.
K_ILIKE (SQL ILIKE).
K_IN.
K_IS (Only for NULL and NOT NULL).
LE.
K_LIKE (SQL LIKE).
LT.
MINUS.
NE.
K_NOT.
K_OR.
PERCENT (MODULUS).
PLUS.
REQ (Regular expression equals).
RNE (Regular expression not equals).
SLASH (DIVIDE).
STAR (MULTIPLY).
UMINUS.

# Structs

BetweenOperatorError is returned when BETWEEN operator is used incorrectly.
DivisionByZeroError is returned when attempting to divide by zero.
KeyNotFoundError is returned when a requested key is not found in the data.
SyntaxError represents a TSL parsing error with context.
TypeMismatchError is returned when operand types don't match the operator.
UnexpectedLiteralError is returned when encountering an unexpected literal or operator.
UnexpectedOperatorError is returned when encountering an unexpected operator.
UnexpectedTypeError is returned when encountering an unexpected type in the AST.

# Type aliases

Kind represents the kind of node in the AST These values must match the ast_node_type enum in tsl_ast.h.
Operator represents the type definitions.