FormArray • Angular
class FormArray<TControl extends AbstractControl<any> = any> extends AbstractControl< ɵTypedOrUntyped<TControl, ɵFormArrayValue<TControl>, any>, ɵTypedOrUntyped<TControl, ɵFormArrayRawValue<TControl>, any>> { constructor(controls: TControl[], validatorOrOpts?: ValidatorFn | AbstractControlOptions | ValidatorFn[] | null | undefined, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null | undefined): FormArray<TControl>; controls: ɵTypedOrUntyped<TControl, TControl[], AbstractControl<any, any, any>[]>; at(index: number): ɵTypedOrUntyped<TControl, TControl, AbstractControl<any, any, any>>; push(control: TControl | TControl[], options?: { emitEvent?: boolean | undefined; }): void; insert(index: number, control: TControl, options?: { emitEvent?: boolean | undefined; }): void; removeAt(index: number, options?: { emitEvent?: boolean | undefined; }): void; setControl(index: number, control: TControl, options?: { emitEvent?: boolean | undefined; }): void; readonly length: number; setValue(value: ɵIsAny<TControl, any[], ɵRawValue<TControl>[]>, options?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }): void; patchValue(value: ɵIsAny<TControl, any[], ɵValue<TControl>[]>, options?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }): void; reset(value?: ɵTypedOrUntyped<TControl, ɵIsAny<TControl, any[], ɵValue<TControl>[]>, any>, options?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; overwriteDefaultValue?: boolean | undefined; }): void; getRawValue(): ɵIsAny<TControl, any[], ɵRawValue<TControl>[]>; clear(options?: { emitEvent?: boolean | undefined; }): void; readonly override value: TValue; override get validator(): ValidatorFn | null; override get asyncValidator(): AsyncValidatorFn | null; override readonly parent: FormGroup<any> | FormArray<any> | null; override readonly status: FormControlStatus; override readonly valid: boolean; override readonly invalid: boolean; override readonly pending: boolean; override readonly disabled: boolean; override readonly enabled: boolean; readonly override errors: ValidationErrors | null; override readonly pristine: boolean; override readonly dirty: boolean; override readonly touched: boolean; override readonly untouched: boolean; readonly override events: any; readonly override valueChanges: Observable<TValue>; readonly override statusChanges: Observable<FormControlStatus>; override readonly updateOn: FormHooks; override setValidators(validators: ValidatorFn | ValidatorFn[] | null): void; override setAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[] | null): void; override addValidators(validators: ValidatorFn | ValidatorFn[]): void; override addAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[]): void; override removeValidators(validators: ValidatorFn | ValidatorFn[]): void; override removeAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[]): void; override hasValidator(validator: ValidatorFn): boolean; override hasAsyncValidator(validator: AsyncValidatorFn): boolean; override clearValidators(): void; override clearAsyncValidators(): void; override markAsTouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override markAsTouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; } | undefined): void; override markAllAsDirty(opts?: { emitEvent?: boolean | undefined; }): void; override markAllAsTouched(opts?: { emitEvent?: boolean | undefined; }): void; override markAsUntouched(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override markAsUntouched(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override markAsDirty(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override markAsDirty(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override markAsPristine(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override markAsPristine(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override markAsPending(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override markAsPending(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override disable(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override disable(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override enable(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; }): void; override setParent(parent: FormGroup<any> | FormArray<any> | null): void; override updateValueAndValidity(opts?: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; } | undefined): void; override updateValueAndValidity(opts: { onlySelf?: boolean | undefined; emitEvent?: boolean | undefined; sourceControl?: AbstractControl<any, any, any> | undefined; }): void; override setErrors(errors: ValidationErrors | null, opts?: { emitEvent?: boolean | undefined; } | undefined): void; override setErrors(errors: ValidationErrors | null, opts?: { emitEvent?: boolean | undefined; shouldHaveEmitted?: boolean | undefined; } | undefined): void; override get<P extends string | readonly (string | number)[]>(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null; override get<P extends string | Array<string | number>>(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>, any> | null; override getError(errorCode: string, path?: string | (string | number)[] | undefined): any; override hasError(errorCode: string, path?: string | (string | number)[] | undefined): boolean; override readonly root: AbstractControl<any, any, any>;}