/// import { IComponentController } from 'angular'; import MflyModalService from './modal.service'; export interface ModalDismissConfirmation { cancelButtonText: string; confirmButtonText: string; message: string; title: string; } export default class MflyModalComponentController implements IComponentController { private $attrs; private $element; private $timeout; private $transclude; private $window; private mflyModalService; modalBodyClass?: string | undefined; modalHeaderClass?: string | undefined; modalSize?: 'large' | 'full' | undefined; modalId: string | undefined; modalAsyncContentLoaded?: boolean | undefined; modalCloseCallback: () => void; /** A callback that provides an optional "are you sure?" dialog when the modal is dismissed (canceled). Return `undefined` if no confirmation is required. */ modalConfirmDismissCallback?: () => ModalDismissConfirmation | undefined; protected dismissConfirmation: ModalDismissConfirmation | undefined; protected hasFooterTransclusion: boolean; protected hasHeaderTransclusion: boolean; private focusableElementsInModal; private firstFocusable; private keyDownHandler; private lastFocusable; private modalElement; private hasAppliedFirstFocus; constructor($attrs: ng.IAttributes, $element: ng.IAugmentedJQuery, $timeout: ng.ITimeoutService, $transclude: ng.ITranscludeFunction, $window: ng.IWindowService, mflyModalService: MflyModalService); $onDestroy(): void; $onInit(): void; $postLink(): void; protected cancelDismiss(): void; protected confirmDismiss(): void; protected dismiss(): void; /** While the modal's open, trap focus and handle ESC to close. */ private handleKeydown; private calculateFocusableElements; }