/** * Copyright Aquera Inc 2023 * * This source code is licensed under the BSD-3-Clause license found in the * LICENSE file in the root directory of this source tree. */ import { TemplateResult } from 'lit'; import '../nile-icon-button/nile-icon-button'; import NileElement from '../internal/nile-element'; import type { CSSResultGroup } from 'lit'; /** * Nile icon component. * * @tag nile-toast * * @dependency nile-icon-button * * @slot - The alert's main content. * @slot icon - An icon to show in the alert. Works best with ``. * * @event nile-show - Emitted when the alert opens. * @event nile-after-show - Emitted after the alert opens and all animations are complete. * @event nile-hide - Emitted when the alert closes. * @event nile-after-hide - Emitted after the alert closes and all animations are complete. * * @csspart base - The component's base wrapper. * @csspart icon - The container that wraps the optional icon. * @csspart message - The container that wraps the alert's main content. * @csspart close-button - The close button, an ``. * @csspart close-button__base - The close button's exported `base` part. * * @animation alert.show - The animation to use when showing the alert. * @animation alert.hide - The animation to use when hiding the alert. */ export declare class NileToast extends NileElement { static styles: CSSResultGroup; private autoHideTimeout; private readonly hasSlotController; base: HTMLElement; /** * Indicates whether or not the alert is open. You can toggle this attribute to show and hide the alert, or you can * use the `show()` and `hide()` methods and this attribute will reflect the alert's open state. */ open: boolean; noIcon: boolean; /** Enables a close button that allows the user to dismiss the alert. */ closable: boolean; hasSlottedContent: boolean; hasSlottedIcon: boolean; prefixImageUrl: string; closeIconName: string; /** The alert's theme variant. */ variant: 'success' | 'info' | 'warning' | 'error' | 'gray' | 'black'; /** * The length of time, in milliseconds, the alert will show before closing itself. If the user interacts with * the alert before it closes (e.g. moves the mouse over it), the timer will restart. Defaults to `Infinity`, meaning * the alert will not close on its own. */ duration: number; title: string; content: string; tags: any[]; firstUpdated(): void; private restartAutoHide; private handleCloseClick; private handleMouseMove; handleOpenChange(): Promise; handleDurationChange(): void; /** Shows the alert. */ show(): Promise; /** Hides the alert */ hide(): Promise; getIconNameByVariant(): "var(--nile-icon-radiodone, var(--ng-icon-check-circle))" | "var(--nile-icon-info, var(--ng-icon-info-circle))" | "var(--nile-icon-warning, var(--ng-icon-alert-circle))"; getIconColorByVariant(): "var(--nile-toast-color-icon-color-success, var(--ng-colors-fg-success-primary))" | "var(--nile-toast-color-icon-color-info, var(--ng-colors-fg-brand-primary-600))" | "var(--nile-toast-color-icon-color-warning, var(--ng-colors-fg-warning-primary))" | "var(--nile-toast-color-icon-color-error, var(--ng-colors-fg-error-primary))" | "var(--nile-toast-color-icon-color-gray, var(--ng-colors-fg-tertiary-600))" | "var(--nile-toast-color-icon-color-black)"; handleSlotChange(e: any): void; /** * Displays the alert as a toast notification. This will move the alert out of its position in the DOM and, when * dismissed, it will be removed from the DOM completely. By storing a reference to the alert, you can reuse it by * calling this method again. The returned promise will resolve after the alert is hidden. */ toast(): Promise; private toastTags; render(): TemplateResult<1>; } export default NileToast; declare global { interface HTMLElementTagNameMap { 'nile-toast': NileToast; } }