UNPKG

vuestic-ui

Version:
125 lines (124 loc) 3.58 kB
import { PropType, SetupContext, ShallowRef, ExtractPropTypes } from 'vue'; import { StatefulProps } from './useStateful'; import { LoadingProps } from './useLoading'; import { ValidationProps } from './useValidation'; export type SelectableProps<V = any> = StatefulProps & LoadingProps & ExtractPropTypes<ValidationProps<V>> & { arrayValue: V | undefined; leftLabel: boolean; trueValue: any; falseValue: any; indeterminate: boolean; indeterminateValue: V | null; disabled: boolean; readonly: boolean; modelValue: unknown; }; export type Elements = { input: ShallowRef<HTMLElement | undefined>; label: ShallowRef<HTMLElement | undefined>; container: ShallowRef<HTMLElement | undefined>; }; export declare const useSelectableProps: { arrayValue: { type: (ObjectConstructor | BooleanConstructor | StringConstructor | NumberConstructor)[]; default: null; }; label: { type: StringConstructor; default: string; }; leftLabel: { type: BooleanConstructor; default: boolean; }; trueValue: { type: PropType<any>; default: boolean; }; falseValue: { type: PropType<any>; default: boolean; }; indeterminate: { type: BooleanConstructor; default: boolean; }; indeterminateValue: { type: PropType<any>; default: null; }; disabled: { type: BooleanConstructor; default: boolean; }; readonly: { type: BooleanConstructor; default: boolean; }; name: { type: StringConstructor; default: undefined; }; rules: { type: PropType<import("./useValidation").ValidationRule<any>[]>; default: () => any; }; dirty: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: undefined; }; errorMessages: { type: PropType<string | string[]>; default: undefined; }; errorCount: { type: (StringConstructor | NumberConstructor)[]; default: number; }; success: { type: BooleanConstructor; default: boolean; }; messages: { type: PropType<string | string[]>; default: () => never[]; }; immediateValidation: { type: BooleanConstructor; default: boolean; }; modelValue: {}; loading: { type: BooleanConstructor; default: boolean; }; stateful: { type: PropType<boolean>; default: boolean; }; }; export declare const useSelectableEmits: string[]; export declare const useSelectable: (props: SelectableProps, emit: SetupContext['emit'], { input, label, container }: Elements) => { isDirty: import("vue").Ref<boolean>; isTouched: import("vue").Ref<boolean>; isError: import("vue").WritableComputedRef<boolean>; isLoading: import("vue").WritableComputedRef<boolean>; isValid: import("vue").ComputedRef<boolean>; isChecked: import("vue").ComputedRef<boolean>; isIndeterminate: import("vue").ComputedRef<boolean>; onBlur: (event: FocusEvent) => void; onFocus: (event: FocusEvent) => void; toggleSelection: () => void; reset: () => void; focus: () => void; computedError: import("vue").ComputedRef<boolean>; computedErrorMessages: import("vue").ComputedRef<string[]>; validationAriaAttributes: import("vue").ComputedRef<{ 'aria-invalid': boolean; 'aria-errormessage': string; }>; };