import { FocusMonitor } from '@angular/cdk/a11y'; import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling'; import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, TemplateRef } from '@angular/core'; import { MatSort, Sort } from '@angular/material/sort'; import { ILfSelectable, ItemWithId } from '@laserfiche/lf-ui-components/shared'; import { GridSelectionListDataSource } from './lf-selection-list-data-source'; import { ColumnDef, ColumnOrderBy, SelectedItemEvent } from './lf-selection-list-types'; import * as i0 from "@angular/core"; /** @internal */ export interface RepositoryBrowserData { columns: Record; } /** @internal */ export declare class LfSelectionListComponent implements AfterViewInit, OnDestroy { /** @internal */ private focusMonitor; private ref; scrollChanged: EventEmitter; itemDoubleClicked: EventEmitter; itemSelected: EventEmitter; itemFocused: EventEmitter; refreshData: EventEmitter; itemSize: number; private _pageSize; set pageSize(value: number); get pageSize(): number; listItemRef?: TemplateRef; alwaysShowHeader?: boolean; set listItems(items: ILfSelectable[]); private setNewWidths; set uniqueIdentifier(key: string); set multipleSelection(value: boolean); get multipleSelection(): boolean; get columnOrderBy(): ColumnOrderBy | undefined; set columnOrderBy(orderBy: ColumnOrderBy | undefined); set columns(cols: ColumnDef[]); get columns(): ColumnDef[]; private setDefaultWidths; /** @internal */ viewport?: CdkVirtualScrollViewport; /** @internal */ matTable?: ElementRef; /** @internal */ sort?: MatSort; /** @internal */ private additionalColumnDefs; /** @internal */ private _uniqueIdentifier?; /** @internal */ private allSubscriptions?; /** @internal */ private _columnOrderBy; /** @internal */ private selectable; /** @internal */ private _multipleSelectEnabled; /** @internal */ allColumnHeaders?: string[]; /** @internal */ dataSource?: GridSelectionListDataSource; /** @internal */ items: ILfSelectable[]; /** @internal */ allColumnDefs: ColumnDef[]; /** @internal */ columnsWidth: string | undefined; /** @internal */ resizePosition: number; /** @internal */ _showHeader: boolean; /** @internal */ currentFocusIndex: number; /** @internal */ constructor( /** @internal */ focusMonitor: FocusMonitor, ref: ChangeDetectorRef); /** @internal */ ngAfterViewInit(): void; ngOnDestroy(): void; clearSelectedValues(clearCached?: boolean): void; placeholderWhen(index: number, _: any): index is 0; focus(): void; sortData(sort: Sort): void; focusCurrentIndex(): void; /** @internal */ onClickMatListOption(event: MouseEvent, option: ILfSelectable, index: number): Promise; /** @internal */ onDblClick(event: MouseEvent | KeyboardEvent, item: ILfSelectable): void; /** @internal */ onItemKeyDown(event: KeyboardEvent, item: ILfSelectable): Promise; /** @internal */ onItemKeyUp(event: KeyboardEvent, item: ILfSelectable): void; /** @internal */ onFocused(index: number): void; /** @internal */ onViewportKeyDown(event: KeyboardEvent): void; setInitialWidth(): void; private getRepositoryBrowserData; resetCachedNodesAsync(): Promise; setSelectedNodesAsync(nodesToSelect: ILfSelectable[] | undefined, checkForMoreDataCallback: () => Promise, maxFetchIterations: number): Promise; /** @internal */ _computeRowId(index: number): string; /** @internal */ _checkFocused(rowIndex: number): boolean; /** @internal */ private _checkRowInView; /** @internal */ private _focus; placeholderHeight: number; onColumnWidthChanges(width: number, index: number): void; private updateRepositoryBrowserData; setColumnWidthChanges(width: number, index: number): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }