import { ComputedRef, Ref } from "vue"; declare type FormItemSize = "small" | "medium" | "large"; declare type AllowedSize = "tiny" | "small" | "medium" | "large" | "huge" | number; export interface FormItemInjection { path: Ref; disabled: Ref; mergedSize: ComputedRef; restoreValidation: () => void; handleContentBlur: () => void; handleContentFocus: () => void; handleContentInput: () => void; handleContentChange: () => void; } export declare const formItemInjectionKey: import("vue").InjectionKey; interface UseFormItemOptions { defaultSize?: FormItemSize; mergedSize?: (formItem: FormItemInjection | null) => T; mergedDisabled?: (formItem: FormItemInjection | null) => boolean; } export interface UseFormItemProps { size?: T; disabled?: boolean; } export interface UseFormItem { mergedSizeRef: ComputedRef; mergedDisabledRef: ComputedRef; nTriggerFormBlur: () => void; nTriggerFormChange: () => void; nTriggerFormFocus: () => void; nTriggerFormInput: () => void; } export default function useFormItem(props: UseFormItemProps, { defaultSize, mergedSize, mergedDisabled }?: UseFormItemOptions): UseFormItem; export {};