import * as React from 'react';
export type NotificationLevel = 'info' | 'success' | 'warning' | 'error';
export interface NotificationItem {
    id: string;
    title: string;
    description?: string;
    level?: NotificationLevel;
    timestamp: Date;
    read?: boolean;
    icon?: React.ReactNode;
    action?: {
        label: string;
        onClick: (id: string) => void;
    };
}
export interface NotificationCenterProps extends React.ComponentProps<'div'> {
    notifications: NotificationItem[];
    maxVisible?: number;
    emptyMessage?: string;
    onMarkRead?: (id: string) => void;
    onMarkAllRead?: () => void;
    onDismiss?: (id: string) => void;
    onClearAll?: () => void;
}
declare function NotificationCenter({ className, notifications, maxVisible, emptyMessage, onMarkRead, onMarkAllRead, onDismiss, onClearAll, ...props }: NotificationCenterProps): import("react/jsx-runtime").JSX.Element;
interface NotificationCenterItemProps {
    item: NotificationItem;
    onMarkRead?: ((id: string) => void) | undefined;
    onDismiss?: ((id: string) => void) | undefined;
}
declare function NotificationCenterItem({ item, onMarkRead, onDismiss }: NotificationCenterItemProps): import("react/jsx-runtime").JSX.Element;
export { NotificationCenter, NotificationCenterItem };
//# sourceMappingURL=notification-center.d.ts.map