import { CSSResultArray, PropertyValues, TemplateResult } from 'lit'; import { LuzmoElement } from '../../utils/base'; import '../button/close-button'; export declare const toastVariants: ToastVariants[]; export type ToastVariants = 'negative' | 'positive' | 'info' | ''; declare const LuzmoToast_base: typeof LuzmoElement; /** * @element luzmo-toast * * @slot - The toast content * @slot action - button element surfacing an action in the Toast * * @fires close - Announces that the Toast has been closed by the user or by its timeout. */ export declare class LuzmoToast extends LuzmoToast_base { static get styles(): CSSResultArray; /** * The `open` property indicates whether the toast is visible or hidden. * * @param {Boolean} open */ open: boolean; /** * When a timeout is provided, it represents the number of milliseconds from when * the Toast was placed on the page before it will automatically dismiss itself. * * Accessibility concerns require that a Toast is available for at least 6000ms * before being dismissed, so any timeout of less than 6000ms will be raised to * that baseline. * * It is suggested that messages longer than 120 words should receive an additional * 1000ms in their timeout for each additional 120 words in the message. * * For example, a message with 240 words should have a timeout of 7000ms, * and a message with 360 words should have a timeout of 8000ms. * * @param timeout * @default null */ set timeout(timeout: number | null); get timeout(): number | null; private _timeout; /** * The variant applies specific styling when set to `negative`, `positive`, `info`, `error`, or `warning`. * * The variants `error` and `warning` are deprecated and should be replaced with `negative`. * * `variant` attribute is removed when not matching one of the above. * * @param variant */ set variant(variant: ToastVariants); get variant(): ToastVariants; private _variant; /** * The `iconLabel` property is used to set the `label` attribute on the icon element. This is used to provide a text alternative for the icon to ensure accessibility. * * If the `iconLabel` property is not set, the icon will use the `variant` to dynamically set the `label`. * * @param {String} iconLabel */ iconLabel?: string; private renderIcon; private countdownStart; private nextCount; private doCountdown; private countdown; private holdCountdown; private resumeCountdown; private startCountdown; private stopCountdown; private shouldClose; close(): void; protected render(): TemplateResult; protected updated(changes: PropertyValues): void; } export {};