import { type Ref } from '#imports'; type FocusableElement = HTMLInputElement | HTMLSelectElement | HTMLButtonElement | HTMLTextAreaElement; export type UseFocusTrapOptions = { /** * The container element to trap focus within. */ container: Ref; /** * Whether to auto-focus the first focusable element on mount. * * @default true */ autoFocus?: boolean; /** * Element selector for focusable elements. * * @default 'input,select,button,textarea' */ selector?: string; /** * Debug label for element queries. */ debugLabel?: string; }; /** * Creates a focus trap within a container element. * * Handles Tab/Shift+Tab keyboard navigation to cycle through focusable elements, * and optionally auto-focuses the first element on mount. * * @example * ```vue * * * * ``` */ export declare function useFocusTrap(options: UseFocusTrapOptions): { onKeyDown: (e: KeyboardEvent) => void; getFocusableElements: () => FocusableElement[]; }; export {};