ToForm<T, Atomic, RawOuter>
ts
type ToForm<T, Atomic, RawOuter> = [NonNullable<T>] extends [Atomic] ? ToFormPrimitive<T> : [NonNullable<T>] extends [object] ? ToFormObject<T, Atomic, RawOuter> : [NonNullable<T>] extends [unknown[]] ? ToFormArray<T, Atomic, RawOuter> : ToFormPrimitive<T>;Defined in: types/to-form.type.ts:108
Main type that maps any type T to the corresponding Angular form representation. Determines whether T is atomic, an object, an array, or a primitive.
Type Parameters
| Type Parameter | Default type | Description |
|---|---|---|
T | - | The input type to convert. |
Atomic | ToFormDefaultAtomic | Types treated as atomic values. Defaults to ToFormDefaultAtomic. |
RawOuter extends boolean | true | Whether object types should be returned as raw mapped structures instead of wrapped in FormGroup. Defaults to true. |
Since
1.2.0
Author
Ian Wenneckers
Example
ts
interface User {
name: string;
age: number;
tags: string[];
}
// Produces:
// {
// name: FormControl<string>;
// age: FormControl<number>;
// tags: FormArray<FormControl<string>>;
// }
type UserForm = ToForm<User>;