import PropTypes from "prop-types";
import React, { MouseEventHandler, ReactNode, SyntheticEvent } from "react";
import { TransitionProps } from "@mui/material/transitions";
interface SnackbarProps {
    label: string | undefined;
    message: string | undefined | ReactNode;
    color?: "info" | "success" | "error" | "warning" | string;
    severity?: "info" | "success" | "error" | "warning" | string;
    onClick?: (() => void) | MouseEventHandler<any> | undefined;
    onClose: ((event: Event | SyntheticEvent<any, Event>) => void) | undefined;
    open: boolean | undefined;
    action: ReactNode;
    autoHideDuration: number;
    transitionDuration?: number | {
        appear?: number;
        enter?: number;
        exit?: number;
    };
    TransitionComponent: React.JSXElementConstructor<TransitionProps & {
        children: React.ReactElement<any, any>;
    }> | undefined;
}
export { SnackbarProps };
declare const GrepsrSnackbar: {
    (props: SnackbarProps): JSX.Element;
    defaultProps: {
        label: string;
        message: string;
        color: string;
        severity: string;
        autoHideDuration: number;
    };
    propTyes: {
        label: PropTypes.Validator<string>;
        message: PropTypes.Validator<string>;
        color: PropTypes.Validator<string>;
        severity: PropTypes.Validator<string>;
        transitionDuration: number;
    };
};
export default GrepsrSnackbar;
