import Slide from "@mui/material/Slide";
import { SnackbarClassKey } from "@mui/material/Snackbar";
import { SnackbarItemProps } from "./SnackbarItem";
import { Snack } from "./SnackbarProvider";
import { CloseReason, ContainerClassKey, SnackbarOrigin, SnackbarProviderProps, VariantClassKey, VariantType } from "./types";
export declare const allClasses: {
    mui: Record<SnackbarClassKey, object>;
    container: Record<ContainerClassKey, object>;
};
export declare const SNACKBAR_INDENTS: {
    view: {
        default: number;
        dense: number;
    };
    snackbar: {
        default: number;
        dense: number;
    };
};
export declare const DEFAULTS: {
    maxSnack: number;
    dense: boolean;
    hideIconVariant: boolean;
    variant: VariantType;
    autoHideDuration: number;
    anchorOrigin: SnackbarOrigin;
    TransitionComponent: typeof Slide;
    transitionDuration: {
        enter: number;
        exit: number;
    };
};
export declare const capitalise: (text: string) => string;
export declare const originKeyExtractor: (anchor: Snack["anchorOrigin"]) => string;
/**
 * Omit SnackbarContainer class keys that are not needed for SnackbarItem
 */
export declare const omitContainerKeys: (classes: SnackbarProviderProps["classes"]) => SnackbarItemProps["classes"];
export declare const REASONS: {
    [key: string]: CloseReason;
};
/** Tranforms classes name */
export declare const transformer: {
    toContainerAnchorOrigin: (origin: string) => ContainerClassKey;
    toAnchorOrigin: ({ vertical, horizontal }: SnackbarOrigin) => SnackbarClassKey;
    toVariant: (variant: VariantType) => VariantClassKey;
};
export declare const isDefined: (value: string | null | undefined | number) => boolean;
export declare function objectMerge(options?: {}, props?: {}, defaults?: {}): {};
