/**
 * @element pds-toaster
 * @fires pds:toast - Global event for creating toasts
 *
 * @slot - Toast messages are dynamically added to the shadow DOM
 *
 * @cssprop --z-notification - Z-index for toast positioning (default: 9999)
 * @cssprop --transition-normal - Animation duration for toasts
 *
 * @example
 * <pds-toaster></pds-toaster>
 *
 * // Show toast via API
 * toaster.toast('Hello!', { type: 'success' });
 *
 * // Show toast via event
 * PDS.dispatchEvent(new CustomEvent('pds:toast', {
 *   detail: { message: 'Hello!', type: 'success' }
 * }));
 */
export class AppToaster extends HTMLElement {
    toasts: any[];
    /**
     * Prepare styles and begin listening for global `pds:toast` events.
     * @returns {Promise<void>}
     */
    connectedCallback(): Promise<void>;
    _handleToastEvent: (e: any) => void;
    /**
     * Remove toast event listeners when disconnected.
     */
    disconnectedCallback(): void;
    /**
     * Display a toast notification
     * @method toast
     * @public
     * @param {string} message - The message to display
     * @param {Object} [options] - Toast configuration
     * @param {"information"|"success"|"warning"|"error"} [options.type="information"] - Toast type
     * @param {number} [options.duration] - Duration in ms (auto-calculated if not provided)
     * @param {boolean} [options.closable=true] - Whether toast can be closed manually
     * @param {boolean} [options.persistent=false] - If true, toast doesn't auto-dismiss
     * @returns {string} Toast ID
     */
    public toast(message: string, options?: {
        type?: "information" | "success" | "warning" | "error";
        duration?: number;
        closable?: boolean;
        persistent?: boolean;
    }): string;
    /**
     * Build a DOM node representing a single toast notification.
     * @param {string} id
     * @param {string} message
     * @param {"information"|"success"|"warning"|"error"} type
     * @param {boolean} closable
     * @param {number} duration
     * @param {boolean} persistent
     * @returns {HTMLElement}
     */
    createToastElement(id: string, message: string, type: "information" | "success" | "warning" | "error", closable: boolean, duration: number, persistent: boolean, html?: boolean, action?: any): HTMLElement;
    /**
     * Dismiss a toast by ID
     * @method dismissToast
     * @public
     * @param {string} toastId - The ID of the toast to dismiss
     */
    public dismissToast(toastId: string): void;
    /**
     * Close all active toasts.
     */
    dismissAll(): void;
    /**
     * Display a success toast
     * @method toastSuccess
     * @public
     * @param {string} message - The message to display
     * @param {Object} [options] - Toast configuration options
     * @returns {string} Toast ID
     */
    public toastSuccess(message: string, options?: any): string;
    /**
     * Display a warning toast
     * @method toastWarning
     * @public
     * @param {string} message - The message to display
     * @param {Object} [options] - Toast configuration options
     * @returns {string} Toast ID
     */
    public toastWarning(message: string, options?: any): string;
    /**
     * Display an error toast
     * @method toastError
     * @public
     * @param {string} message - The message to display
     * @param {Object} [options] - Toast configuration options
     * @returns {string} Toast ID
     */
    public toastError(message: string, options?: any): string;
    /**
     * Display an information toast
     * @method toastInfo
     * @public
     * @param {string} message - The message to display
     * @param {Object} [options] - Toast configuration options
     * @returns {string} Toast ID
     */
    public toastInfo(message: string, options?: any): string;
    #private;
}
//# sourceMappingURL=pds-toaster.d.ts.map