import { type IMessage, type IMessageDefinition } from "../typings.js";
/**
 * @internal
 */
export type IToastsCenterContext = {
    /**
     * All messages that are currently displayed in the toasts center.
     */
    messages: IMessage[];
    /**
     * Removes a message from the toasts center.
     */
    removeMessage: (id: string, preventDismissHandler?: boolean) => void;
    /**
     * Removes all messages from the toasts center.
     */
    removeAllMessages: (preventDismissHandler?: boolean) => void;
    /**
     * Creates a new message from a definition and adds it to the toasts center.
     */
    addMessage: (message: IMessageDefinition) => IMessage;
    /**
     * Adds an existing message to the toasts center.
     */
    addExistingMessage: (message: IMessage) => void;
    /**
     * Adds an array of existing messages to the toasts center.
     */
    addExistingMessages: (messages: IMessage[]) => void;
    /**
     * The latest message that was added to the toasts center.
     */
    latestMessage: IMessage | null;
    /**
     * Whether there is a parent context or not.
     */
    hasParentContext: boolean;
};
/**
 * @internal
 */
export declare const ToastsCenterContext: import("@gooddata/sdk-ui").IContextStore<IToastsCenterContext>;
/**
 * @internal
 */
export declare const useToastsCenterValue: (onDismissMessage?: ((id: string) => void) | undefined) => IToastsCenterContext;
//# sourceMappingURL=context.d.ts.map