import { ReactiveController, ReactiveElement } from 'lit';
export interface KeyNavigationListConfig {
    keyListItems: string;
    layout: 'both' | 'horizontal' | 'vertical';
    manageFocus: boolean;
    manageTabindex: boolean;
    loop: boolean;
    dir: string | null;
}
/**
 * Provides key list naviation behavior
 * https://webaim.org/techniques/keyboard/
 */
export declare function keyNavigationList<T extends ReactiveElement>(config?: Partial<KeyNavigationListConfig>): ClassDecorator;
export declare class KeyNavigationListController<T extends ReactiveElement> implements ReactiveController {
    private host;
    private get listItems();
    private config;
    constructor(host: T, config?: Partial<KeyNavigationListConfig>);
    hostConnected(): Promise<void>;
    private initializeTabIndex;
    private clickItem;
    private focusItem;
    private getActiveItem;
    private setActiveItem;
}
