export declare const DEFAULT_SNACKBAR_TIMOUT_MS = 5000; export declare const DEFAULT_SNACKBARS_TO_SHOW_AT_SAME_TIME = 1; export interface Action { readonly key?: string; readonly label: string; readonly onPress?: (action: Action) => void; } export interface SnackbarConfig = Record, T extends keyof TMap = keyof TMap> { readonly id?: string; readonly title: string; readonly timeout?: number; readonly actions?: ReadonlyArray; readonly type?: T; readonly onShow?: () => void; readonly data?: TMap[T]; } export interface SnackbarWithId { readonly snackbarConfig: SnackbarConfig; readonly id: string; } export type AddSnackbarFn = = Record, T extends keyof TMap = keyof TMap>(snackbarConfig: SnackbarConfig) => void; interface SnackbarStore { readonly defaultTimeoutMs: number; readonly setDefaultTimeoutMs: (timeout: number | undefined) => void; readonly snackbarsToShowAtSameTime: number; readonly setSnackbarsToShowAtSameTime: (value: number | undefined) => void; readonly snackbars: readonly SnackbarWithId[]; readonly snackbarsToShow: readonly SnackbarWithId[]; readonly addSnackbar: AddSnackbarFn; readonly removeSnackbar: (id: string) => void; readonly snackbarWasPresented: (id: string) => void; } declare const useSnackbarStore: import("zustand").UseBoundStore>; export default useSnackbarStore;