Tracks the value and validity state of a group of FormControl instances.
FormControl
class FormGroup { controls: ɵTypedOrUntyped<TControl, TControl, { [key: string]: AbstractControl<any, any>; }>; registerControl(name: K, control: TControl[K]): TControl[K]; registerControl(this: FormGroup<{ [key: string]: AbstractControl<any, any>; }>, name: string, control: AbstractControl<any, any>): AbstractControl<any, any>; addControl(this: FormGroup<{ [key: string]: AbstractControl<any, any>; }>, name: string, control: AbstractControl<any, any>, options?: { emitEvent?: boolean; }): void; addControl(name: K, control: Required<TControl>[K], options?: { emitEvent?: boolean; }): void; removeControl(this: FormGroup<{ [key: string]: AbstractControl<any, any>; }>, name: string, options?: { emitEvent?: boolean; }): void; removeControl(name: ɵOptionalKeys<TControl> & S, options?: { emitEvent?: boolean; }): void; setControl(name: K, control: TControl[K], options?: { emitEvent?: boolean; }): void; setControl(this: FormGroup<{ [key: string]: AbstractControl<any, any>; }>, name: string, control: AbstractControl<any, any>, options?: { emitEvent?: boolean; }): void; contains(controlName: K): boolean; contains(this: FormGroup<{ [key: string]: AbstractControl<any, any>; }>, controlName: string): boolean; setValue(value: ɵIsAny<TControl, { [key: string]: any; }, { [K in keyof TControl]: ɵRawValue<TControl[K]>; }>, options?: { onlySelf?: boolean; emitEvent?: boolean; }): void; patchValue(value: ɵIsAny<TControl, { [key: string]: any; }, Partial<{ [K in keyof TControl]: ɵValue<TControl[K]>; }>>, options?: { onlySelf?: boolean; emitEvent?: boolean; }): void; reset(value?: ɵTypedOrUntyped<TControl, ɵIsAny<TControl, { [key: string]: any; }, Partial<{ [K in keyof TControl]: ɵValue<TControl[K]>; }>>, any>, options?: { onlySelf?: boolean; emitEvent?: boolean; }): void; getRawValue(): ɵTypedOrUntyped<TControl, ɵIsAny<TControl, { [key: string]: any; }, { [K in keyof TControl]: ɵRawValue<TControl[K]>; }>, any>; readonly override value: TValue; override get validator(): ValidatorFn; override get asyncValidator(): AsyncValidatorFn; override readonly parent: FormGroup<any> | FormArray<any>; 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; override readonly pristine: boolean; override readonly dirty: boolean; override readonly touched: boolean; override readonly untouched: boolean; readonly override events: Observable<ControlEvent<TValue>>; readonly override valueChanges: Observable<TValue>; readonly override statusChanges: Observable<FormControlStatus>; override readonly updateOn: FormHooks; override setValidators(validators: ValidatorFn | ValidatorFn[]): void; override setAsyncValidators(validators: AsyncValidatorFn | AsyncValidatorFn[]): 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; emitEvent?: boolean; }): void; override markAsTouched(opts?: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override markAllAsTouched(opts?: { emitEvent?: boolean; }): void; override markAsUntouched(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override markAsUntouched(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override markAsDirty(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override markAsDirty(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override markAsPristine(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override markAsPristine(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override markAsPending(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override markAsPending(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override disable(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override disable(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override enable(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override setParent(parent: FormGroup<any> | FormArray<any>): void; override updateValueAndValidity(opts?: { onlySelf?: boolean; emitEvent?: boolean; }): void; override updateValueAndValidity(opts: { onlySelf?: boolean; emitEvent?: boolean; sourceControl?: AbstractControl<any, any>; }): void; override setErrors(errors: ValidationErrors, opts?: { emitEvent?: boolean; }): void; override setErrors(errors: ValidationErrors, opts?: { emitEvent?: boolean; shouldHaveEmitted?: boolean; }): void; override get(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>>; override get(path: P): AbstractControl<ɵGetProperty<TRawValue, P>, ɵGetProperty<TRawValue, P>>; override getError(errorCode: string, path?: string | (string | number)[]): any; override hasError(errorCode: string, path?: string | (string | number)[]): boolean; override readonly root: AbstractControl<any, any>;}