plywood
Version:
A query planner and executor
38 lines • 1.44 kB
TypeScript
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