import { DoCheck, OnDestroy, OnInit } from '@angular/core';
import { FilterType } from './filters-type.enum';
import { IFilterOption, IFiltersConfig } from './filters-config.interface';
import { FiltersModel } from './filters.model';
import { Subject, Subscription } from 'rxjs/index';
import { FiltersConfig } from './filters.config';
export declare class FiltersComponent implements OnInit, DoCheck, OnDestroy {
    private conf;
    private carousel;
    FilterType: typeof FilterType;
    data: FiltersModel[];
    onFilterOptionChanged$: Subject<FiltersModel>;
    searchFilter$: Subject<FiltersModel>;
    subscriptions: Subscription;
    private _filters;
    private _oldFilters;
    private _collapsed;
    collapsed: boolean;
    filters: IFiltersConfig[];
    constructor(conf: FiltersConfig);
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngDoCheck(): void;
    resetFilters(silent?: boolean): void;
    clearSearch(filter: FiltersModel, silent?: boolean): void;
    /**
     * Called when filter option is selected
     */
    onFilterOptionSelected(filter: FiltersModel, option: IFilterOption): void;
    /**
     * Called when character is typed in the search filter type
     */
    onSearchFilterChange(filter: FiltersModel): void;
    onCollapsedFilter($event: any): void;
    onCollapsedSearch($event: any): void;
    /**
     * Used for track by and boost performance
     */
    trackByFn(index: any, action: any): any;
    /**
     * Convert filter config objects to Filter Models
     */
    setData(): void;
}
