import { nextTick } from 'vue'; import { OnyxFormElementV2Props } from './types.js'; declare function __VLS_template(): { attrs: Partial<{}>; slots: Readonly<{ default(props: { input?: object; }): unknown; popover?(): unknown; }> & { default(props: { input?: object; }): unknown; popover?(): unknown; }; refs: { popover: ({ $: import('vue', { with: { "resolution-mode": "import" } }).ComponentInternalInstance; $data: {}; $props: { readonly label: string; readonly open?: import('../../index.js', { with: { "resolution-mode": "import" } }).Nullable; readonly position?: (import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto") | undefined; readonly alignment?: (import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto") | undefined; readonly fitParent?: boolean | undefined; readonly disabled?: boolean | undefined; readonly role?: "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined; readonly sticky?: boolean | undefined; readonly "onUpdate:open"?: ((value: boolean) => any) | undefined; } & import('vue', { with: { "resolution-mode": "import" } }).VNodeProps & import('vue', { with: { "resolution-mode": "import" } }).AllowedComponentProps & import('vue', { with: { "resolution-mode": "import" } }).ComponentCustomProps; $attrs: import('vue', { with: { "resolution-mode": "import" } }).Attrs; $refs: { [x: string]: unknown; } & { popoverWrapper: HTMLDivElement; popover: HTMLDivElement; }; $slots: Readonly<{ [name: string]: import('vue', { with: { "resolution-mode": "import" } }).Slot | undefined; }>; $root: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null; $parent: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null; $host: Element | null; $emit: (event: "update:open", value: boolean) => void; $el: HTMLDivElement; $options: import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsBase & Readonly<{ "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, { popoverPosition: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef<"left" | "right" | "top" | "top right" | "top left" | "bottom" | "bottom right" | "bottom left">; popoverAlignment: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef; }, {}, {}, {}, import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, { "update:open": (value: boolean) => any; }, string, { alignment: import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto"; position: import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto"; open: boolean | null; role: "menu" | "listbox" | "tree" | "grid" | "dialog"; sticky: boolean; }, {}, string, {}, import('vue', { with: { "resolution-mode": "import" } }).GlobalComponents, import('vue', { with: { "resolution-mode": "import" } }).GlobalDirectives, string, import('vue', { with: { "resolution-mode": "import" } }).ComponentProvideOptions> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void) | ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void)[]; renderTriggered?: ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void) | ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue', { with: { "resolution-mode": "import" } }).WatchOptions): import('vue', { with: { "resolution-mode": "import" } }).WatchStopHandle; } & Readonly<{ alignment: import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto"; position: import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto"; open: boolean | null; role: "menu" | "listbox" | "tree" | "grid" | "dialog"; sticky: boolean; }> & Omit & Readonly<{ "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, "popoverPosition" | "popoverAlignment" | ("alignment" | "position" | "open" | "role" | "sticky")> & import('vue', { with: { "resolution-mode": "import" } }).ShallowUnwrapRef<{ popoverPosition: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef<"left" | "right" | "top" | "top right" | "top left" | "bottom" | "bottom right" | "bottom left">; popoverAlignment: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef; }> & {} & import('vue', { with: { "resolution-mode": "import" } }).ComponentCustomProperties & {} & { $slots: Readonly<{ default(params: { trigger: import('vue', { with: { "resolution-mode": "import" } }).AriaAttributes; }): unknown; content(): unknown; }> & { default(params: { trigger: import('vue', { with: { "resolution-mode": "import" } }).AriaAttributes; }): unknown; content(): unknown; }; }) | null; }; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue', { with: { "resolution-mode": "import" } }).DefineComponent any; }, string, import('vue', { with: { "resolution-mode": "import" } }).PublicProps, Readonly & Readonly<{ "onUpdate:open"?: ((open: boolean) => any) | undefined; }>, {}, {}, {}, {}, string, import('vue', { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, { popover: ({ $: import('vue', { with: { "resolution-mode": "import" } }).ComponentInternalInstance; $data: {}; $props: { readonly label: string; readonly open?: import('../../index.js', { with: { "resolution-mode": "import" } }).Nullable; readonly position?: (import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto") | undefined; readonly alignment?: (import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto") | undefined; readonly fitParent?: boolean | undefined; readonly disabled?: boolean | undefined; readonly role?: "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined; readonly sticky?: boolean | undefined; readonly "onUpdate:open"?: ((value: boolean) => any) | undefined; } & import('vue', { with: { "resolution-mode": "import" } }).VNodeProps & import('vue', { with: { "resolution-mode": "import" } }).AllowedComponentProps & import('vue', { with: { "resolution-mode": "import" } }).ComponentCustomProps; $attrs: import('vue', { with: { "resolution-mode": "import" } }).Attrs; $refs: { [x: string]: unknown; } & { popoverWrapper: HTMLDivElement; popover: HTMLDivElement; }; $slots: Readonly<{ [name: string]: import('vue', { with: { "resolution-mode": "import" } }).Slot | undefined; }>; $root: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null; $parent: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null; $host: Element | null; $emit: (event: "update:open", value: boolean) => void; $el: HTMLDivElement; $options: import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsBase & Readonly<{ "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, { popoverPosition: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef<"left" | "right" | "top" | "top right" | "top left" | "bottom" | "bottom right" | "bottom left">; popoverAlignment: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef; }, {}, {}, {}, import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import('vue', { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, { "update:open": (value: boolean) => any; }, string, { alignment: import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto"; position: import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto"; open: boolean | null; role: "menu" | "listbox" | "tree" | "grid" | "dialog"; sticky: boolean; }, {}, string, {}, import('vue', { with: { "resolution-mode": "import" } }).GlobalComponents, import('vue', { with: { "resolution-mode": "import" } }).GlobalDirectives, string, import('vue', { with: { "resolution-mode": "import" } }).ComponentProvideOptions> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void) | ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void)[]; renderTriggered?: ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void) | ((e: import('vue', { with: { "resolution-mode": "import" } }).DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue', { with: { "resolution-mode": "import" } }).ComponentPublicInstance | null, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof nextTick; $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue', { with: { "resolution-mode": "import" } }).WatchOptions): import('vue', { with: { "resolution-mode": "import" } }).WatchStopHandle; } & Readonly<{ alignment: import('../../composables/useOpenAlignment.js', { with: { "resolution-mode": "import" } }).OpenAlignment | "auto"; position: import('../../composables/useAnchorPositionPolyfill.js', { with: { "resolution-mode": "import" } }).AnchorPosition | "auto"; open: boolean | null; role: "menu" | "listbox" | "tree" | "grid" | "dialog"; sticky: boolean; }> & Omit & Readonly<{ "onUpdate:open"?: ((value: boolean) => any) | undefined; }>, "popoverPosition" | "popoverAlignment" | ("alignment" | "position" | "open" | "role" | "sticky")> & import('vue', { with: { "resolution-mode": "import" } }).ShallowUnwrapRef<{ popoverPosition: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef<"left" | "right" | "top" | "top right" | "top left" | "bottom" | "bottom right" | "bottom left">; popoverAlignment: import('vue', { with: { "resolution-mode": "import" } }).ComputedRef; }> & {} & import('vue', { with: { "resolution-mode": "import" } }).ComponentCustomProperties & {} & { $slots: Readonly<{ default(params: { trigger: import('vue', { with: { "resolution-mode": "import" } }).AriaAttributes; }): unknown; content(): unknown; }> & { default(params: { trigger: import('vue', { with: { "resolution-mode": "import" } }).AriaAttributes; }): unknown; content(): unknown; }; }) | null; }, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };