import React from "react";
import { SnackbarProps } from "@mui/material";
import TranslateVariablesInterface from "../definitions/TranslateVariablesInterface";
type SnackbarVariant = "success" | "info" | "warning" | "error";
interface SnackbarContextProps {
    show: (message: string, variant: SnackbarVariant, messageVariables?: TranslateVariablesInterface, autoHideDuration?: number) => void;
    showSuccess: (message: string, messageVariables?: TranslateVariablesInterface, autoHideDuration?: number) => void;
    showInfo: (message: string, messageVariables?: TranslateVariablesInterface, autoHideDuration?: number) => void;
    showWarning: (message: string, messageVariables?: TranslateVariablesInterface, autoHideDuration?: number) => void;
    showError: (message: string, messageVariables?: TranslateVariablesInterface, autoHideDuration?: number) => void;
    close: () => void;
    snackbar: React.ReactNode;
    autoHideDuration: number;
}
interface SnackbarProviderProps {
    children: React.ReactNode;
    snackbarProps?: SnackbarProps;
    autoHideDuration?: number;
}
declare const SnackbarContext: React.Context<SnackbarContextProps>;
declare const SnackbarProvider: ({ children, snackbarProps, autoHideDuration }: SnackbarProviderProps) => React.JSX.Element;
declare const useSnackbar: () => SnackbarContextProps;
export { SnackbarContext, SnackbarContextProps, SnackbarProvider, SnackbarProviderProps, useSnackbar, SnackbarVariant };
