/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { BaseComponent, IBaseComponent } from '../core/base/base-component';
import { ToastBuilder, ToastPlacement } from './toast-constants';
export interface IToastComponent extends IBaseComponent {
    message: string;
    actionText: string;
    duration: number;
    placement: ToastPlacement;
    showClose: boolean;
    builder: ToastBuilder | string;
    hide(): void;
}
declare global {
    interface HTMLElementTagNameMap {
        'forge-toast': IToastComponent;
    }
    interface HTMLElementEventMap {
        'forge-toast-action': CustomEvent<void>;
        'forge-toast-close': CustomEvent<void>;
    }
}
/**
 * The custom element class behind the `<forge-toast>` web component.
 *
 * @tag forge-toast
 */
export declare class ToastComponent extends BaseComponent implements IToastComponent {
    static get observedAttributes(): string[];
    private _foundation;
    constructor();
    initializedCallback(): void;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    /** The message to display in the toast. */
    message: string;
    /** The text to display in the action button. */
    actionText: string;
    /** The time in milliseconds to show the toast. */
    duration: number;
    /** The placement of the toast. */
    placement: ToastPlacement;
    /** Sets the toast builder function for displaying custom content. */
    builder: ToastBuilder | string;
    /** Controls the visibility of the close button. */
    showClose: boolean;
    /** Hides the toast and removes it from the DOM. */
    hide(): void;
}
