type FocusRedirectListener = (element: HTMLElement) => boolean;
interface HandleOptions {
enable?: boolean;
onFocusRedirectListener?: FocusRedirectListener | FocusRedirectListener[];
preventScroll?: boolean;
}
declare class FocusTrapHandle {
container: HTMLElement;
private options;
private focusRedirectListenerList;
private _enable;
constructor(container: HTMLElement, options?: HandleOptions);
addFocusRedirectListener: (listener: FocusRedirectListener) => () => void;
removeFocusRedirectListener: (listener: FocusRedirectListener) => void;
get enable(): boolean;
set enable(value: boolean);
destroy: () => void;
private shouldFocusRedirect;
private focusElement;
private onKeyPress;
private handleContainerTabKeyDown;
private handleContainerShiftTabKeyDown;
static getFocusableElements(node: HTMLElement): HTMLElement[];
static getActiveElement(): HTMLElement | null;
}
export default FocusTrapHandle;