import type { UIElement } from '@instructure/shared-types'; import { FocusRegionOptions } from './FocusRegionOptions'; /** * --- * category: utilities/a11y * --- * * Class for focus operations. * - Scoping focus within a given context (DOM node), * - Mark active element for focus later * - Return focus to the marked element * @module KeyboardFocusRegion */ declare class KeyboardFocusRegion { private readonly _options; private _focusLaterElement; private _needToFocus; private _listeners; private _raf; private _active; private _wasDocumentClick?; _contextElement?: Node; constructor(element: UIElement, options: FocusRegionOptions); get focused(): boolean; get shouldContainFocus(): boolean; get focusable(): Element[]; get tabbable(): Element[]; get firstTabbable(): Element | undefined; get lastTabbable(): Element | undefined; get firstFocusable(): Element | undefined; get lastFocusable(): Element | undefined; get doc(): Document | undefined; get win(): (Window & typeof globalThis) | null | undefined; get defaultFocusElement(): Node | null; updateElement(element: UIElement): void; focusDefaultElement(): void; tryFocusOnPositionedElement(positionContainer: Element, focusElement: HTMLElement, tries?: number): void; focus(): void; blur(): void; handleKeyDown: (event: React.KeyboardEvent) => void; handleClick: () => void; handleWindowBlur: () => void; handleFocus: () => void; handleFirstTabbableKeyDown: (event: React.KeyboardEvent) => void; handleLastTabbableKeyDown: (event: React.KeyboardEvent) => void; activate(): void; deactivate(): void; } export default KeyboardFocusRegion; export { KeyboardFocusRegion }; //# sourceMappingURL=KeyboardFocusRegion.d.ts.map