import type { ExtractPropTypes, PropType, h } from 'vue';
export type NotificationType = 'normal' | 'success' | 'error' | 'warning' | 'info';
export interface Message {
    type?: NotificationType;
    title?: string;
    content?: string | ((message: Message) => ReturnType<typeof h>);
    duration?: number;
}
export declare const notificationProps: {
    modelValue: {
        type: BooleanConstructor;
        default: boolean;
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    type: {
        type: PropType<NotificationType>;
        default: string;
    };
    duration: {
        type: NumberConstructor;
        default: number;
    };
    onClose: {
        type: PropType<() => void>;
    };
};
export type EmitEventFn = (event: 'update:modelValue' | 'destroy', result?: unknown) => void;
export type VoidFn = () => void;
export type NotificationProps = ExtractPropTypes<typeof notificationProps>;
export type NotificationOption = Partial<NotificationProps> & {
    content?: string;
};
