import type { BaseElem } from "base-elem-js";
import type { StringPluginArgChoices } from './types';
type keyDirections = 'horizontal' | 'vertical';
export interface IAccessibleMenuDefaults {
    keyDirections: keyDirections[];
    focusCss: string;
    focusInElems: string;
    focusLeaveElems: string;
}
export interface IAccessibleMenuOptions extends Partial<IAccessibleMenuDefaults> {
}
export default class AccessibleMenu {
    #private;
    static defaults: IAccessibleMenuDefaults;
    static version: string;
    static pluginName: string;
    element: HTMLElement;
    $element: BaseElem;
    params: IAccessibleMenuDefaults;
    $aeLiParents: BaseElem;
    activeElem: HTMLElement | null;
    focusInElems: string;
    constructor(element: any, options: IAccessibleMenuOptions | StringPluginArgChoices);
    static remove(element: BaseElem, plugin?: AccessibleMenu): void;
}
export interface AccessibleMenuPlugin {
    accessibleMenu(options?: IAccessibleMenuOptions | StringPluginArgChoices): BaseElem;
}
declare module 'base-elem-js' {
    interface BaseElem extends AccessibleMenuPlugin {
    }
}
export {};
