import { CheckboxList } from './CheckboxList';
import { IgcCheckedChangedEventArgs } from "./igc-checked-changed-event-args";
import { IgcSelectAllCheckboxChangedEventArgs } from "./igc-select-all-checkbox-changed-event-args";
import { IgcGridSelectedKeysCollection } from "./igc-grid-selected-keys-collection";
import { CheckboxListIndexType } from "./CheckboxListIndexType";
import { InputGroupDisplayType } from "igniteui-webcomponents-inputs";
import { BaseControlTheme } from "igniteui-webcomponents-core";
import { ControlDisplayDensity } from "igniteui-webcomponents-core";
import { IgcHTMLElement } from "igniteui-webcomponents-core";
export declare class IgcCheckboxListComponent extends IgcHTMLElement {
    private _height;
    private _width;
    height: string;
    width: string;
    private _dataSource;
    dataSource: any;
    private _container;
    private _renderer;
    constructor();
    updateStyle(): void;
    destroy(): void;
    protected createImplementation(): CheckboxList;
    private _checkboxList;
    private _disconnected;
    disconnectedCallback(): void;
    connectedCallback(): void;
    afterContentInit(): void;
    protected _implementation: any;
    /**
     * @hidden
     */
    readonly i: CheckboxList; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgcCheckboxListComponent;
    private _settingAttributes;
    protected _attached: boolean;
    private _queuedSetAttributes;
    protected _enqueueSetAttribute(attrName: string, attrValue: string): void;
    protected _flushQueuedAttributes(): void;
    protected _a(attrName: string, attrValue: any): void;
    private static _observedAttributesIgcCheckboxListComponent;
    static readonly observedAttributes: string[];
    private _updatingFromAttribute;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    static htmlTagName: string;
    protected static _isElementRegistered: boolean;
    static register(): void;
    private _keys;
    /**
     * Gets the collection responsible for selection in the CheckboxList. Selection is determined by two factors:
     * whether everything is selected or deselected and the values present in this collection. If everything is
     * selected then any items in this collection will be deselected. If everything is deselected then any items in
     * this collection will be selected. The CheckboxList defaults all items as deselected. This state can change
     * when you use the SelectAll and DeselectAll methods.
    */
    keys: IgcGridSelectedKeysCollection;
    /**
     * Gets or sets the primary key to use for the CheckboxList.
    */
    primaryKey: string[];
    /**
     * Gets or Sets the property name that contains the values.
    */
    dataMemberPath: string;
    /**
     * Gets or Sets the property name that contains the values.
    */
    selectedMemberPath: string;
    /**
     * Gets or Sets the property name that contains the values.
    */
    filterPlaceholderText: string;
    /**
     * Gets or Sets the property name that contains the values.
    */
    searchInputType: InputGroupDisplayType;
    /**
     * Gets or Sets the property name that contains the values.
    */
    rowHeight: number;
    readonly actualRowHeight: number;
    /**
     * Gets or Sets the property name that contains the values.
    */
    cellTextStyle: string;
    /**
     * Gets or Sets the property name that contains the values.
    */
    indexType: CheckboxListIndexType;
    /**
     * Gets or Sets the property name that contains the values.
    */
    baseTheme: BaseControlTheme;
    /**
     * Gets or Sets the property name that contains the values.
    */
    density: ControlDisplayDensity;
    /**
     * Gets / sets the caption of the "Select All" checkbox.
    */
    selectAllCaption: string;
    /**
     * Gets or sets the color to use for the "Select All" label.
    */
    selectAllCaptionTextColor: string;
    /**
     * Gets or sets the color to use for the actual header selectAllCaption text.
    */
    actualSelectAllCaptionTextColor: string;
    /**
     * Gets / sets whether the "Select all" checkbox is visible.
    */
    showSelectAll: boolean;
    /**
     * Gets or sets the color to use for the background of the component.
    */
    backgroundColor: string;
    /**
     * Gets or sets the color to use for the text of the component.
    */
    textColor: string;
    /**
     * Gets or sets whether the filter input is visible.
    */
    showFilter: boolean;
    /**
     * Gets or sets whether row hover highlighting is enabled.
    */
    isRowHoverEnabled: boolean;
    findByName(name: string): any;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected readonly hasUserValues: Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    /**
 * selects all the items in the checkbox list.

*/
    selectAll(): void;
    /**
     * Deselects all the items in the checkbox list.
    
    */
    deselectAll(): void;
    notifySetItem(index: number, oldItem: any, newItem: any): void;
    /**
     * Manually notifies the checkboxlist's grid that the data it has bound to has been cleared and needs to be re-examined.
     * This should not be called if the data that the grid is bound to is already observable.
    
    */
    notifyClearItems(): void;
    notifyInsertItem(index: number, newItem: any): void;
    notifyRemoveItem(index: number, oldItem: any): void;
    addKeyValue(value: any[]): void;
    removeKeyValue(value: any[]): void;
    /**
     * Returns true if no items are selected / checked; otherwise false.
    
    */
    isNothingSelected(): boolean;
    /**
     * Returns true if all of the items are selected / checked; otherwise false.
    
    */
    isEverythingSelected(): boolean;
    private _checkedChanged;
    private _checkedChanged_wrapped;
    /**
     * Called when a checkbox is checked or unchecked.
    */
    checkedChanged: (s: IgcCheckboxListComponent, e: IgcCheckedChangedEventArgs) => void;
    private _selectAllCheckboxChanged;
    private _selectAllCheckboxChanged_wrapped;
    /**
     * Called when the SelectAll checkbox is checked or unchecked.
    */
    selectAllCheckboxChanged: (s: IgcCheckboxListComponent, e: IgcSelectAllCheckboxChangedEventArgs) => void;
}
