/// <reference types="node" />
import { EventEmitter } from '../../stencil-public-runtime';
/**
 * Outputs a toast for informing users of a process (either success or failure)
 * that an app has performed or will perform.
 *
 * This component uses BsTransition (see usage examples).
 */
export declare class BsToast {
  /** Unique toast ID. Used for identifying the toast during action/dismiss
   * event emits.
   */
  /** @ex toast-id */
  toastId: string;
  /** Controls the color/icon of the toast. */
  variant?: 'warning' | 'positive' | 'negative';
  /**
   * Whether or not this toast is stacked with other toasts within a `toaster`
   * component
   */
  stacked: boolean;
  /**
   * Duration of the toast on the screen in milliseconds. Defaults to 10
   * seconds. Provide `0` for this property to never auto-dismiss the toast.
   */
  duration: number;
  /**
   * Whether or not the enter transition should be controlled manually. Useful
   * when the enter transition needs to be triggered manually (e.g. \`v-show\`
   * in Vue).
   */
  enterControlled: boolean;
  /**
   * Only used when \`enterControlled\` is \`true\`. When ready to play the
   * enter transition, set this to \`true\`.
   */
  enterTrigger: boolean;
  /**
   * If desired, leave transition needs to be triggered manually. Set this to
   * \`true\` when ready to fire leave transition.
   */
  leaveTrigger: boolean;
  /**
   * Emits when the toast has been dismissed which may occur when default
   * dismiss button is clicked or `duration` has elapsed. Event will have
   * details in format `<toastId>::dismissed`.
   */
  dismiss: EventEmitter<string>;
  /**
   * Emits when the enter transition has ended. The element should be fully
   * rendered by now and may be manipulated (e.g. setting focus).
   */
  enterend: EventEmitter;
  /**
   * Only emits when \`leaveTrigger\` is toggled and the leave transition has
   * ended. The element can be fully removed from the DOM now.
   */
  leaveend: EventEmitter;
  hostEl: HTMLElement;
  autoDismissTimer: NodeJS.Timeout;
  /** Initially pass down variant to children. */
  componentDidLoad(): void;
  /** Updates variant of children if prop changes */
  onVariantChange(newVal: string): void;
  handleDismiss(): void;
  /** Set auto-dismissal after the toast has fully entered. */
  handleEnterEnd(): void;
  render(): any;
}
