# Type alias FormType<T>

FormType<T>: Partial<FormDefinition<T>> & {
[K in keyof T]: T[K] extends (infer U)[]
? FormDefinitionArray<FormType<U>> | FormDefinitionArray<RxapFormControl<U>> | RxapFormControl<T[K]> | RxapFormArray<U>
: T[K] extends Record<string, any>
? FormType<T[K]> & Partial<FormDefinition<T[K]>> | RxapFormControl<T[K]>
: RxapFormControl<NonEmpty<T[K]>>
}

#### Type Parameters

- T

- Defined in packages/angular/forms/src/lib/model.ts:88