import type { IController } from 'angular';
import type { IModalWizardPageState } from './ModalWizard';
/**
 * Wizard page directive
 * possible attributes:
 *   - key (required): Any string value, unique within the wizard; it becomes the the hook to access the page state
 *     through the wizard, e.g. wizard.getPage('page-1').markComplete()
 *   - label (required): Any string value; it becomes label in the wizard flow
 *   - done (optional, default: false): when set to true, the page will be marked complete when rendered
 *   - mandatory (optional, default: true): when set to false, the wizard will not consider this page when isComplete
 *     is called
 *   - render (optional, default: true): when set to false, registers the page with the wizard, but does not participate
 *     in the wizard flow. To add the page to the flow, call wizard.includePage(key)
 *   - markCompleteOnView (optional, default: true): when set to false, the page will not be marked complete when
 *     scrolled into view
 */
export declare class WizardPageController implements IController {
    private $scope;
    /**
     * when set to false, the wizard will not consider this page when isComplete is called
     * default: false
     * @type {boolean}
     */
    mandatory: boolean;
    /**
     * when set to true, the page will be marked complete when rendered
     * default: false
     * @type {boolean}
     */
    done: boolean;
    /**
     * when set to false, the page will not be marked clean when scrolled into view
     * default: true
     * @type {boolean}
     */
    markCleanOnView: boolean;
    /**
     * when set to false, the page will not be marked complete when scrolled into view
     * default: true
     * @type {boolean}
     */
    markCompleteOnView: boolean;
    /**
     * Any string value, unique within the wizard; it becomes the the hook to access the page state through the wizard,
     * e.g. wizard.getPage('page-1').markComplete()
     */
    key: string;
    /**
     * Any string value; it becomes label in the wizard flow
     */
    label: string;
    /**
     * when set to false, registers the page with the wizard, but does not participate in the wizard flow.
     * To add the page to the flow, call wizard.includePage(key)
     * default: true
     * @type {boolean}
     */
    render: boolean;
    /**
     * Internal state of the page, initialized based on other public fields
     */
    state: IModalWizardPageState;
    static $inject: string[];
    constructor($scope: ng.IScope);
    $onInit(): void;
}
export declare const V2_WIZARD_PAGE_COMPONENT = "spinnaker.core.modal.wizard.wizardPage.component";
