import React from 'react'; import { FlintSnackbar as FlintSnackbarElement } from '@getufy/flint-ui/snackbar/flint-snackbar'; export interface FlintSnackbarOpenDetail { open: true; } export interface FlintSnackbarCloseDetail { open: false; } /** * Snackbars (also known as toasts) are used for brief notifications. They appear temporarily and float above the UI. * * @slot action - The action to display inside the snackbar. * @slot (default) - Optional content to display inside the snackbar, such as a message or a flint-alert. */ export interface FlintSnackbarProps extends React.HTMLAttributes { /** Whether the snackbar is open. */ open?: boolean; /** Initial open state for uncontrolled usage. */ defaultOpen?: boolean; /** The message to display (slot fallback). */ message?: string; /** Duration in milliseconds before the snackbar auto-closes. */ autoHideDuration?: number; /** * Position of the snackbar. * Allowed values: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' */ anchorOrigin?: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right'; /** Pause the auto-hide timer while the user hovers over the snackbar. */ pauseOnHover?: boolean; /** Show a dismiss (✕) button. */ closable?: boolean; /** Alias for `closable`. Whether the snackbar can be dismissed. */ dismissible?: boolean; /** * Visual style variant. * Allowed values: 'default' | 'info' | 'success' | 'warning' | 'error' */ variant?: 'default' | 'info' | 'success' | 'warning' | 'error'; /** * Fired when the snackbar opens (bubbles, composed). detail: `{ open: true }` * DOM event: `flint-snackbar-open` */ onFlintSnackbarOpen?: (event: CustomEvent) => void; /** * Fired when the snackbar closes (bubbles, composed). detail: `{ open: false }` * DOM event: `flint-snackbar-close` */ onFlintSnackbarClose?: (event: CustomEvent) => void; } export declare const FlintSnackbar: React.ForwardRefExoticComponent>;