import { AfterContentInit } from '@angular/core';
import { AbstractControl } from '@angular/forms';
import { WizardModel } from '../models/wizard-model';
import { WizardStepComponent } from './wizard-step.component';
import * as i0 from "@angular/core";
/**
 * A base class for form based wizard steps
 */
export declare abstract class FormWizardStepComponent<TModel extends WizardModel, TResourceStrings> extends WizardStepComponent<TModel, TResourceStrings> implements AfterContentInit {
    /**
     * A reference to the form control for binding the state of the wizard state
     */
    protected abstract readonly formControl: AbstractControl;
    /**
     * Called when the form value has changed
     */
    protected onFormValueChanged(): void;
    /**
     * Observable handler for determining if the step is valid
     */
    protected checkIsValid(): import("rxjs").Observable<boolean>;
    /**
     * Gets if the step is currently valid
     */
    protected getIsValid(): boolean;
    /**
     * Implementation of angular lifecycle AfterContentInit interface.
     * Subscribes to form value changes
     * Disable form if step has been marked as disabled
     */
    ngAfterContentInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<FormWizardStepComponent<any, any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<FormWizardStepComponent<any, any>, never, never, {}, {}, never, never, false, never>;
}
