import { EventEmitter, ViewContainerRef, ComponentRef, OnDestroy, ElementRef, OnChanges, OnInit, ComponentFactoryResolver, Renderer2, TemplateRef } from '@angular/core';
import { ConfirmationPopoverWindowComponent } from './confirmation-popover-window.component';
import { ConfirmationPopoverOptions } from './confirmation-popover-options.provider';
import { Positioning } from 'positioning';
export interface IConfirmCancelEvent {
clickEvent: MouseEvent;
}
/**
* All properties can be set on the directive as attributes like so
* (use `ConfirmationPopoverModule.forRoot()` to configure them globally):
* ```
*
* ```
*/
export declare class ConfirmationPopoverDirective implements OnDestroy, OnChanges, OnInit {
private viewContainerRef;
private elm;
private defaultOptions;
private cfr;
private position;
private renderer;
private document;
/**
* The title of the popover.
* Note, if you use an expression, you may want to consider using "data-title" instead of "title" so
* that the browser doesn't show native tooltips with the angular expression listed.
*/
title: string;
/**
* The body text of the popover.
*/
message: string;
/**
* The text of the confirm button. Default `Confirm`
*/
confirmText: string;
/**
* The text of the cancel button. Default `Cancel`
*/
cancelText: string;
/**
* The placement of the popover. It can be either `top`, `right`, `bottom` or `left`. Default `top`
*/
placement: string;
/**
* The bootstrap button type of the confirm button. It can be any supported bootstrap color type
* e.g. `default`, `warning`, `danger` etc. Default `success`
*/
confirmButtonType: string;
/**
* The bootstrap button type of the cancel button. It can be any supported bootstrap color type
* e.g. `default`, `warning`, `danger` etc. Default `default`
*/
cancelButtonType: string;
/**
* Set to either `confirm` or `cancel` to focus the confirm or cancel button.
* If omitted, by default it will not focus either button.
*/
focusButton: string;
/**
* Whether to hide the confirm button. Default `false`.
*/
hideConfirmButton: boolean;
/**
* Whether to hide the cancel button. Default `false`.
*/
hideCancelButton: boolean;
/**
* Whether to disable showing the popover. Default `false`.
*/
isDisabled: boolean;
/**
* Will open or show the popover when changed.
* Can be sugared with `isOpenChange` to emulate 2-way binding like so `[(isOpen)]="isOpen"`
*/
isOpen: boolean;
/**
* A reference to a tag that if set will override the popovers template. Use like so:
*
*
* My custom template
*
*
*
* Then pass customTemplate to the mwlConfirmationPopover directive like so `[customTemplate]="customTemplate"`
*/
customTemplate: TemplateRef;
/**
* Will emit when the popover is opened or closed
*/
isOpenChange: EventEmitter;
/**
* An expression that is called when the confirm button is clicked.
*/
confirm: EventEmitter;
/**
* An expression that is called when the cancel button is clicked.
*/
cancel: EventEmitter;
/**
* A custom CSS class to be added to the popover
*/
popoverClass: string;
/**
* Append the element to the document body rather than the trigger element
*/
appendToBody: boolean;
/**
* Popover element.
*/
popover: ComponentRef;
/**
* Creates a new `ConfirmationPopoverDirective` instance.
*/
constructor(viewContainerRef: ViewContainerRef, elm: ElementRef, defaultOptions: ConfirmationPopoverOptions, cfr: ComponentFactoryResolver, position: Positioning, renderer: Renderer2, document: any);
ngOnInit(): void;
ngOnChanges(changes: any): void;
ngOnDestroy(): void;
onDocumentClick(target: HTMLElement): void;
togglePopover(): void;
onResize(): void;
private onConfirm(event);
private onCancel(event);
private showPopover();
private positionPopover();
private hidePopover();
}