import { type Subscriber } from '@ni/fast-element'; import type { Table } from '..'; import type { TableActionMenuToggleEventDetail, TableRecord } from '../types'; import type { Virtualizer } from './virtualizer'; /** * Manages the keyboard navigation and focus within the table. * @internal */ export declare class KeyboardNavigationManager implements Subscriber { private readonly table; private readonly virtualizer; private focusType; private headerActionIndex; private rowIndex; private cellContentIndex; private columnIndex; private focusWithinTable; private isCurrentlyFocusingElement; private focusedViaPointer; private readonly tableNotifier; private readonly virtualizerNotifier; private visibleRowNotifiers; private get inNavigationMode(); constructor(table: Table, virtualizer: Virtualizer); resetFocusState(): void; get hasActiveRowOrCellFocus(): boolean; connect(): void; disconnect(): void; handleChange(source: unknown, args: unknown): void; onRowFocusIn(event: FocusEvent): void; onRowBlur(event: FocusEvent): void; onRowActionMenuToggle(event: CustomEvent): void; private readonly onTableFocusIn; private focusSomethingOtherThanTheTable; private readonly onTableFocusOut; private readonly onCellActionMenuBlur; private readonly onCellViewFocusIn; private readonly onCellFocusIn; private readonly onCellBlur; private readonly onCaptureKeyDown; private readonly onKeyDown; private readonly onPointerDown; private readonly onPointerUpOrCancel; private readonly onViewportKeyDown; private onEnterPressed; private onF2Pressed; private onSpacePressed; private onLeftArrowPressed; private onRightArrowPressed; private onUpArrowPressed; private onPageUpPressed; private onHomePressed; private onDownArrowPressed; private onPageDownPressed; private onEndPressed; private handleHomeEndWithinRow; private onTabPressed; private getNextRowTabStop; private getNextHeaderTabStop; private blurAfterLastTab; private onMoveUp; private onMoveDown; private updateFocusStateFromActiveElement; private getActiveElementCellAndRow; private focusElement; private setElementFocusable; private setActionMenuButtonFocused; private setDefaultFocus; private scrollToAndFocusRow; private rowIndexIsValid; private focusCurrentRow; private focusRowElement; private focusHeaderElement; private getCurrentRowVisibleIndex; private getTableHeaderFocusableElements; private canFocusColumnHeaders; private getCurrentRow; private isRowExpanded; private toggleRowExpanded; private getContainingRow; private getContainingCell; private getContainingElement; private isInTable; private getActiveElement; private focusFirstInteractiveElementInCurrentCell; private hasRowOrCellFocusType; private hasHeaderFocusType; private trySetRowSelectionCheckboxFocus; private trySetColumnHeaderFocus; private trySetHeaderActionFocus; private trySetCellFocus; private trySetCellContentFocus; private trySetCellActionMenuFocus; private setCellActionMenuFocusState; private setCellContentFocusState; private setRowFocusState; private setCellFocusState; private setRowCellFocusState; private isResolvedRowType; }