import { AfterViewInit, EventEmitter, OnDestroy, QueryList } from '@angular/core';
import { Subject } from 'rxjs';
import { FacetEvent } from '../facet-events';
import { FacetService } from '../facet.service';
import { Facet } from '../models/facet';
import { FacetCheckListItemComponent } from './check-list-item/facet-check-list-item.component';
import * as i0 from "@angular/core";
export declare class FacetCheckListComponent implements AfterViewInit, OnDestroy {
    readonly facetService: FacetService;
    id: string;
    /** This will allow you to define an initial set of selected facets. */
    set selected(selection: Facet[]);
    /** Defines the complete list of facets that can be selected. */
    facets: Facet[];
    /** Defines the text displayed at the top of the Facet Check List. */
    header: string;
    /** If `false` the list will grow to display all possible facets. If `true` a scrollbar will appear to prevent the list from growing too large. */
    scrollbar: boolean;
    /** Defines whether or not the checkboxes will appear in simplified form. */
    simplified: boolean;
    /** Defines whether or not the Facet Check List should be initially expanded or not. */
    expanded: boolean;
    /**
     * This will be triggered when a facet is selected, deselected or all facets are deselected.
     * The event will be an instance of either `FacetSelect`, `FacetDeselect` or `FacetDeselectAll` and
     * will contain the facet being selected or deselected in a `facet` property (deselect all will not contain affected facets).
     */
    events: Subject<FacetEvent>;
    /** If two-way binding is used this array will get updated any time the selected facets change. */
    selectedChange: EventEmitter<Facet[]>;
    options: QueryList<FacetCheckListItemComponent>;
    isFocused: boolean;
    activeIndex: number;
    private readonly _onDestroy;
    private _focusKeyManager;
    constructor();
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    onFocus(index: number): void;
    onKeydown(event: KeyboardEvent): void;
    toggleFacet(index: number, facet: Facet): void;
    private getSelectedFacets;
    private isOwnFacet;
    static ɵfac: i0.ɵɵFactoryDeclaration<FacetCheckListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FacetCheckListComponent, "ux-facet-check-list", never, { "id": { "alias": "id"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "facets": { "alias": "facets"; "required": false; }; "header": { "alias": "header"; "required": false; }; "scrollbar": { "alias": "scrollbar"; "required": false; }; "simplified": { "alias": "simplified"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; }, { "events": "events"; "selectedChange": "selectedChange"; }, never, never, false, never>;
}
