import { SupportedDbtAdapter } from '../types/dbt';
import { FilterOperator, UnitOfTime } from '../types/filter';
import { WeekDay } from '../utils/timeFrames';
import { type renderFilterRuleSqlFromField } from './filtersCompiler';
export declare const DimensionSqlMock = "customers.created";
export declare const NumberDimensionMock = "customers.age";
export declare const adapterType: {
    default: SupportedDbtAdapter;
    trino: SupportedDbtAdapter;
};
export declare const NumberFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const NumberFilterBaseWithMultiValues: {
    values: number[];
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
};
export declare const NumberFilterBaseWithEmptyValues: {
    values: never[];
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
};
export declare const NumberOperatorsWithMultipleValues: FilterOperator[];
export declare const ExpectedNumberFilterSQL: Record<FilterOperator, string | null>;
export declare const YearToDateFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    settings: {
        unitOfTime: UnitOfTime;
    };
};
export declare const QuarterToDateFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    settings: {
        unitOfTime: UnitOfTime;
    };
};
export declare const MonthToDateFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    settings: {
        unitOfTime: UnitOfTime;
    };
};
export declare const WeekToDateFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    settings: {
        unitOfTime: UnitOfTime;
    };
};
export declare const InTheCurrentFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
};
export declare const ExpectedInTheCurrentFilterSQL: Record<UnitOfTime, string>;
export declare const TrinoExpectedInTheCurrentFilterSQL: Record<UnitOfTime, string>;
export declare const InTheNextFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
};
export declare const ExpectedInTheNextFilterSQL: Record<UnitOfTime, string>;
export declare const TrinoExpectedInTheNextFilterSQL: Record<UnitOfTime, string>;
export declare const ExpectedInTheNextCompleteFilterSQL: Record<UnitOfTime, string>;
export declare const TrinoExpectedInTheNextCompleteFilterSQL: Record<UnitOfTime, string>;
export declare const InThePastFilterBase: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
};
export declare const ExpectedInThePastCompleteWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const TrinoExpectedInThePastCompleteWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const ExpectedInTheCurrentWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const TrinoExpectedInTheCurrentWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const ExpectedInTheNextCompleteWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const TrinoExpectedInTheNextCompleteWeekFilterSQLWithCustomStartOfWeek: Record<WeekDay.MONDAY | WeekDay.SUNDAY, string>;
export declare const InTheLast1DayFilter: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
};
export declare const InTheLast1DayFilterSQL = "((customers.created) >= ('2020-04-03') AND (customers.created) <= ('2020-04-04'))";
export declare const TrinoInTheLast1DayFilterSQL = "((customers.created) >= CAST('2020-04-03' AS timestamp) AND (customers.created) <= CAST('2020-04-04' AS timestamp))";
export declare const InTheLast1CompletedDayFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedDayFilterSQL = "((customers.created) >= ('2020-04-03') AND (customers.created) < ('2020-04-04'))";
export declare const TrinoInTheLast1CompletedDayFilterSQL = "((customers.created) >= CAST('2020-04-03' AS timestamp) AND (customers.created) < CAST('2020-04-04' AS timestamp))";
export declare const InTheLast1WeekFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1WeekFilterSQL = "((customers.created) >= ('2020-03-28') AND (customers.created) <= ('2020-04-04'))";
export declare const TrinoInTheLast1WeekFilterSQL = "((customers.created) >= CAST('2020-03-28' AS timestamp) AND (customers.created) <= CAST('2020-04-04' AS timestamp))";
export declare const InTheLast1CompletedWeekFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedWeekFilterSQL = "((customers.created) >= ('2020-03-23') AND (customers.created) < ('2020-03-30'))";
export declare const TrinoInTheLast1CompletedWeekFilterSQL = "((customers.created) >= CAST('2020-03-23' AS timestamp) AND (customers.created) < CAST('2020-03-30' AS timestamp))";
export declare const InTheLast1MonthFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1MonthFilterSQL = "((customers.created) >= ('2020-03-04') AND (customers.created) <= ('2020-04-04'))";
export declare const TrinoInTheLast1MonthFilterSQL = "((customers.created) >= CAST('2020-03-04' AS timestamp) AND (customers.created) <= CAST('2020-04-04' AS timestamp))";
export declare const InTheLast1CompletedMonthFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedMonthFilterSQL = "((customers.created) >= ('2020-03-01') AND (customers.created) < ('2020-04-01'))";
export declare const TrinoInTheLast1CompletedMonthFilterSQL = "((customers.created) >= CAST('2020-03-01' AS timestamp) AND (customers.created) < CAST('2020-04-01' AS timestamp))";
export declare const InTheLast1YearFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1YearFilterSQL = "((customers.created) >= ('2019-04-04') AND (customers.created) <= ('2020-04-04'))";
export declare const TrinoInTheLast1YearFilterSQL = "((customers.created) >= CAST('2019-04-04' AS timestamp) AND (customers.created) <= CAST('2020-04-04' AS timestamp))";
export declare const InTheLast1CompletedYearFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedYearFilterSQL = "((customers.created) >= ('2019-01-01') AND (customers.created) < ('2020-01-01'))";
export declare const TrinoInTheLast1CompletedYearFilterSQL = "((customers.created) >= CAST('2019-01-01' AS timestamp) AND (customers.created) < CAST('2020-01-01' AS timestamp))";
export declare const InTheLast1HourFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1HourFilterSQL = "((customers.created) >= ('2020-04-04 05:12:30+00:00') AND (customers.created) <= ('2020-04-04 06:12:30+00:00'))";
export declare const TrinoInTheLast1HourFilterSQL = "((customers.created) >= CAST('2020-04-04 05:12:30+00:00' AS timestamp) AND (customers.created) <= CAST('2020-04-04 06:12:30+00:00' AS timestamp))";
export declare const InTheLast1CompletedHourFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedHourFilterSQL = "((customers.created) >= ('2020-04-04 05:00:00+00:00') AND (customers.created) < ('2020-04-04 06:00:00+00:00'))";
export declare const TrinoInTheLast1CompletedHourFilterSQL = "((customers.created) >= CAST('2020-04-04 05:00:00+00:00' AS timestamp) AND (customers.created) < CAST('2020-04-04 06:00:00+00:00' AS timestamp))";
export declare const InTheLast1MinuteFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1MinuteFilterSQL = "((customers.created) >= ('2020-04-04 06:11:30+00:00') AND (customers.created) <= ('2020-04-04 06:12:30+00:00'))";
export declare const TrinoInTheLast1MinuteFilterSQL = "((customers.created) >= CAST('2020-04-04 06:11:30+00:00' AS timestamp) AND (customers.created) <= CAST('2020-04-04 06:12:30+00:00' AS timestamp))";
export declare const InTheLast1CompletedMinuteFilter: {
    settings: {
        unitOfTime: UnitOfTime;
        completed: boolean;
    };
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: number[];
};
export declare const InTheLast1CompletedMinuteFilterSQL = "((customers.created) >= ('2020-04-04 06:11:00+00:00') AND (customers.created) < ('2020-04-04 06:12:00+00:00'))";
export declare const TrinoInTheLast1CompletedMinuteFilterSQL = "((customers.created) >= CAST('2020-04-04 06:11:00+00:00' AS timestamp) AND (customers.created) < CAST('2020-04-04 06:12:00+00:00' AS timestamp))";
export declare const InBetweenPastTwoYearsFilter: {
    id: string;
    target: {
        fieldId: string;
    };
    operator: FilterOperator;
    values: Date[];
};
export declare const InBetweenPastTwoYearsFilterSQL = "((customers.created) >= ('2021-04-04') AND (customers.created) <= ('2023-04-04'))";
export declare const TrinoInBetweenPastTwoYearsFilterSQL = "((customers.created) >= CAST('2021-04-04' AS timestamp) AND (customers.created) <= CAST('2023-04-04' AS timestamp))";
export declare const InBetweenPastTwoYearsTimestampFilterSQL = "((customers.created) >= ('2021-04-04 00:00:00+00:00') AND (customers.created) <= ('2023-04-04 00:00:00+00:00'))";
export declare const TrinoInBetweenPastTwoYearsTimestampFilterSQL = "((customers.created) >= CAST('2021-04-04 00:00:00+00:00' AS timestamp) AND (customers.created) <= CAST('2023-04-04 00:00:00+00:00' AS timestamp))";
export declare const stringFilterDimension = "\"customers\".first_name";
export declare const stringFilterRuleMocks: {
    includeFilterWithSingleVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    includeFilterWithSingleValSQL: string;
    includeFilterWithMultiVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    includeFilterWithMultiValSQL: string;
    includeFilterWithNoVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    includeFilterWithNoValSQL: string;
    notIncludeFilterWithSingleVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    notIncludeFilterWithSingleValSQL: string;
    notIncludeFilterWithMultiVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    notIncludeFilterWithMultiValSQL: string;
    notIncludeFilterWithNoVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    notIncludeFilterWithNoValSQL: string;
    startsWithFilterWithSingleVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    startsWithFilterWithSingleValSQL: string;
    startsWithFilterWithMultiVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    startsWithFilterWithMultiValSQL: string;
    startsWithFilterWithNoVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    startsWithFilterWithNoValSQL: string;
    endsWithFilterWithSingleVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    endsWithFilterWithSingleValSQL: string;
    endsWithFilterWithMultiVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    endsWithFilterWithMultiValSQL: string;
    endsWithFilterWithNoVal: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    endsWithFilterWithNoValSQL: string;
    equalsFilterWithSingleUnescapedValueSQL: string;
    equalsFilterWithSingleUnescapedValue: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    equalsFilterWithMultiUnescapedValueSQL: string;
    equalsFilterWithMultiUnescapedValue: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    equalsFilterWithMultiValAndNull: {
        operator: FilterOperator;
        includeNull: boolean;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    equalsFilterWithMultiValAndNullSQL: string;
    equalsFilterWithOnlyNull: {
        operator: FilterOperator;
        includeNull: boolean;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    equalsFilterWithOnlyNullSQL: string;
    equalsFilterWithNoValAndNoNull: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: never[];
    };
    equalsFilterWithNoValAndNoNullSQL: string;
    includeFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    includeFilterWithEmptyStringSQL: string;
    includeFilterWithMixedEmptyStrings: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    includeFilterWithMixedEmptyStringsSQL: string;
    equalsFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    equalsFilterWithEmptyStringSQL: string;
    startsWithFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    startsWithFilterWithEmptyStringSQL: string;
    endsWithFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    endsWithFilterWithEmptyStringSQL: string;
    notEqualsFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    notEqualsFilterWithEmptyStringSQL: string;
    notIncludeFilterWithEmptyString: {
        operator: FilterOperator;
        id: string;
        target: {
            fieldId: string;
        };
        values: string[];
    };
    notIncludeFilterWithEmptyStringSQL: string;
};
type RenderFilterRuleSqlParams = Parameters<typeof renderFilterRuleSqlFromField>;
export declare const disabledFilterMock: {
    filterRule: RenderFilterRuleSqlParams[0];
    field: RenderFilterRuleSqlParams[1];
    fieldQuoteChar: RenderFilterRuleSqlParams[2];
    stringQuoteChar: RenderFilterRuleSqlParams[3];
    escapeString: RenderFilterRuleSqlParams[4];
    startOfWeek: RenderFilterRuleSqlParams[5];
    adapterType: RenderFilterRuleSqlParams[6];
    timezone: RenderFilterRuleSqlParams[7];
};
export declare const filterInThePastCompletedDayTimezoneMocks: string[][];
export declare const filterInTheNextCompletedDayTimezoneMocks: string[][];
export declare const filterInThePastCompletedDayDstMocks: string[][];
export declare const filterInTheNextCompletedDayDstMocks: string[][];
export declare const filterInThePastNonCompletedDayTimezoneMocks: string[][];
export declare const filterInTheNextNonCompletedDayTimezoneMocks: string[][];
export declare const filterInThePastNonCompletedDayDstMocks: string[][];
export declare const filterInTheNextNonCompletedDayDstMocks: string[][];
export declare const filterInTheCurrentDayTimezoneMocks: string[][];
export declare const filterInThePastCompletedDayDateFormatterMocks: string[][];
export declare const filterInTheCurrentDayDateFormatterMocks: string[][];
export declare const filterInThePastNonCompletedDayDateFormatterMocks: string[][];
export declare const filterInTheNextCompletedDayDateFormatterMocks: string[][];
export declare const filterInTheNextNonCompletedDayDateFormatterMocks: string[][];
export declare const filterNegativeOffsetEdgeCaseCurrentDayMocks: string[][];
export declare const filterNegativeOffsetEdgeCasePastCompletedDayMocks: string[][];
export declare const filterPositiveOffsetEdgeCaseCurrentDayMocks: string[][];
export declare const filterPositiveOffsetEdgeCasePastCompletedDayMocks: string[][];
export {};
//# sourceMappingURL=filtersCompiler.mock.d.ts.map