@qrvey/formula-lang
Version:
QFormula support for qrvey projects
48 lines (47 loc) • 1.34 kB
TypeScript
export declare enum ENGINES {
ELASTICSEARCH = "elasticsearch",
SNOWFLAKE = "snowflake",
REDSHIFT = "redshift",
POSTGRESQL = "postgresql"
}
export declare enum RESPONSE_LEVEL {
runtime = "Runtime",
function = "Function"
}
export declare enum AST_TYPES {
program = "Program",
parenthesisExpression = "ParenthesisExpression",
binaryExpression = "BinaryExpression",
unaryExpression = "UnaryExpression",
functionCall = "FunctionCall",
variable = "Variable",
column = "Column",
token = "Token",
literal = "Literal",
unknown = "Unknown",
externalFormula = "ExternalFormula"
}
export declare enum AST_PRIMITIVES {
STRING = "string",
DATE = "date",
NUMBER = "number",
BOOLEAN = "boolean",
UNKNOWN = "unknown"
}
export declare enum CUSTOM_PRIMITIVE {
INTEGER = "INTEGER",
DECIMAL = "DECIMAL"
}
export type Primitive = AST_PRIMITIVES | AST_PRIMITIVES[];
export type CustomEngineOperators = {
[key in ENGINES]?: {
[T: string]: string;
};
};
export declare const CustomOperators: CustomEngineOperators;
export declare enum ELASTICSEARCH_SCRIPT_NAMES {
dateFormat = "DATE_FORMAT_SCRIPT",
setTimezone = "SET_TIMEZONE_SCRIPT",
subString = "SUBSTRING_SCRIPT"
}
export declare const DATE_AND_NUMBERS_DATA_TYPES: AST_PRIMITIVES[];