import { FormGroup, AbstractControl, ValidatorFn } from '@angular/forms';
/**
 * Helper for Form Groups
 */
export declare class FormGroupHelper {
    /**
     * Call patchValue on the formGroup with only the properties
     * that actually have values in updates. This method will ignore
     * any value that is either null or undefined
     */
    patchValueSafely(formGroup: FormGroup, updates: any): void;
    /**
     * Get an id for the form controls input
     */
    getInputId(id: string): string;
    /**
     * Takes in a control and returns a function that sets the control's required validator based on
     * whether the value provided is empty or not. Adds the required validator if the value provided is
     * not empty, otherwise removes the required validator. Useful for dynamically setting the requiredness
     * of a control based on whether another control has a value or not.
     *
     * @param control
     * @param keepValidators - Array of Validators to leave configured on the control. Any existing
     * validators on the control will be lost if this is left empty.
     * @param isZeroEmpty - If true, a numeric zero will be considered an empty value. Default is false.
     */
    setRequiredFn(control: AbstractControl, keepValidators?: ValidatorFn[], isZeroEmpty?: boolean): (value?: string | number | null | undefined) => void;
}
