/** * Toast notification store — Svelte 5 runes */ export type ToastVariant = 'default' | 'success' | 'error' | 'warning' | 'info'; export type ToastAppearance = 'default' | 'card'; export type ToastPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right'; export interface ToastAction { id: string; label: string; variant?: 'primary' | 'secondary' | 'ghost' | 'destructive'; /** If true, dismisses the toast after click (default true) */ dismissOnClick?: boolean; onClick?: () => void; } export interface Toast { id: string; message: string; variant: ToastVariant; appearance: ToastAppearance; duration: number; dismissible: boolean; pinned: boolean; title?: string; actions?: ToastAction[]; } export type ToastInput = Partial> & { message: string; }; declare class ToastStore { toasts: Toast[]; private timers; private add; dismiss(id: string): void; clear(): void; show(message: string, options?: Partial>): string; success(message: string, title?: string, options?: Partial>): string; error(message: string, title?: string, options?: Partial>): string; warning(message: string, title?: string, options?: Partial>): string; info(message: string, title?: string, options?: Partial>): string; card(message: string, options?: Partial>): string; pinned(message: string, options?: Partial>): string; } export declare const toastStore: ToastStore; /** Convenience shorthand */ export declare const toast: { show: (msg: string, opts?: Partial>) => string; success: (msg: string, title?: string, opts?: Partial>) => string; error: (msg: string, title?: string, opts?: Partial>) => string; warning: (msg: string, title?: string, opts?: Partial>) => string; info: (msg: string, title?: string, opts?: Partial>) => string; card: (msg: string, opts?: Partial>) => string; pinned: (msg: string, opts?: Partial>) => string; dismiss: (id: string) => void; clear: () => void; }; export {};