import { RefObject } from 'react';
interface UseSnackbarGlobalStoreArgs<T> {
    providers: Set<T>;
    subscriptions: Set<() => void>;
}
interface UseSnackbarGlobalStoreReturn<T> {
    provider: T;
    addProvider: (ref: T) => void;
    deleteProvider: (ref: T) => void;
}
/**
 * This hook is a basic abstraction of useSyncExternalStore hook which allows us
 * to consume data from an external data store.
 *
 * Cf. https://react.dev/reference/react/useSyncExternalStore#subscribing-to-an-external-store
 */
export declare const useSnackbarGlobalStore: <T = RefObject<HTMLDivElement | null>>({ providers, subscriptions, }: UseSnackbarGlobalStoreArgs<T>) => UseSnackbarGlobalStoreReturn<T>;
export {};
