/** Core */
import { CoreComponent } from "cmf.core/src/core";
/** Command pattern */
import { WizardInvoker } from "./command/invoker";
/** Bags */
import { WizardBag } from "./wizardBag";
import { PageBag } from "../page/pageBag";
import { ResultMessageBag } from "../resultMessage/resultMessageBag";
/** Angular 2*/
import * as ng from "@angular/core";
/**
* The Wizard footer component.
* This component serves the footer for the wizard with all its commands (Next, Back, Finish...)
*
* ## Example
*
* Assume this HTML Template
*
* ```html
*
*
* ```
*
* Next we have the component's class
*
* ```javascript
* @Core.Component(...)
* @Core.View(...)
*
* export class MyFooter extends CoreComponent {
*
* constructor(loader: ng.DynamicComponentLoader, element: ng.ElementRef) {
* super(loader, element);
* }
* }
*
* ```
*/
export declare class WizardFooter extends CoreComponent implements ng.OnDestroy {
bag: WizardBag;
private wizardInvoker;
private pageBag;
private _zone;
/**
* Stores all the messages that prevent this step from being validated
*
*/
_resultMessages: Array;
/**
* Show comments
*/
showComments: boolean;
/**
* If there are messages for popover show it even if they're not of error type
*/
showPopOverForAllMsgTypes: boolean;
/**
* The un subscriber for the PageBag validation event
*/
private _unSubscriber;
/**
* If true, the Finish button should be visible
*/
isFinishVisible: boolean;
/**
* If true, the Next button should be visible
*/
isNextVisible: boolean;
/**
* If true, the Back button should be visible
*/
isBackVisible: boolean;
/**
* If is in a small screen device (consider small devices as mobile)
*/
readonly isMobile: boolean;
/**
* On comments open
*/
onCommentsOpen: ng.EventEmitter;
constructor(bag: WizardBag, wizardInvoker: WizardInvoker, pageBag: PageBag, _zone: ng.NgZone);
/**
* Navigates to the next step
*
* @param {Event} [event] click event
*/
nextStep(event: Event): void;
/**
* Navigates to the previous step
*
* @param {Event} [event] click event
*/
previousStep(event: Event): void;
/**
* Finishes the wizard
*
* @param {Event} [event] click event
*/
finish(event: Event): void;
/**
* Closes the wizard
*
* @param {Event} [event] click event
*/
close(event: Event): void;
/**
* Cancels the wizard and closes it
*
* @param {Event} [event] click event
*/
cancel(event: Event): void;
/**
* On comments open
*
* @param {Event} [event] click event
*/
openComments(event: Event): void;
/**
* On destroy
*/
ngOnDestroy(): void;
}