@volverjs/form-vue 1.0.0-beta.2 → 1.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1 +1,1028 @@
1
- export * from './src/index'
1
+ import { InjectionKey, Plugin } from 'vue';
2
+ import { AnyZodObject } from 'zod';
3
+ import { defineFormField } from './VvFormField';
4
+ import { defineForm } from './VvForm';
5
+ import { defineFormWrapper } from './VvFormWrapper';
6
+ import { defineFormTemplate } from './VvFormTemplate';
7
+ import { InjectedFormData, InjectedFormWrapperData, InjectedFormFieldData, FormComposableOptions, FormPluginOptions, FormTemplateItem, Path, PathValue, FormSchema, FormTemplate } from './types';
8
+ export declare const pluginInjectionKey: InjectionKey<FormPluginOptions>;
9
+ export declare function createForm(options: FormPluginOptions): Plugin & Partial<ReturnType<typeof useForm>>;
10
+ export declare function useForm<Schema extends FormSchema>(schema: Schema, options?: FormComposableOptions<Schema>): {
11
+ clear: () => void;
12
+ errors: import('vue').Ref<import('zod').inferFormattedError<Schema, string> | undefined, import('zod').inferFormattedError<Schema, string> | undefined>;
13
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
14
+ formFieldInjectionKey: InjectionKey<InjectedFormFieldData<Schema>>;
15
+ formInjectionKey: InjectionKey<InjectedFormData<Schema>>;
16
+ formWrapperInjectionKey: InjectionKey<InjectedFormWrapperData<Schema>>;
17
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
18
+ invalid: import('vue').ComputedRef<boolean>;
19
+ readonly: import('vue').Ref<boolean, boolean>;
20
+ reset: () => void;
21
+ status: import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>;
22
+ stopUpdatesWatch: import('vue').WatchStopHandle;
23
+ submit: () => Promise<boolean>;
24
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
25
+ VvForm: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
26
+ continuousValidation: {
27
+ type: BooleanConstructor;
28
+ default: boolean;
29
+ };
30
+ modelValue: {
31
+ type: ObjectConstructor;
32
+ default: () => {};
33
+ };
34
+ readonly: {
35
+ type: BooleanConstructor;
36
+ default: boolean;
37
+ };
38
+ tag: {
39
+ type: StringConstructor;
40
+ default: string;
41
+ };
42
+ template: {
43
+ type: import('vue').PropType<FormTemplate<Schema>>;
44
+ default: undefined;
45
+ };
46
+ }>, {
47
+ clear: () => void;
48
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>>;
49
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
50
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
51
+ invalid: import('vue').ComputedRef<boolean>;
52
+ isReadonly: import('vue').Ref<boolean, boolean>;
53
+ reset: () => void;
54
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
55
+ stopUpdatesWatch: import('vue').WatchStopHandle;
56
+ submit: () => Promise<boolean>;
57
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
58
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly")[], "invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
59
+ continuousValidation: {
60
+ type: BooleanConstructor;
61
+ default: boolean;
62
+ };
63
+ modelValue: {
64
+ type: ObjectConstructor;
65
+ default: () => {};
66
+ };
67
+ readonly: {
68
+ type: BooleanConstructor;
69
+ default: boolean;
70
+ };
71
+ tag: {
72
+ type: StringConstructor;
73
+ default: string;
74
+ };
75
+ template: {
76
+ type: import('vue').PropType<FormTemplate<Schema>>;
77
+ default: undefined;
78
+ };
79
+ }>> & Readonly<{
80
+ onInvalid?: ((...args: any[]) => any) | undefined;
81
+ onValid?: ((...args: any[]) => any) | undefined;
82
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
83
+ onReset?: ((...args: any[]) => any) | undefined;
84
+ onSubmit?: ((...args: any[]) => any) | undefined;
85
+ "onUpdate:readonly"?: ((...args: any[]) => any) | undefined;
86
+ }>, {
87
+ readonly: boolean;
88
+ template: FormTemplate<Schema>;
89
+ modelValue: Record<string, any>;
90
+ tag: string;
91
+ continuousValidation: boolean;
92
+ }, import('vue').SlotsType<{
93
+ default: {
94
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>>;
95
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
96
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
97
+ invalid: import('vue').ComputedRef<boolean>;
98
+ readonly: import('vue').Ref<boolean, boolean>;
99
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
100
+ stopUpdatesWatch: import('vue').WatchStopHandle;
101
+ submit: () => Promise<boolean>;
102
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
103
+ clear: () => void;
104
+ reset: () => void;
105
+ };
106
+ }>, {}, {}, "invalid" | "valid" | "reset" | "status" | "clear" | "errors" | "submit" | "validate" | "readonly" | "template" | "tag", import('vue').ComponentProvideOptions, true, {}, any>;
107
+ VvFormField: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
108
+ type: {
109
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
110
+ validator: (value: import('./enums').FormFieldType) => boolean;
111
+ default: import('./enums').FormFieldType;
112
+ };
113
+ is: {
114
+ type: import('vue').PropType<import('vue').Component | string>;
115
+ default: undefined;
116
+ };
117
+ name: {
118
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
119
+ required: true;
120
+ };
121
+ props: {
122
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
123
+ default: () => {};
124
+ };
125
+ showValid: {
126
+ type: BooleanConstructor;
127
+ default: boolean;
128
+ };
129
+ defaultValue: {
130
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
131
+ default: undefined;
132
+ };
133
+ lazyLoad: {
134
+ type: BooleanConstructor;
135
+ default: boolean;
136
+ };
137
+ readonly: {
138
+ type: BooleanConstructor;
139
+ default: undefined;
140
+ };
141
+ }>, {
142
+ component: import('vue').ComputedRef<{
143
+ new (...args: any[]): any;
144
+ __isFragment?: never;
145
+ __isTeleport?: never;
146
+ __isSuspense?: never;
147
+ } | import('vue').ConcreteComponent>;
148
+ hasProps: import('vue').ComputedRef<{
149
+ name: {} | ([{
150
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
151
+ required: true;
152
+ }] extends [import('vue').Prop<infer V, infer D>] ? unknown extends V ? keyof V extends never ? import('@vue/shared').IfAny<V, V, D> : V : V : {
153
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
154
+ required: true;
155
+ });
156
+ invalid: boolean;
157
+ valid: boolean | undefined;
158
+ type: import('./enums').FormFieldType | undefined;
159
+ invalidLabel: any;
160
+ modelValue: any;
161
+ readonly: boolean;
162
+ 'onUpdate:modelValue': (value: unknown) => void;
163
+ }>;
164
+ invalid: import('vue').ComputedRef<boolean>;
165
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "update:formData" | "update:modelValue")[], "invalid" | "valid" | "update:formData" | "update:modelValue", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
166
+ type: {
167
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
168
+ validator: (value: import('./enums').FormFieldType) => boolean;
169
+ default: import('./enums').FormFieldType;
170
+ };
171
+ is: {
172
+ type: import('vue').PropType<import('vue').Component | string>;
173
+ default: undefined;
174
+ };
175
+ name: {
176
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
177
+ required: true;
178
+ };
179
+ props: {
180
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
181
+ default: () => {};
182
+ };
183
+ showValid: {
184
+ type: BooleanConstructor;
185
+ default: boolean;
186
+ };
187
+ defaultValue: {
188
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
189
+ default: undefined;
190
+ };
191
+ lazyLoad: {
192
+ type: BooleanConstructor;
193
+ default: boolean;
194
+ };
195
+ readonly: {
196
+ type: BooleanConstructor;
197
+ default: undefined;
198
+ };
199
+ }>> & Readonly<{
200
+ onInvalid?: ((...args: any[]) => any) | undefined;
201
+ onValid?: ((...args: any[]) => any) | undefined;
202
+ "onUpdate:formData"?: ((...args: any[]) => any) | undefined;
203
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
204
+ }>, {
205
+ type: "number" | "text" | "email" | "password" | "tel" | "url" | "search" | "date" | "time" | "datetime-local" | "month" | "week" | "color" | "select" | "checkbox" | "radio" | "textarea" | "radioGroup" | "checkboxGroup" | "combobox" | "custom";
206
+ props: [{
207
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
208
+ default: () => {};
209
+ }] extends [import('vue').Prop<infer V, infer D>] ? unknown extends V ? keyof V extends never ? import('@vue/shared').IfAny<V, V, D> : V : V : {
210
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
211
+ default: () => {};
212
+ };
213
+ is: string | import('vue').Component;
214
+ showValid: boolean;
215
+ defaultValue: string | number | boolean | unknown[] | Record<string, any>;
216
+ lazyLoad: boolean;
217
+ readonly: boolean;
218
+ }, import('vue').SlotsType<{
219
+ [key: string]: any;
220
+ default: {
221
+ errors: import('zod').inferFormattedError<Schema, string>;
222
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
223
+ formErrors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
224
+ invalid: boolean;
225
+ invalidLabel: string;
226
+ modelValue: any;
227
+ onUpdate: (value: unknown) => void;
228
+ readonly: boolean;
229
+ submit?: InjectedFormData<Schema_1>["submit"];
230
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
231
+ };
232
+ }>, {}, {}, "invalid" | "type" | "component" | "errors" | "hasProps" | "invalidLabel" | "is", import('vue').ComponentProvideOptions, true, {}, any>;
233
+ VvFormTemplate: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
234
+ schema: {
235
+ type: import('vue').PropType<FormTemplate<Schema>>;
236
+ required: true;
237
+ };
238
+ scope: {
239
+ type: import('vue').PropType<Record<string, unknown>>;
240
+ default: () => {};
241
+ };
242
+ }>, (() => (import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
243
+ [key: string]: any;
244
+ }> | import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
245
+ [key: string]: any;
246
+ }>[] | undefined)[]) | undefined, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
247
+ schema: {
248
+ type: import('vue').PropType<FormTemplate<Schema>>;
249
+ required: true;
250
+ };
251
+ scope: {
252
+ type: import('vue').PropType<Record<string, unknown>>;
253
+ default: () => {};
254
+ };
255
+ }>> & Readonly<{}>, {
256
+ scope: Record<string, unknown>;
257
+ }, import('vue').SlotsType<{
258
+ default: {
259
+ errors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
260
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
261
+ invalid: boolean;
262
+ status?: import('./enums').FormStatus;
263
+ submit?: InjectedFormData<Schema_2>["submit"];
264
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
265
+ clear?: InjectedFormData<Schema_2>["clear"];
266
+ reset?: InjectedFormData<Schema_2>["reset"];
267
+ };
268
+ }>, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
269
+ VvFormWrapper: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
270
+ name: {
271
+ type: StringConstructor;
272
+ required: true;
273
+ };
274
+ tag: {
275
+ type: StringConstructor;
276
+ default: undefined;
277
+ };
278
+ }>, {
279
+ clear: (() => void) | undefined;
280
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>> | undefined;
281
+ fields: import('vue').Ref<Set<string> & Omit<Set<string>, keyof Set<any>>, Set<string> | (Set<string> & Omit<Set<string>, keyof Set<any>>)>;
282
+ fieldsErrors: import('vue').Ref<Map<string, import('zod').inferFormattedError<Schema, string>>, Map<string, import('zod').inferFormattedError<Schema, string>>>;
283
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema>> | undefined, Partial<import('zod').TypeOf<Schema>> | undefined> | undefined;
284
+ invalid: import('vue').ComputedRef<boolean>;
285
+ reset: (() => void) | undefined;
286
+ submit: (() => Promise<boolean>) | undefined;
287
+ validate: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
288
+ validateWrapper: () => Promise<boolean>;
289
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid")[], "invalid" | "valid", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
290
+ name: {
291
+ type: StringConstructor;
292
+ required: true;
293
+ };
294
+ tag: {
295
+ type: StringConstructor;
296
+ default: undefined;
297
+ };
298
+ }>> & Readonly<{
299
+ onInvalid?: ((...args: any[]) => any) | undefined;
300
+ onValid?: ((...args: any[]) => any) | undefined;
301
+ }>, {
302
+ tag: string;
303
+ }, import('vue').SlotsType<{
304
+ default: {
305
+ errors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
306
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
307
+ formErrors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
308
+ invalid: boolean;
309
+ submit?: InjectedFormData<Schema_3>["submit"];
310
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
311
+ validateWrapper?: (() => Promise<boolean>) | undefined;
312
+ fieldsErrors: Map<string, import('zod').inferFormattedError<Schema, string>>;
313
+ clear?: InjectedFormData<Schema_3>["clear"];
314
+ reset?: InjectedFormData<Schema_3>["reset"];
315
+ };
316
+ }>, {}, {}, "invalid" | "reset" | "clear" | "errors" | "submit" | "validate" | "formData" | "tag" | "fields" | "fieldsErrors" | "validateWrapper", import('vue').ComponentProvideOptions, true, {}, any>;
317
+ } | {
318
+ clear: () => void;
319
+ errors: import('vue').Ref<import('zod').inferFormattedError<AnyZodObject, string> | undefined, import('zod').inferFormattedError<AnyZodObject, string> | undefined>;
320
+ formData: import('vue').Ref<Partial<{
321
+ [x: string]: any;
322
+ } | undefined>, Partial<{
323
+ [x: string]: any;
324
+ } | undefined>>;
325
+ formFieldInjectionKey: InjectionKey<InjectedFormFieldData<AnyZodObject>>;
326
+ formInjectionKey: InjectionKey<InjectedFormData<AnyZodObject>>;
327
+ formWrapperInjectionKey: InjectionKey<InjectedFormWrapperData<AnyZodObject>>;
328
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
329
+ invalid: import('vue').ComputedRef<boolean>;
330
+ readonly: import('vue').Ref<boolean, boolean>;
331
+ reset: () => void;
332
+ status: import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>;
333
+ stopUpdatesWatch: import('vue').WatchStopHandle;
334
+ submit: () => Promise<boolean>;
335
+ validate: (value?: Partial<{
336
+ [x: string]: any;
337
+ } | undefined>, fields?: Set<string>) => Promise<boolean>;
338
+ VvForm: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
339
+ continuousValidation: {
340
+ type: BooleanConstructor;
341
+ default: boolean;
342
+ };
343
+ modelValue: {
344
+ type: ObjectConstructor;
345
+ default: () => {};
346
+ };
347
+ readonly: {
348
+ type: BooleanConstructor;
349
+ default: boolean;
350
+ };
351
+ tag: {
352
+ type: StringConstructor;
353
+ default: string;
354
+ };
355
+ template: {
356
+ type: import('vue').PropType<FormTemplate<AnyZodObject>>;
357
+ default: undefined;
358
+ };
359
+ }>, {
360
+ clear: () => void;
361
+ errors: Readonly<import('vue').Ref<{
362
+ readonly [x: string]: {
363
+ readonly _errors: readonly string[];
364
+ } | undefined;
365
+ readonly _errors: readonly string[];
366
+ } | undefined, {
367
+ readonly [x: string]: {
368
+ readonly _errors: readonly string[];
369
+ } | undefined;
370
+ readonly _errors: readonly string[];
371
+ } | undefined>>;
372
+ formData: import('vue').Ref<Partial<{
373
+ [x: string]: any;
374
+ } | undefined>, Partial<{
375
+ [x: string]: any;
376
+ } | undefined>>;
377
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
378
+ invalid: import('vue').ComputedRef<boolean>;
379
+ isReadonly: import('vue').Ref<boolean, boolean>;
380
+ reset: () => void;
381
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
382
+ stopUpdatesWatch: import('vue').WatchStopHandle;
383
+ submit: () => Promise<boolean>;
384
+ validate: (value?: Partial<{
385
+ [x: string]: any;
386
+ } | undefined>, fields?: Set<string>) => Promise<boolean>;
387
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly")[], "invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
388
+ continuousValidation: {
389
+ type: BooleanConstructor;
390
+ default: boolean;
391
+ };
392
+ modelValue: {
393
+ type: ObjectConstructor;
394
+ default: () => {};
395
+ };
396
+ readonly: {
397
+ type: BooleanConstructor;
398
+ default: boolean;
399
+ };
400
+ tag: {
401
+ type: StringConstructor;
402
+ default: string;
403
+ };
404
+ template: {
405
+ type: import('vue').PropType<FormTemplate<AnyZodObject>>;
406
+ default: undefined;
407
+ };
408
+ }>> & Readonly<{
409
+ onInvalid?: ((...args: any[]) => any) | undefined;
410
+ onValid?: ((...args: any[]) => any) | undefined;
411
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
412
+ onReset?: ((...args: any[]) => any) | undefined;
413
+ onSubmit?: ((...args: any[]) => any) | undefined;
414
+ "onUpdate:readonly"?: ((...args: any[]) => any) | undefined;
415
+ }>, {
416
+ readonly: boolean;
417
+ template: FormTemplate<AnyZodObject>;
418
+ modelValue: Record<string, any>;
419
+ tag: string;
420
+ continuousValidation: boolean;
421
+ }, import('vue').SlotsType<{
422
+ default: {
423
+ errors: Readonly<import('vue').Ref<{
424
+ readonly [x: string]: {
425
+ readonly _errors: readonly string[];
426
+ } | undefined;
427
+ readonly _errors: readonly string[];
428
+ } | undefined, {
429
+ readonly [x: string]: {
430
+ readonly _errors: readonly string[];
431
+ } | undefined;
432
+ readonly _errors: readonly string[];
433
+ } | undefined>>;
434
+ formData: import('vue').Ref<Partial<{
435
+ [x: string]: any;
436
+ } | undefined>, Partial<{
437
+ [x: string]: any;
438
+ } | undefined>>;
439
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
440
+ invalid: import('vue').ComputedRef<boolean>;
441
+ readonly: import('vue').Ref<boolean, boolean>;
442
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
443
+ stopUpdatesWatch: import('vue').WatchStopHandle;
444
+ submit: () => Promise<boolean>;
445
+ validate: (value?: Partial<{
446
+ [x: string]: any;
447
+ } | undefined>, fields?: Set<string>) => Promise<boolean>;
448
+ clear: () => void;
449
+ reset: () => void;
450
+ };
451
+ }>, {}, {}, "invalid" | "valid" | "reset" | "status" | "clear" | "errors" | "submit" | "validate" | "readonly" | "template" | "tag", import('vue').ComponentProvideOptions, true, {}, any>;
452
+ VvFormField: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
453
+ type: {
454
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
455
+ validator: (value: import('./enums').FormFieldType) => boolean;
456
+ default: import('./enums').FormFieldType;
457
+ };
458
+ is: {
459
+ type: import('vue').PropType<import('vue').Component | string>;
460
+ default: undefined;
461
+ };
462
+ name: {
463
+ type: import('vue').PropType<string>;
464
+ required: true;
465
+ };
466
+ props: {
467
+ type: import('vue').PropType<Partial<{
468
+ [x: string]: any;
469
+ } | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<{
470
+ [x: string]: any;
471
+ }> | undefined) | undefined>>;
472
+ default: () => {};
473
+ };
474
+ showValid: {
475
+ type: BooleanConstructor;
476
+ default: boolean;
477
+ };
478
+ defaultValue: {
479
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
480
+ default: undefined;
481
+ };
482
+ lazyLoad: {
483
+ type: BooleanConstructor;
484
+ default: boolean;
485
+ };
486
+ readonly: {
487
+ type: BooleanConstructor;
488
+ default: undefined;
489
+ };
490
+ }>, {
491
+ component: import('vue').ComputedRef<{
492
+ new (...args: any[]): any;
493
+ __isFragment?: never;
494
+ __isTeleport?: never;
495
+ __isSuspense?: never;
496
+ } | import('vue').ConcreteComponent>;
497
+ hasProps: import('vue').ComputedRef<{
498
+ name: string | {};
499
+ invalid: boolean;
500
+ valid: boolean | undefined;
501
+ type: import('./enums').FormFieldType | undefined;
502
+ invalidLabel: any;
503
+ modelValue: any;
504
+ readonly: boolean;
505
+ 'onUpdate:modelValue': (value: unknown) => void;
506
+ }>;
507
+ invalid: import('vue').ComputedRef<boolean>;
508
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "update:formData" | "update:modelValue")[], "invalid" | "valid" | "update:formData" | "update:modelValue", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
509
+ type: {
510
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
511
+ validator: (value: import('./enums').FormFieldType) => boolean;
512
+ default: import('./enums').FormFieldType;
513
+ };
514
+ is: {
515
+ type: import('vue').PropType<import('vue').Component | string>;
516
+ default: undefined;
517
+ };
518
+ name: {
519
+ type: import('vue').PropType<string>;
520
+ required: true;
521
+ };
522
+ props: {
523
+ type: import('vue').PropType<Partial<{
524
+ [x: string]: any;
525
+ } | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<{
526
+ [x: string]: any;
527
+ }> | undefined) | undefined>>;
528
+ default: () => {};
529
+ };
530
+ showValid: {
531
+ type: BooleanConstructor;
532
+ default: boolean;
533
+ };
534
+ defaultValue: {
535
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
536
+ default: undefined;
537
+ };
538
+ lazyLoad: {
539
+ type: BooleanConstructor;
540
+ default: boolean;
541
+ };
542
+ readonly: {
543
+ type: BooleanConstructor;
544
+ default: undefined;
545
+ };
546
+ }>> & Readonly<{
547
+ onInvalid?: ((...args: any[]) => any) | undefined;
548
+ onValid?: ((...args: any[]) => any) | undefined;
549
+ "onUpdate:formData"?: ((...args: any[]) => any) | undefined;
550
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
551
+ }>, {
552
+ type: "number" | "text" | "email" | "password" | "tel" | "url" | "search" | "date" | "time" | "datetime-local" | "month" | "week" | "color" | "select" | "checkbox" | "radio" | "textarea" | "radioGroup" | "checkboxGroup" | "combobox" | "custom";
553
+ props: Partial<{
554
+ [x: string]: any;
555
+ } | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<{
556
+ [x: string]: any;
557
+ }> | undefined) | undefined>;
558
+ is: string | import('vue').Component;
559
+ showValid: boolean;
560
+ defaultValue: string | number | boolean | unknown[] | Record<string, any>;
561
+ lazyLoad: boolean;
562
+ readonly: boolean;
563
+ }, import('vue').SlotsType<{
564
+ [key: string]: any;
565
+ default: {
566
+ errors: import('zod').inferFormattedError<AnyZodObject, string>;
567
+ formData?: Partial<{
568
+ [x: string]: any;
569
+ }> | undefined;
570
+ formErrors?: {
571
+ readonly [x: string]: {
572
+ readonly _errors: readonly string[];
573
+ } | undefined;
574
+ readonly _errors: readonly string[];
575
+ } | undefined;
576
+ invalid: boolean;
577
+ invalidLabel: string;
578
+ modelValue: any;
579
+ onUpdate: (value: unknown) => void;
580
+ readonly: boolean;
581
+ submit?: InjectedFormData<Schema_1>["submit"];
582
+ validate?: ((formData?: Partial<{
583
+ [x: string]: any;
584
+ }> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
585
+ };
586
+ }>, {}, {}, "invalid" | "type" | "component" | "errors" | "hasProps" | "invalidLabel" | "is", import('vue').ComponentProvideOptions, true, {}, any>;
587
+ VvFormTemplate: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
588
+ schema: {
589
+ type: import('vue').PropType<FormTemplate<AnyZodObject>>;
590
+ required: true;
591
+ };
592
+ scope: {
593
+ type: import('vue').PropType<Record<string, unknown>>;
594
+ default: () => {};
595
+ };
596
+ }>, (() => (import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
597
+ [key: string]: any;
598
+ }> | import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
599
+ [key: string]: any;
600
+ }>[] | undefined)[]) | undefined, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
601
+ schema: {
602
+ type: import('vue').PropType<FormTemplate<AnyZodObject>>;
603
+ required: true;
604
+ };
605
+ scope: {
606
+ type: import('vue').PropType<Record<string, unknown>>;
607
+ default: () => {};
608
+ };
609
+ }>> & Readonly<{}>, {
610
+ scope: Record<string, unknown>;
611
+ }, import('vue').SlotsType<{
612
+ default: {
613
+ errors?: {
614
+ readonly [x: string]: {
615
+ readonly _errors: readonly string[];
616
+ } | undefined;
617
+ readonly _errors: readonly string[];
618
+ } | undefined;
619
+ formData?: Partial<{
620
+ [x: string]: any;
621
+ }> | undefined;
622
+ invalid: boolean;
623
+ status?: import('./enums').FormStatus;
624
+ submit?: InjectedFormData<Schema_2>["submit"];
625
+ validate?: ((formData?: Partial<{
626
+ [x: string]: any;
627
+ }> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
628
+ clear?: InjectedFormData<Schema_2>["clear"];
629
+ reset?: InjectedFormData<Schema_2>["reset"];
630
+ };
631
+ }>, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
632
+ VvFormWrapper: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
633
+ name: {
634
+ type: StringConstructor;
635
+ required: true;
636
+ };
637
+ tag: {
638
+ type: StringConstructor;
639
+ default: undefined;
640
+ };
641
+ }>, {
642
+ clear: (() => void) | undefined;
643
+ errors: Readonly<import('vue').Ref<{
644
+ readonly [x: string]: {
645
+ readonly _errors: readonly string[];
646
+ } | undefined;
647
+ readonly _errors: readonly string[];
648
+ } | undefined, {
649
+ readonly [x: string]: {
650
+ readonly _errors: readonly string[];
651
+ } | undefined;
652
+ readonly _errors: readonly string[];
653
+ } | undefined>> | undefined;
654
+ fields: import('vue').Ref<Set<string> & Omit<Set<string>, keyof Set<any>>, Set<string> | (Set<string> & Omit<Set<string>, keyof Set<any>>)>;
655
+ fieldsErrors: import('vue').Ref<Map<string, import('zod').inferFormattedError<AnyZodObject, string>>, Map<string, import('zod').inferFormattedError<AnyZodObject, string>>>;
656
+ formData: import('vue').Ref<Partial<{
657
+ [x: string]: any;
658
+ }> | undefined, Partial<{
659
+ [x: string]: any;
660
+ }> | undefined> | undefined;
661
+ invalid: import('vue').ComputedRef<boolean>;
662
+ reset: (() => void) | undefined;
663
+ submit: (() => Promise<boolean>) | undefined;
664
+ validate: ((formData?: Partial<{
665
+ [x: string]: any;
666
+ }> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
667
+ validateWrapper: () => Promise<boolean>;
668
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid")[], "invalid" | "valid", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
669
+ name: {
670
+ type: StringConstructor;
671
+ required: true;
672
+ };
673
+ tag: {
674
+ type: StringConstructor;
675
+ default: undefined;
676
+ };
677
+ }>> & Readonly<{
678
+ onInvalid?: ((...args: any[]) => any) | undefined;
679
+ onValid?: ((...args: any[]) => any) | undefined;
680
+ }>, {
681
+ tag: string;
682
+ }, import('vue').SlotsType<{
683
+ default: {
684
+ errors?: {
685
+ readonly [x: string]: {
686
+ readonly _errors: readonly string[];
687
+ } | undefined;
688
+ readonly _errors: readonly string[];
689
+ } | undefined;
690
+ formData?: Partial<{
691
+ [x: string]: any;
692
+ }> | undefined;
693
+ formErrors?: {
694
+ readonly [x: string]: {
695
+ readonly _errors: readonly string[];
696
+ } | undefined;
697
+ readonly _errors: readonly string[];
698
+ } | undefined;
699
+ invalid: boolean;
700
+ submit?: InjectedFormData<Schema_3>["submit"];
701
+ validate?: ((formData?: Partial<{
702
+ [x: string]: any;
703
+ }> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
704
+ validateWrapper?: (() => Promise<boolean>) | undefined;
705
+ fieldsErrors: Map<string, import('zod').inferFormattedError<AnyZodObject, string>>;
706
+ clear?: InjectedFormData<Schema_3>["clear"];
707
+ reset?: InjectedFormData<Schema_3>["reset"];
708
+ };
709
+ }>, {}, {}, "invalid" | "reset" | "clear" | "errors" | "submit" | "validate" | "formData" | "tag" | "fields" | "fieldsErrors" | "validateWrapper", import('vue').ComponentProvideOptions, true, {}, any>;
710
+ };
711
+ export { FormFieldType } from './enums';
712
+ export { defaultObjectBySchema } from './utils';
713
+ type FormComponent = ReturnType<typeof defineForm>;
714
+ type FormWrapperComponent = ReturnType<typeof defineFormWrapper>;
715
+ type FormFieldComponent = ReturnType<typeof defineFormField>;
716
+ type FormTemplateComponent = ReturnType<typeof defineFormTemplate>;
717
+ export type { FormComponent, FormComposableOptions, FormFieldComponent, FormPluginOptions, FormSchema, FormTemplate, FormTemplateComponent, FormTemplateItem, FormWrapperComponent, InjectedFormData, InjectedFormFieldData, InjectedFormWrapperData, Path, PathValue, };
718
+ /**
719
+ * @deprecated Use `useForm()` instead
720
+ */
721
+ export declare function formFactory<Schema extends FormSchema>(schema: Schema, options?: FormComposableOptions<Schema>): {
722
+ clear: () => void;
723
+ errors: import('vue').Ref<import('zod').inferFormattedError<Schema, string> | undefined, import('zod').inferFormattedError<Schema, string> | undefined>;
724
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
725
+ formFieldInjectionKey: InjectionKey<InjectedFormFieldData<Schema>>;
726
+ formInjectionKey: InjectionKey<InjectedFormData<Schema>>;
727
+ formWrapperInjectionKey: InjectionKey<InjectedFormWrapperData<Schema>>;
728
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
729
+ invalid: import('vue').ComputedRef<boolean>;
730
+ readonly: import('vue').Ref<boolean, boolean>;
731
+ reset: () => void;
732
+ status: import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>;
733
+ stopUpdatesWatch: import('vue').WatchStopHandle;
734
+ submit: () => Promise<boolean>;
735
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
736
+ VvForm: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
737
+ continuousValidation: {
738
+ type: BooleanConstructor;
739
+ default: boolean;
740
+ };
741
+ modelValue: {
742
+ type: ObjectConstructor;
743
+ default: () => {};
744
+ };
745
+ readonly: {
746
+ type: BooleanConstructor;
747
+ default: boolean;
748
+ };
749
+ tag: {
750
+ type: StringConstructor;
751
+ default: string;
752
+ };
753
+ template: {
754
+ type: import('vue').PropType<FormTemplate<Schema>>;
755
+ default: undefined;
756
+ };
757
+ }>, {
758
+ clear: () => void;
759
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>>;
760
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
761
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
762
+ invalid: import('vue').ComputedRef<boolean>;
763
+ isReadonly: import('vue').Ref<boolean, boolean>;
764
+ reset: () => void;
765
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
766
+ stopUpdatesWatch: import('vue').WatchStopHandle;
767
+ submit: () => Promise<boolean>;
768
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
769
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly")[], "invalid" | "valid" | "reset" | "update:modelValue" | "submit" | "update:readonly", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
770
+ continuousValidation: {
771
+ type: BooleanConstructor;
772
+ default: boolean;
773
+ };
774
+ modelValue: {
775
+ type: ObjectConstructor;
776
+ default: () => {};
777
+ };
778
+ readonly: {
779
+ type: BooleanConstructor;
780
+ default: boolean;
781
+ };
782
+ tag: {
783
+ type: StringConstructor;
784
+ default: string;
785
+ };
786
+ template: {
787
+ type: import('vue').PropType<FormTemplate<Schema>>;
788
+ default: undefined;
789
+ };
790
+ }>> & Readonly<{
791
+ onInvalid?: ((...args: any[]) => any) | undefined;
792
+ onValid?: ((...args: any[]) => any) | undefined;
793
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
794
+ onReset?: ((...args: any[]) => any) | undefined;
795
+ onSubmit?: ((...args: any[]) => any) | undefined;
796
+ "onUpdate:readonly"?: ((...args: any[]) => any) | undefined;
797
+ }>, {
798
+ readonly: boolean;
799
+ template: FormTemplate<Schema>;
800
+ modelValue: Record<string, any>;
801
+ tag: string;
802
+ continuousValidation: boolean;
803
+ }, import('vue').SlotsType<{
804
+ default: {
805
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>>;
806
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema> | undefined>, Partial<import('zod').TypeOf<Schema> | undefined>>;
807
+ ignoreUpdates: import('@vueuse/shared').IgnoredUpdater;
808
+ invalid: import('vue').ComputedRef<boolean>;
809
+ readonly: import('vue').Ref<boolean, boolean>;
810
+ status: Readonly<import('vue').Ref<import('./enums').FormStatus | undefined, import('./enums').FormStatus | undefined>>;
811
+ stopUpdatesWatch: import('vue').WatchStopHandle;
812
+ submit: () => Promise<boolean>;
813
+ validate: (value?: Partial<import('zod').TypeOf<Schema> | undefined>, fields?: Set<string>) => Promise<boolean>;
814
+ clear: () => void;
815
+ reset: () => void;
816
+ };
817
+ }>, {}, {}, "invalid" | "valid" | "reset" | "status" | "clear" | "errors" | "submit" | "validate" | "readonly" | "template" | "tag", import('vue').ComponentProvideOptions, true, {}, any>;
818
+ VvFormField: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
819
+ type: {
820
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
821
+ validator: (value: import('./enums').FormFieldType) => boolean;
822
+ default: import('./enums').FormFieldType;
823
+ };
824
+ is: {
825
+ type: import('vue').PropType<import('vue').Component | string>;
826
+ default: undefined;
827
+ };
828
+ name: {
829
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
830
+ required: true;
831
+ };
832
+ props: {
833
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
834
+ default: () => {};
835
+ };
836
+ showValid: {
837
+ type: BooleanConstructor;
838
+ default: boolean;
839
+ };
840
+ defaultValue: {
841
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
842
+ default: undefined;
843
+ };
844
+ lazyLoad: {
845
+ type: BooleanConstructor;
846
+ default: boolean;
847
+ };
848
+ readonly: {
849
+ type: BooleanConstructor;
850
+ default: undefined;
851
+ };
852
+ }>, {
853
+ component: import('vue').ComputedRef<{
854
+ new (...args: any[]): any;
855
+ __isFragment?: never;
856
+ __isTeleport?: never;
857
+ __isSuspense?: never;
858
+ } | import('vue').ConcreteComponent>;
859
+ hasProps: import('vue').ComputedRef<{
860
+ name: {} | ([{
861
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
862
+ required: true;
863
+ }] extends [import('vue').Prop<infer V, infer D>] ? unknown extends V ? keyof V extends never ? import('@vue/shared').IfAny<V, V, D> : V : V : {
864
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
865
+ required: true;
866
+ });
867
+ invalid: boolean;
868
+ valid: boolean | undefined;
869
+ type: import('./enums').FormFieldType | undefined;
870
+ invalidLabel: any;
871
+ modelValue: any;
872
+ readonly: boolean;
873
+ 'onUpdate:modelValue': (value: unknown) => void;
874
+ }>;
875
+ invalid: import('vue').ComputedRef<boolean>;
876
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid" | "update:formData" | "update:modelValue")[], "invalid" | "valid" | "update:formData" | "update:modelValue", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
877
+ type: {
878
+ type: import('vue').PropType<`${import('./enums').FormFieldType}`>;
879
+ validator: (value: import('./enums').FormFieldType) => boolean;
880
+ default: import('./enums').FormFieldType;
881
+ };
882
+ is: {
883
+ type: import('vue').PropType<import('vue').Component | string>;
884
+ default: undefined;
885
+ };
886
+ name: {
887
+ type: import('vue').PropType<Path<import('zod').TypeOf<Schema>>>;
888
+ required: true;
889
+ };
890
+ props: {
891
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
892
+ default: () => {};
893
+ };
894
+ showValid: {
895
+ type: BooleanConstructor;
896
+ default: boolean;
897
+ };
898
+ defaultValue: {
899
+ type: (StringConstructor | ObjectConstructor | NumberConstructor | BooleanConstructor | ArrayConstructor)[];
900
+ default: undefined;
901
+ };
902
+ lazyLoad: {
903
+ type: BooleanConstructor;
904
+ default: boolean;
905
+ };
906
+ readonly: {
907
+ type: BooleanConstructor;
908
+ default: undefined;
909
+ };
910
+ }>> & Readonly<{
911
+ onInvalid?: ((...args: any[]) => any) | undefined;
912
+ onValid?: ((...args: any[]) => any) | undefined;
913
+ "onUpdate:formData"?: ((...args: any[]) => any) | undefined;
914
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
915
+ }>, {
916
+ type: "number" | "text" | "email" | "password" | "tel" | "url" | "search" | "date" | "time" | "datetime-local" | "month" | "week" | "color" | "select" | "checkbox" | "radio" | "textarea" | "radioGroup" | "checkboxGroup" | "combobox" | "custom";
917
+ props: [{
918
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
919
+ default: () => {};
920
+ }] extends [import('vue').Prop<infer V, infer D>] ? unknown extends V ? keyof V extends never ? import('@vue/shared').IfAny<V, V, D> : V : V : {
921
+ type: import('vue').PropType<Partial<import('zod').TypeOf<Schema> | ((formData?: import('vue').Ref<ObjectConstructor>) => Partial<import('zod').TypeOf<Schema>> | undefined) | undefined>>;
922
+ default: () => {};
923
+ };
924
+ is: string | import('vue').Component;
925
+ showValid: boolean;
926
+ defaultValue: string | number | boolean | unknown[] | Record<string, any>;
927
+ lazyLoad: boolean;
928
+ readonly: boolean;
929
+ }, import('vue').SlotsType<{
930
+ [key: string]: any;
931
+ default: {
932
+ errors: import('zod').inferFormattedError<Schema, string>;
933
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
934
+ formErrors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
935
+ invalid: boolean;
936
+ invalidLabel: string;
937
+ modelValue: any;
938
+ onUpdate: (value: unknown) => void;
939
+ readonly: boolean;
940
+ submit?: InjectedFormData<Schema_1>["submit"];
941
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
942
+ };
943
+ }>, {}, {}, "invalid" | "type" | "component" | "errors" | "hasProps" | "invalidLabel" | "is", import('vue').ComponentProvideOptions, true, {}, any>;
944
+ VvFormTemplate: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
945
+ schema: {
946
+ type: import('vue').PropType<FormTemplate<Schema>>;
947
+ required: true;
948
+ };
949
+ scope: {
950
+ type: import('vue').PropType<Record<string, unknown>>;
951
+ default: () => {};
952
+ };
953
+ }>, (() => (import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
954
+ [key: string]: any;
955
+ }> | import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
956
+ [key: string]: any;
957
+ }>[] | undefined)[]) | undefined, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
958
+ schema: {
959
+ type: import('vue').PropType<FormTemplate<Schema>>;
960
+ required: true;
961
+ };
962
+ scope: {
963
+ type: import('vue').PropType<Record<string, unknown>>;
964
+ default: () => {};
965
+ };
966
+ }>> & Readonly<{}>, {
967
+ scope: Record<string, unknown>;
968
+ }, import('vue').SlotsType<{
969
+ default: {
970
+ errors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
971
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
972
+ invalid: boolean;
973
+ status?: import('./enums').FormStatus;
974
+ submit?: InjectedFormData<Schema_2>["submit"];
975
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
976
+ clear?: InjectedFormData<Schema_2>["clear"];
977
+ reset?: InjectedFormData<Schema_2>["reset"];
978
+ };
979
+ }>, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
980
+ VvFormWrapper: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
981
+ name: {
982
+ type: StringConstructor;
983
+ required: true;
984
+ };
985
+ tag: {
986
+ type: StringConstructor;
987
+ default: undefined;
988
+ };
989
+ }>, {
990
+ clear: (() => void) | undefined;
991
+ errors: Readonly<import('vue').Ref<import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined, import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined>> | undefined;
992
+ fields: import('vue').Ref<Set<string> & Omit<Set<string>, keyof Set<any>>, Set<string> | (Set<string> & Omit<Set<string>, keyof Set<any>>)>;
993
+ fieldsErrors: import('vue').Ref<Map<string, import('zod').inferFormattedError<Schema, string>>, Map<string, import('zod').inferFormattedError<Schema, string>>>;
994
+ formData: import('vue').Ref<Partial<import('zod').TypeOf<Schema>> | undefined, Partial<import('zod').TypeOf<Schema>> | undefined> | undefined;
995
+ invalid: import('vue').ComputedRef<boolean>;
996
+ reset: (() => void) | undefined;
997
+ submit: (() => Promise<boolean>) | undefined;
998
+ validate: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
999
+ validateWrapper: () => Promise<boolean>;
1000
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("invalid" | "valid")[], "invalid" | "valid", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1001
+ name: {
1002
+ type: StringConstructor;
1003
+ required: true;
1004
+ };
1005
+ tag: {
1006
+ type: StringConstructor;
1007
+ default: undefined;
1008
+ };
1009
+ }>> & Readonly<{
1010
+ onInvalid?: ((...args: any[]) => any) | undefined;
1011
+ onValid?: ((...args: any[]) => any) | undefined;
1012
+ }>, {
1013
+ tag: string;
1014
+ }, import('vue').SlotsType<{
1015
+ default: {
1016
+ errors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
1017
+ formData?: Partial<import('zod').TypeOf<Schema>> | undefined;
1018
+ formErrors?: import('vue').DeepReadonly<import('zod').inferFormattedError<Schema, string>> | undefined;
1019
+ invalid: boolean;
1020
+ submit?: InjectedFormData<Schema_3>["submit"];
1021
+ validate?: ((formData?: Partial<import('zod').TypeOf<Schema>> | undefined, fields?: Set<string>) => Promise<boolean>) | undefined;
1022
+ validateWrapper?: (() => Promise<boolean>) | undefined;
1023
+ fieldsErrors: Map<string, import('zod').inferFormattedError<Schema, string>>;
1024
+ clear?: InjectedFormData<Schema_3>["clear"];
1025
+ reset?: InjectedFormData<Schema_3>["reset"];
1026
+ };
1027
+ }>, {}, {}, "invalid" | "reset" | "clear" | "errors" | "submit" | "validate" | "formData" | "tag" | "fields" | "fieldsErrors" | "validateWrapper", import('vue').ComponentProvideOptions, true, {}, any>;
1028
+ };