import { default as React } from 'react';
import { SnackbarProps as MuiSnackbarProps } from '@mui/material';
type AlertType = "success" | "info" | "warning" | "error";
export interface SnackbarProps extends MuiSnackbarProps {
    /** 스낵바 Open 상태값 */
    open: boolean;
    /** 스낵바 Close 이벤트 핸들러 */
    onClose?: () => void;
    /** 메시지 내용 */
    message?: string;
    /** 자동 닫힘 시간 (ms) */
    autoHideDuration?: number;
    /** 스낵바 위치 */
    anchorOrigin?: {
        vertical: "top" | "bottom";
        horizontal: "left" | "center" | "right";
    };
    /** 알림 타입 */
    severity?: AlertType;
    /** 알림 표시 시 추가 액션 */
    action?: React.ReactNode;
    /** 알림 타입(severity)이 있을 경우 적용되는 표시 형태
     *
     * 기본값은 standard
     */
    variant?: "filled" | "outlined" | "standard";
}
/**
 * 임시 알림을 표시하는 스낵바 컴포넌트
 *
 * SnakBar 컴포넌트는 MUI에서 제공하는 스낵바 컴포넌트를 사용하여 구현되었습니다.
 *
 * MUI의 스낵바 컴포넌트는 다양한 속성을 지원하며, 이를 활용하여 다양한 형태의 스낵바를 구현할 수 있습니다.
 *
 * 대체적으로 직접 화면에서 호출하는 것이 아닌 Provider 형태로 사용되는 경우가 많습니다.
 *
 * 기본적인 duration은 1초이며, autoHideDuration 속성을 통해 변경할 수 있습니다.
 * 기본적으로 클릭 가능한 버튼을 제공하며, 클릭 가능한 버튼을 제공하지 않으면 자동 닫힘 시간이 적용됩니다.
 * 클릭 가능한 버튼을 제공하면 자동 닫힘 시간이 적용되지 않습니다.
 *
 * Notification과 사용 용도가 다릅니다.
 * -----------------------------
 *
 * Snackbar은 화면에 표시되는 간단한 알림을 의미하며,
 * Notification은 화면 상단 또는 하단에 표시되는 알림을 의미합니다.
 *
 * 예를들면 저장 후 알림, 삭제 후 알림, 로그인 후 알림 등 화면에 표시되는 알림을 표현할 때는 Snackbar을 사용하고,
 *
 * 화면 상단 또는 하단에 표시되는 알림을 표현할 때는 Notification을 사용합니다.
 *
 */
export declare const Snackbar: {
    ({ open, onClose, autoHideDuration, anchorOrigin, sx, message, severity, variant, ...props }: SnackbarProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export {};
