UNPKG

radix-vue

Version:

Vue port for Radix UI Primitives.

135 lines (134 loc) 4.43 kB
import type { Ref, VNode } from 'vue'; import type { DataOrientation, Direction } from '../shared/types'; export interface SelectRootProps { open?: boolean; defaultOpen?: boolean; defaultValue?: string; modelValue?: string; orientation?: DataOrientation; dir?: Direction; name?: string; autocomplete?: string; disabled?: boolean; required?: boolean; } export type SelectRootEmits = { 'update:modelValue': [value: string]; 'update:open': [value: boolean]; }; export interface SelectRootContext { triggerElement: Ref<HTMLElement | undefined>; onTriggerChange(node: HTMLElement | undefined): void; valueElement: Ref<HTMLElement | undefined>; onValueElementChange(node: HTMLElement): void; valueElementHasChildren: Ref<boolean>; onValueElementHasChildrenChange(hasChildren: boolean): void; contentId: string; modelValue?: Ref<string>; onValueChange(value: string): void; open: Ref<boolean>; required?: Ref<boolean>; onOpenChange(open: boolean): void; dir: Ref<Direction>; triggerPointerDownPosRef: Ref<{ x: number; y: number; } | null>; disabled?: Ref<boolean>; } export declare const injectSelectRootContext: <T extends SelectRootContext | null | undefined = SelectRootContext>(fallback?: T | undefined) => T extends null ? SelectRootContext | null : SelectRootContext, provideSelectRootContext: (contextValue: SelectRootContext) => SelectRootContext; export interface SelectNativeOptionsContext { onNativeOptionAdd(option: VNode): void; onNativeOptionRemove(option: VNode): void; } export declare const injectSelectNativeOptionsContext: <T extends SelectNativeOptionsContext | null | undefined = SelectNativeOptionsContext>(fallback?: T | undefined) => T extends null ? SelectNativeOptionsContext | null : SelectNativeOptionsContext, provideSelectNativeOptionsContext: (contextValue: SelectNativeOptionsContext) => SelectNativeOptionsContext; declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{ dir: { type: import("vue").PropType<Direction>; }; disabled: { type: import("vue").PropType<boolean>; }; name: { type: import("vue").PropType<string>; }; defaultOpen: { type: import("vue").PropType<boolean>; }; open: { type: import("vue").PropType<boolean>; default: undefined; }; defaultValue: { type: import("vue").PropType<string>; default: string; }; orientation: { type: import("vue").PropType<DataOrientation>; default: string; }; autocomplete: { type: import("vue").PropType<string>; }; required: { type: import("vue").PropType<boolean>; }; modelValue: { type: import("vue").PropType<string>; default: undefined; }; }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "update:open": (value: boolean) => void; "update:modelValue": (value: string) => void; }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{ dir: { type: import("vue").PropType<Direction>; }; disabled: { type: import("vue").PropType<boolean>; }; name: { type: import("vue").PropType<string>; }; defaultOpen: { type: import("vue").PropType<boolean>; }; open: { type: import("vue").PropType<boolean>; default: undefined; }; defaultValue: { type: import("vue").PropType<string>; default: string; }; orientation: { type: import("vue").PropType<DataOrientation>; default: string; }; autocomplete: { type: import("vue").PropType<string>; }; required: { type: import("vue").PropType<boolean>; }; modelValue: { type: import("vue").PropType<string>; default: undefined; }; }>> & { "onUpdate:open"?: ((value: boolean) => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; }, { open: boolean; defaultValue: string; orientation: DataOrientation; modelValue: string; }, {}>, { default?(_: {}): any; }>; export default _default; type __VLS_WithTemplateSlots<T, S> = T & { new (): { $slots: S; }; };