import type { Duration, Timezone } from 'chronoshift'; import { Attributes } from '../datatypes'; import { PlyType } from '../types'; import { SQLDialect } from './baseDialect'; export interface DruidDialectOptions { attributes?: Attributes; } export declare class DruidDialect extends SQLDialect { static TIME_PART_TO_FUNCTION: Record; static CAST_TO_FUNCTION: Record>; private readonly attributes?; constructor(options?: DruidDialectOptions); dateToSQLDateString(date: Date): string; floatDivision(numerator: string, denominator: string): string; emptyGroupBy(): string; timeToSQL(date: Date): string; stringArrayToSQL(value: string[]): string; ipParse(value: string): string; ipPrefixParse(value: string): 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; countDistinctExpression(a: string, parameterAttributeName: string | undefined): string; isNotDistinctFromExpression(a: string, b: string): string; castExpression(inputType: PlyType | undefined, operand: string, targetType: string): string; private operandAsTimestamp; timeFloorExpression(operand: string, duration: Duration, timezone: Timezone): string; timeBucketExpression(operand: string, duration: Duration, timezone: Timezone): string; timePartExpression(operand: string, part: string, timezone: Timezone): string; timeShiftExpression(operand: string, duration: Duration, step: int, timezone: Timezone): string; extractExpression(operand: string, regexp: string): string; regexpExpression(expression: string, regexp: string): string; 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(columnName: string, searchString: string, ipSearchType: string): string; ipSearchExpression(columnName: string, searchString: string, ipSearchType: string): string; ipStringifyExpression(operand: string): string; } //# sourceMappingURL=druidDialect.d.ts.map