import { FilterConfig } from '../data/filter-config';
import { IColumnConfig } from '../tables/column-config.interface';
import { NgbDate } from '@ng-bootstrap/ng-bootstrap';
import { IQuickDateRangeOptionLabel } from '../../components/date-picker/date-range-picker.component';
export interface IFilterBarDatePickerConfig {
    show: boolean;
    initialQuickDateRangeOption?: IQuickDateRangeOptionLabel;
    startDate?: string;
    endDate?: string;
    markDisabled?(date: NgbDate, current?: {
        year: number;
        month: number;
    }): boolean;
}
export interface IFilterBarConfig {
    filters: FilterConfig[];
    allowTextFiltering: boolean;
    textFilter: string;
    textFilteringPlaceholder: string;
    allowTableCog: boolean;
    columns: IColumnConfig[];
    showAnyAllChoice?: boolean;
    datePicker?: IFilterBarDatePickerConfig;
    readonly dropdownFilters: FilterConfig[];
    readonly badgeFilters: FilterConfig[];
    getAsyncFilters?(): Promise<FilterConfig[]>;
}
