/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
/**
 * @hidden
 */
export declare class Navigation {
    selectors: string[];
    mouseEvents: {
        [type: string]: (target: HTMLElement, nav: Navigation, ev: any) => void;
    };
    keyboardEvents: {
        [type: string]: {
            [key: string]: (target: HTMLElement, nav: Navigation, ev: any) => void;
        };
    };
    tabIndex: number;
    root: any;
    rovingTabIndex?: boolean;
    constructor(options: {
        tabIndex: number;
        root: any;
        selectors: string[];
        rovingTabIndex?: boolean;
        mouseEvents?: {
            [type: string]: (target: HTMLElement, nav: Navigation, ev: any) => void;
        };
        keyboardEvents?: {
            [type: string]: {
                [key: string]: (target: HTMLElement, nav: Navigation, ev: any) => void;
            };
        };
    });
    get elements(): HTMLElement[];
    get first(): HTMLElement | null;
    get last(): HTMLElement | null;
    get current(): HTMLElement | null;
    focusNext(target: HTMLElement): void;
    focusPrevious(target: HTMLElement): void;
    triggerKeyboardEvent(ev: any): void;
    triggerMouseEvent(ev: any): void;
    focusElement(element: HTMLElement | null, previous: HTMLElement | null): void;
    update: () => void;
    private focusNextIndex;
}
