import { AttributeInfo } from '../../datatypes'; import { Expression, RefExpression } from '../../expressions'; import { CustomDruidTransforms } from './druidTypes'; export interface DruidFilterAndIntervals { filter: Druid.Filter; intervals: Druid.Intervals; } export interface DruidFilterBuilderOptions { rawAttributes: AttributeInfo[]; timeAttribute: string; allowEternity: boolean; customTransforms: CustomDruidTransforms; } export declare class DruidFilterBuilder { static TIME_ATTRIBUTE: string; static TRUE_INTERVAL: string; rawAttributes: AttributeInfo[]; timeAttribute: string; allowEternity: boolean; customTransforms: CustomDruidTransforms; constructor(options: DruidFilterBuilderOptions); filterToDruid(filter: Expression): DruidFilterAndIntervals; timeFilterToIntervals(filter: Expression): Druid.Intervals; timelessFilterToFilter(filter: Expression): Druid.Filter; private valueToIntervals; private makeSelectorFilter; private makeInFilter; private makeBoundFilter; private makeIntervalFilter; private makeRegexFilter; private makeContainsFilter; private makeExpressionFilter; private getSingleReferenceAttributeInfo; private getDimensionNameForAttributeInfo; getAttributesInfo(attributeName: string): AttributeInfo; isTimeRef(ex: Expression): ex is RefExpression; } //# sourceMappingURL=druidFilterBuilder.d.ts.map