import type { Duration, Timezone } from 'chronoshift'; import { Ip } from '../datatypes/ip'; import { PlyType, PlyTypeSimple } from '../types'; export declare abstract class SQLDialect { private escapedTableName; constructor(); setTable(name: string | null): void; nullConstant(): string; emptyGroupBy(): string; escapeName(name: string): string; maybeNamespacedName(name: string): string; escapeLiteral(name: string): string; booleanToSQL(bool: boolean): string; ipToSQL(ip: Ip): string; floatDivision(numerator: string, denominator: string): string; numberOrTimeToSQL(x: number | Date): string; numberToSQL(num: number): string; dateToSQLDateString(date: Date): string; abstract timeToSQL(date: Date): string; abstract stringArrayToSQL(value: string[]): string; aggregateFilterIfNeeded(inputSQL: string, expressionSQL: string, elseSQL?: string | null): string; concatExpression(_a: string, _b: string): string; containsExpression(_a: string, _b: string, _insensitive: boolean): string; mvContainsExpression(_a: string, _b: string[]): string; mvFilterOnlyExpression(_a: string, _b: string[]): string; mvOverlapExpression(_a: string, _b: string[]): string; substrExpression(a: string, position: number, length: number): string; coalesceExpression(a: string, b: string): string; countDistinctExpression(a: string, _parameterAttributeName: string | undefined): string; ifThenElseExpression(a: string, b: string, c?: string): string; filterAggregatorExpression(aggregate: string, whereFilter: string): string; isNotDistinctFromExpression(a: string, b: string): string; regexpExpression(expression: string, regexp: string): string; inExpression(operand: string, start: string, end: string, bounds: string): string; abstract castExpression(inputType: PlyType, operand: string, targetType: PlyTypeSimple): string; lengthExpression(a: string): string; abstract timeFloorExpression(operand: string, duration: Duration, timezone: Timezone): string; abstract timeBucketExpression(operand: string, duration: Duration, timezone: Timezone): string; abstract timePartExpression(operand: string, part: string, timezone: Timezone): string; abstract timeShiftExpression(operand: string, duration: Duration, step: int, timezone: Timezone): string; abstract extractExpression(operand: string, regexp: string): string; abstract indexOfExpression(str: string, substr: string): string; quantileExpression(_str: string, _quantile: number, _parameterAttributeName: string | undefined): string; logExpression(base: string, operand: string): string; lookupExpression(_base: string, _lookup: string): string; ipMatchExpression(_colName: string, _searchString: string, _ipSearchType?: string): string; ipSearchExpression(_colName: string, _searchString: string, _ipSearchType?: string): string; ipStringifyExpression(_operand: string): string; } //# sourceMappingURL=baseDialect.d.ts.map