import './assets/notification.scss';
import type { VNode, CSSProperties } from 'vue';
import 'ant-design-vue/es/notification/style/css';
declare type VNodeChildAtom = VNode | string | number | boolean | null | undefined | void;
export declare type VueNode = VNodeChildAtom | VNodeChildAtom[] | JSX.Element;
export declare type NotificationPlacement = 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight';
export declare type IconType = 'success' | 'info' | 'error' | 'warning';
export interface ConfigProps {
    top?: string | number;
    bottom?: string | number;
    duration?: number;
    prefixCls?: string;
    placement?: NotificationPlacement;
    getContainer?: () => HTMLElement;
    closeIcon?: VueNode | (() => VueNode);
    rtl?: boolean;
    maxCount?: number;
}
export interface NotificationArgsProps {
    message: VueNode | (() => VueNode);
    description?: VueNode | (() => VueNode);
    btn?: VueNode | (() => VueNode);
    key?: string;
    onClose?: () => void;
    duration?: number | null;
    icon?: VueNode | (() => VueNode);
    placement?: NotificationPlacement;
    style?: CSSProperties;
    prefixCls?: string;
    class?: string;
    readonly type?: IconType;
    onClick?: () => void;
    top?: string;
    bottom?: string;
    getContainer?: () => HTMLElement;
    closeIcon?: VueNode | (() => VueNode);
    appContext?: any;
}
export interface NotificationInstance {
    success(args: NotificationArgsProps): void;
    error(args: NotificationArgsProps): void;
    info(args: NotificationArgsProps): void;
    warning(args: NotificationArgsProps): void;
    open(args: NotificationArgsProps): void;
}
export interface NotificationApi extends NotificationInstance {
    warn(args: NotificationArgsProps): void;
    close(key: string): void;
    config(options: ConfigProps): void;
    destroy(): void;
}
declare const DasNotification: {
    success: (options: NotificationArgsProps) => void;
    error: (options: NotificationArgsProps) => void;
    info: (options: NotificationArgsProps) => void;
    warning: (options: NotificationArgsProps) => void;
    warn: (options: NotificationArgsProps) => void;
    open: (options: NotificationArgsProps) => void;
    primary(options: NotificationArgsProps): void;
    config: (options: ConfigProps) => void;
    destroy: () => void;
    close: (key: string) => void;
};
export default DasNotification;
