import { VNode } from "../VNode"; import { VBindingsPreparer } from "../VBindingsPreparer"; import { VDirective } from "./VDirective"; import { VDirectiveParseContext } from "./VDirectiveParseContext"; import { VDOMUpdater } from "../VDOMUpdater"; /** * Directive for managing focus on form elements. * * Usage: * Focus once on mount. * Focus + select all on mount. * Focus when expression transitions from falsy to truthy. * Conditional focus + select all. * Conditional focus + place caret at end. * * Behavior notes: * - Without an expression, the element is focused exactly once after mount. * - With an expression, focus fires only on the falsy -> truthy edge, * so the user is not repeatedly re-focused on every reactive update. * - If the value is already truthy on mount, the element is focused. * - Focus is deferred via requestAnimationFrame so that elements which * become visible just before this directive runs (e.g. inside v-if / * display:none containers) can still receive focus reliably. */ export declare class VFocusDirective implements VDirective { #private; /** * @param context The context for parsing the directive. */ constructor(context: VDirectiveParseContext); /** * @inheritdoc */ get name(): string; /** * @inheritdoc */ get vNode(): VNode; /** * @inheritdoc */ get needsAnchor(): boolean; /** * @inheritdoc */ get bindingsPreparer(): VBindingsPreparer | undefined; /** * @inheritdoc */ get domUpdater(): VDOMUpdater | undefined; /** * @inheritdoc */ get templatize(): boolean; /** * @inheritdoc */ get dependentIdentifiers(): string[]; /** * @inheritdoc */ get onMount(): (() => void) | undefined; /** * @inheritdoc */ get onMounted(): (() => void) | undefined; /** * @inheritdoc */ get onUpdate(): (() => void) | undefined; /** * @inheritdoc */ get onUpdated(): (() => void) | undefined; /** * @inheritdoc */ get onUnmount(): (() => void) | undefined; /** * @inheritdoc */ get onUnmounted(): (() => void) | undefined; /** * @inheritdoc */ destroy(): void; }