@@ -24,8 +24,8 @@ export interface InternalFieldData extends Meta {
2424/**
2525 * Used by `setFields` config
2626 */
27- export interface FieldData extends Partial < Omit < InternalFieldData , 'name' > > {
28- name : NamePath ;
27+ export interface FieldData < Values = any > extends Partial < Omit < InternalFieldData , 'name' > > {
28+ name : NamePath < Values > ;
2929}
3030
3131export type RuleType =
@@ -235,37 +235,38 @@ export interface InternalHooks {
235235}
236236
237237/** Only return partial when type is not any */
238- type RecursivePartial < T > = NonNullable < T > extends object
239- ? {
240- [ P in keyof T ] ?: NonNullable < T [ P ] > extends ( infer U ) [ ]
241- ? RecursivePartial < U > [ ]
242- : NonNullable < T [ P ] > extends object
243- ? RecursivePartial < T [ P ] >
244- : T [ P ] ;
245- }
246- : T ;
238+ type RecursivePartial < T > =
239+ NonNullable < T > extends object
240+ ? {
241+ [ P in keyof T ] ?: NonNullable < T [ P ] > extends ( infer U ) [ ]
242+ ? RecursivePartial < U > [ ]
243+ : NonNullable < T [ P ] > extends object
244+ ? RecursivePartial < T [ P ] >
245+ : T [ P ] ;
246+ }
247+ : T ;
247248
248249export type FilterFunc = ( meta : Meta ) => boolean ;
249250
250251export type GetFieldsValueConfig = { strict ?: boolean ; filter ?: FilterFunc } ;
251252
252253export interface FormInstance < Values = any > {
253254 // Origin Form API
254- getFieldValue : ( name : NamePath ) => StoreValue ;
255+ getFieldValue : ( name : NamePath < Values > ) => StoreValue ;
255256 getFieldsValue : ( ( ) => Values ) &
256- ( ( nameList : NamePath [ ] | true , filterFunc ?: FilterFunc ) => any ) &
257+ ( ( nameList : NamePath < Values > [ ] | true , filterFunc ?: FilterFunc ) => any ) &
257258 ( ( config : GetFieldsValueConfig ) => any ) ;
258- getFieldError : ( name : NamePath ) => string [ ] ;
259- getFieldsError : ( nameList ?: NamePath [ ] ) => FieldError [ ] ;
260- getFieldWarning : ( name : NamePath ) => string [ ] ;
261- isFieldsTouched : ( ( nameList ?: NamePath [ ] , allFieldsTouched ?: boolean ) => boolean ) &
259+ getFieldError : ( name : NamePath < Values > ) => string [ ] ;
260+ getFieldsError : ( nameList ?: NamePath < Values > [ ] ) => FieldError [ ] ;
261+ getFieldWarning : ( name : NamePath < Values > ) => string [ ] ;
262+ isFieldsTouched : ( ( nameList ?: NamePath < Values > [ ] , allFieldsTouched ?: boolean ) => boolean ) &
262263 ( ( allFieldsTouched ?: boolean ) => boolean ) ;
263- isFieldTouched : ( name : NamePath ) => boolean ;
264- isFieldValidating : ( name : NamePath ) => boolean ;
265- isFieldsValidating : ( nameList ?: NamePath [ ] ) => boolean ;
266- resetFields : ( fields ?: NamePath [ ] ) => void ;
267- setFields : ( fields : FieldData [ ] ) => void ;
268- setFieldValue : ( name : NamePath , value : any ) => void ;
264+ isFieldTouched : ( name : NamePath < Values > ) => boolean ;
265+ isFieldValidating : ( name : NamePath < Values > ) => boolean ;
266+ isFieldsValidating : ( nameList ?: NamePath < Values > [ ] ) => boolean ;
267+ resetFields : ( fields ?: NamePath < Values > [ ] ) => void ;
268+ setFields : ( fields : FieldData < Values > [ ] ) => void ;
269+ setFieldValue : ( name : NamePath < Values > , value : any ) => void ;
269270 setFieldsValue : ( values : RecursivePartial < Values > ) => void ;
270271 validateFields : ValidateFields < Values > ;
271272
0 commit comments