import TerraElement from '../../internal/terra-element.js'; import type { CSSResultGroup } from 'lit'; /** * @summary Banners are used to display important messages on top of the header. * @documentation https://terra-ui.netlify.app/components/banner * @status stable * @since 1.0 * * @slot - The banner's main content. * * @event terra-show - Emitted when the banner opens. * @event terra-after-show - Emitted after the banner opens and all animations are complete. * @event terra-hide - Emitted when the banner closes. * @event terra-after-hide - Emitted after the banner 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 banner's main content. * * @animation banner.show - The animation to use when showing the banner. * @animation banner.hide - The animation to use when hiding the banner. */ export default class TerraBanner extends TerraElement { static styles: CSSResultGroup; private hasSlotController; base: HTMLElement; /** * Indicates whether or not the banner is open. You can toggle this attribute to show and hide the banner, or you can * use the `show()` and `hide()` methods and this attribute will reflect the banner's open state. */ open: boolean; /** Enables a close button that allows the user to dismiss the banner. */ closable: boolean; /** The banner's theme variant. */ variant: 'primary' | 'neutral' | 'danger'; sticky: boolean; firstUpdated(): void; private handleClose; handleOpenChange(): Promise; /** Shows the banner. */ show(): Promise; /** Hides the banner */ hide(): Promise; render(): import("lit-html").TemplateResult<1>; }