src/FieldArrayProps.types.js.flow
// @flow
import type { ElementType, ElementRef, ComponentType } from 'react'
export type Props = {
name: string,
component: ComponentType<any> | ElementType,
props?: Object,
rerenderOnEveryChange?: boolean,
validate?: (value: any, allValues: Object, props: Object) => ?any,
warn?: (value: any, allValues: Object, props: Object) => ?any,
forwardRef?: boolean
}
export type Fields = {
_isFieldArray: boolean,
forEach(callback: Function): void,
get(index: number): any,
getAll(): Array<any>,
insert(index: number, value: any): void,
length: number,
map(callback: Function): Array<any>,
move(from: number, to: number): void,
name: string,
pop(): any,
push(value: any): void,
reduce(callback: Function): any,
remove(index: number): void,
removeAll(): void,
shift(): any,
some(callback: Function): boolean,
swap(from: number, to: number): void,
unshift(value: any): void
}
export type FieldArrayProps = {
fields: Fields,
meta: {
dirty: boolean,
error?: any,
form: string,
invalid: boolean,
pristine: boolean,
submitting: boolean,
submitFailed: boolean,
touched: boolean,
valid: boolean,
warning?: any
},
ref?: ElementRef<any>
}