/** Angular2 */ import * as ng from "@angular/core"; import * as ngRouter from "@angular/router"; /** Core */ import { ResultMessageBag } from "../resultMessage/resultMessageBag"; import { Action, ActionButton, ActionButtonBuildContextHandler } from "cmf.core/src/domain/metadata/action"; import { BaseAction, ButtonSize } from "./baseAction"; export { ButtonSize }; /** * Base Action Button Class - Used in ActionButton, ActionButtonGroupButton, OverlayButton */ export declare abstract class BaseActionButton extends BaseAction { /** * Gives a visual indication to the button that the page is outdated (this is the use case for this property) */ isOutdated: boolean; /** * Gets or sets if the component is display only - delegating the navigation to an upper component */ isDisplayOnly: boolean; /** * Action ID */ actionId: string; /** * If the Action ID was set explicitly by input */ explicitAction: boolean; /** * Action */ action: Action; /** * Build context to change */ onBuildContext: ActionButtonBuildContextHandler; /** * Invoke Event Emitter */ invoke: ng.EventEmitter; /** * Angular Router reference */ protected router: ngRouter.Router; /** * onActionButtonMetadata - Called after fetching metadata action data from metadata */ protected onActionButtonMetadata(button: ActionButton): Promise; /** * onIsDisableCheck - Called on disable state check, after fetching metadata action data from metadata */ protected onIsDisableCheck(button: ActionButton, context?: any, messagesArray?: (string | ResultMessageBag)[]): Promise; /** * onClick - build context, navigate action */ protected onClick(event: Event): void; /** * Click */ click(): void; /** * This method is supposed to be invoked by a parent component. In a normal scenario, this would be an Action Bar. */ destroy(): void; }