import { FormItemSize, FormValidationStatus } from "../form/src/public-types.js"; import { ComputedRef, Ref } from "vue"; //#region src/_mixins/use-form-item.d.ts type AllowedSize = 'tiny' | 'small' | 'medium' | 'large' | 'huge' | number; interface FormItemInjection { path: Ref; disabled: Ref; mergedSize: ComputedRef; mergedValidationStatus: ComputedRef; restoreValidation: () => void; handleContentBlur: () => void; handleContentFocus: () => void; handleContentInput: () => void; handleContentChange: () => void; } declare const formItemInjectionKey: import("vue").InjectionKey; interface UseFormItemOptions { defaultSize?: FormItemSize; mergedSize?: (formItem: FormItemInjection | null) => T; mergedDisabled?: (formItem: FormItemInjection | null) => boolean; } interface UseFormItemProps { size?: T; disabled?: boolean; status?: FormValidationStatus; } interface UseFormItem { mergedSizeRef: ComputedRef; mergedDisabledRef: ComputedRef; mergedStatusRef: ComputedRef; nTriggerFormBlur: () => void; nTriggerFormChange: () => void; nTriggerFormFocus: () => void; nTriggerFormInput: () => void; } declare function useFormItem(props: UseFormItemProps, { defaultSize, mergedSize, mergedDisabled }?: UseFormItemOptions): UseFormItem; //#endregion export { FormItemInjection, UseFormItem, useFormItem as default, formItemInjectionKey };