import "../../core/AtomList";
import { IClassOf } from "../../core/types";
import { AtomControl } from "./AtomControl";
export declare class AtomItemsControl extends AtomControl {
    mAllowSelectFirst: boolean;
    allowMultipleSelection: boolean;
    valuePath: string;
    labelPath: string;
    itemTemplate: IClassOf<AtomControl>;
    version: number;
    autoScrollToSelection: any;
    sort: string | ((a: any, b: any) => number);
    valueSeparator: string;
    uiVirtualize: any;
    private mValue;
    private mSelectedItems;
    private mSelectedItemsWatcher;
    private itemsInvalidated;
    private mFilter;
    private mSelectAll;
    private mItemsPresenter;
    private mFirstChild;
    private mLastChild;
    private mScrollerSetup;
    private mScopes;
    private mVirtualContainer;
    private mChildItemType;
    private scrollTimeout;
    private mTraining;
    private mAvgHeight;
    private mAvgWidth;
    private mAllRows;
    private mColumns;
    private mVisibleRows;
    private mVisibleHeight;
    private mReady;
    private mIsChanging;
    private mOnUIChanged;
    private lastScrollTop;
    private mPromises;
    private mItems;
    private mItemsDisposable;
    private isUpdating;
    itemsPresenter: HTMLElement;
    value: any;
    items: any[];
    selectedItem: any;
    selectedItems: any[];
    selectedIndex: number;
    dispose(e?: HTMLElement): void;
    onPropertyChanged(name: string): void;
    selectAll: any;
    resetVirtualContainer(): void;
    postVirtualCollectionChanged(): void;
    onVirtualCollectionChanged(): void;
    isSelected(item: any): boolean;
    bringIntoView(data: any): void;
    bringSelectionIntoView(): void;
    updateSelectionBindings(): void;
    onSelectedItemsChanged(type: any, index: any, item: any): void;
    hasItems(): boolean;
    invalidateItems(): void;
    onCollectionChanged(key: string, index: number, item: any): any;
    protected preCreate(): void;
    protected onCollectionChangedInternal(key: string, index: number, item: any): void;
    allowSelectFirst: any;
    filter: any;
    protected onScroll(): void;
    protected toggleSelection(data: any): void;
    protected validateScroller(): void;
    protected createChild(df: DocumentFragment, data: any): AtomControl;
    protected disposeChildren(e: HTMLElement): void;
}
//# sourceMappingURL=AtomItemsControl.d.ts.map