import type { PropType } from "vue"; import type { SelectOption, Size } from "../../types/general"; export declare type InputType = "date" | "datetime-local" | "email" | "file" | "hidden" | "image" | "month" | "number" | "password" | "range" | "search" | "submit" | "tel" | "text" | "time" | "url" | "week"; export declare const makeFormGroupProps: (defaults?: Defaults | undefined) => { label: unknown extends Defaults["label"] ? { type: StringConstructor; required: false; default: string; } : Omit<{ type: StringConstructor; required: false; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["label"] ? string : string | Defaults["label"]; }; hint: unknown extends Defaults["hint"] ? { type: StringConstructor; required: false; default: string; } : Omit<{ type: StringConstructor; required: false; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["hint"] ? string : string | Defaults["hint"]; }; error: unknown extends Defaults["error"] ? { type: StringConstructor; required: false; default: string; } : Omit<{ type: StringConstructor; required: false; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["error"] ? string : string | Defaults["error"]; }; required: unknown extends Defaults["required"] ? { type: BooleanConstructor; required: false; default: boolean; } : Omit<{ type: BooleanConstructor; required: false; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["required"] ? boolean : boolean | Defaults["required"]; }; }; export declare const makeGeneralInputProps: (defaults?: Defaults | undefined) => { placeholder: unknown extends Defaults["placeholder"] ? { type: StringConstructor; required: false; } : Omit<{ type: StringConstructor; required: false; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["placeholder"] ? string : string | Defaults["placeholder"]; }; block: unknown extends Defaults["block"] ? { type: BooleanConstructor; required: false; default: boolean; } : Omit<{ type: BooleanConstructor; required: false; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["block"] ? boolean : boolean | Defaults["block"]; }; disabled: unknown extends Defaults["disabled"] ? { type: BooleanConstructor; required: false; default: boolean; } : Omit<{ type: BooleanConstructor; required: false; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["disabled"] ? boolean : boolean | Defaults["disabled"]; }; size: unknown extends Defaults["size"] ? { type: PropType; required: false; default: string; } : Omit<{ type: PropType; required: false; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["size"] ? Size : Size | Defaults["size"]; }; }; export declare const makeItemsProps: (defaults?: Defaults | undefined) => { items: unknown extends Defaults["items"] ? { type: PropType; required: false; default: () => never[]; } : Omit<{ type: PropType; required: false; default: () => never[]; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["items"] ? SelectOption[] : SelectOption[] | Defaults["items"]; }; }; export declare const makeMultipleProps: (defaults?: Defaults | undefined) => { multiple: unknown extends Defaults["multiple"] ? { type: BooleanConstructor; required: false; default: boolean; } : Omit<{ type: BooleanConstructor; required: false; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["multiple"] ? boolean : boolean | Defaults["multiple"]; }; }; export declare const makeModelValueProps: (defaults?: Defaults | undefined) => { modelValue: unknown extends Defaults["modelValue"] ? { type: null; required: false; } : Omit<{ type: null; required: false; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["modelValue"] ? any : any; }; }; export declare const makeModelValueEmits: () => { "update:modelValue": (_value: any) => boolean; }; export declare const makeInputEmits: () => { input: (_value: any) => boolean; }; export declare const makeChangeEmits: () => { change: (_value: any) => boolean; }; export declare const formSizeAttr: (size: Size) => string[]; export declare const makeInputClass: (props: { size: Size; error?: boolean | string; block?: boolean; }) => string[]; export declare const makeSelectClass: (props: { size: Size; block?: boolean; }) => string[]; export declare const makeInputLabelClass: (size: Size) => string[];