import { ReactiveController, ReactiveElement } from 'lit'; import { KeynavCode } from '../utils/dom.js'; export interface KeynavGridConfig { grid?: HTMLElement; columnRow?: HTMLElement; columns?: NodeListOf | HTMLElement[]; rows: NodeListOf | HTMLElement[]; cells: NodeListOf | HTMLElement[]; } export interface KeynavGridElement { keynavGridConfig: KeynavGridConfig; } /** * https://w3c.github.io/aria-practices/#gridNav_focus */ export declare function keyNavigationGrid(): ClassDecorator; export declare class KeyNavigationGridController implements ReactiveController { #private; private host; constructor(host: T); hostConnected(): Promise; hostDisconnected(): void; } export declare function getNextKeyGridItem(cells: HTMLElement[], rows: HTMLElement[], config: { code: KeynavCode | string; ctrlKey: boolean; dir: string; }): { x: number; y: number; };