import Tailwind from '../base/tailwind-base';
declare enum PopconfirmTrigger {
Hover = "hover",
Click = "click"
}
declare enum PopconfirmPosition {
Top = "top",
TopStart = "top-start",
TopEnd = "top-end",
Bottom = "bottom",
BottomStart = "bottom-start",
BottomEnd = "bottom-end",
Left = "left",
LeftStart = "left-start",
LeftEnd = "left-end",
Right = "right",
RightStart = "right-start",
RightEnd = "right-end"
}
/**
* @tag plus-popconfirm
* @summary Popconfirm component that displays a confirmation dialog in a floating panel.
*
* @slot - The target element that triggers the popconfirm
* @slot icon - Custom icon for the popconfirm
* @slot title - The popconfirm title
* @slot header - The entire header section
* @slot footer - The footer section with action buttons
* @slot content - The main content inside the popconfirm
*
* @csspart popconfirm - The popconfirm container element
* @csspart arrow - The popconfirm arrow indicator
* @csspart header - The popconfirm header section
* @csspart title - The popconfirm title
* @csspart content - The main content inside the popconfirm
* @csspart footer - The footer section with action buttons
*
* @event plus-popconfirm-open - Emitted when the popconfirm is opened
* @event plus-popconfirm-close - Emitted when the popconfirm is closed
* @event plus-popconfirm-confirm - Emitted when the confirm button is clicked
* @event plus-popconfirm-cancel - Emitted when the cancel button is clicked
*
* @example
* ```html
*
* Delete
*
Are you sure?
*
This action cannot be undone.
*
* ```
*/
export default class PlusPopconfirm extends Tailwind {
slots: Array;
/**
* The size of the popconfirm.
*
* Available options:
* - `sm` (small)
* - `md` (medium - default)
* - `lg` (large)
*
* @type {'sm' | 'md' | 'lg'}
* @default 'md'
*/
size: 'sm' | 'md' | 'lg';
/**
* The position of the popconfirm relative to the target element.
*
* Available options:
* - `top` (default)
* - `top-start`
* - `top-end`
* - `bottom`
* - `bottom-start`
* - `bottom-end`
* - `left`
* - `left-start`
* - `left-end`
* - `right`
* - `right-start`
* - `right-end`
*
* @type {PopconfirmPosition}
* @default PopconfirmPosition.Top
*/
orientation: PopconfirmPosition;
/**
* Determines how the popconfirm is triggered.
*
* Available options:
* - `click` (default) - Popconfirm toggles on click.
* - `hover` - Popconfirm appears on hover.
*
* @type {'click' | 'hover'}
* @default 'click'
*/
trigger: PopconfirmTrigger;
/**
* The title of the popconfirm.
*
* @type {string}
* @default 'Are you sure?'
*/
title: string;
/**
* The text for the confirm button.
*
* @type {string}
* @default 'Confirm'
*/
confirmText: string;
/**
* The text for the cancel button.
*
* @type {string}
* @default 'Cancel'
*/
cancelText: string;
/**
* The status of the popconfirm, which affects its styling.
*
* Available options:
* - `success` (green)
* - `warning` (yellow)
* - `danger` (red)
* - `info` (blue)
* - `primary` (default theme color)
* - `default` (gray - default)
*
* @type {'success' | 'warning' | 'danger' | 'info' | 'primary' | 'default'}
* @default 'default'
*/
status: 'success' | 'warning' | 'danger' | 'info' | 'primary' | 'default';
/**
* Determines whether a status icon should be displayed in the popconfirm.
*
* @type {boolean}
* @default true
*/
statusIcon: boolean;
/**
* Determines whether the arrow should be displayed.
*
* @type {boolean}
* @default true
*/
showArrow: boolean;
/**
* Controls the visibility of the popconfirm.
*
* @private
* @type {boolean}
* @default false
*/
private isVisible;
private targetElement?;
private arrowElement?;
private cleanup?;
private getPopconfirm;
private updatePosition;
private handleMouseEnter;
private handleMouseLeave;
private handleClick;
private closePopconfirm;
private handleConfirm;
private handleCancel;
private cleanupAutoUpdate;
private _cleanupTarget;
private handleOutsideClick;
private handleSlotChange;
private _setupPopconfirm;
firstUpdated(): void;
disconnectedCallback(): void;
render(): import("lit-html").TemplateResult<1>;
}
export { PlusPopconfirm };
//# sourceMappingURL=popconfirm.d.ts.map