import { type VariantProps } from 'class-variance-authority';
import * as React from 'react';
import type { AvatarProps } from '@/components/molecules/data/Avatar';
declare const notificationItemVariants: (props?: ({
    variant?: "none" | "gray" | "progress" | "image" | "primary" | "success" | "warning" | "error" | "avatar" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export type NotificationVariant = NonNullable<VariantProps<typeof notificationItemVariants>['variant']>;
export interface NotificationAction {
    /** Button label */
    label: string;
    /** Click handler */
    onClick?: () => void;
}
export interface NotificationItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'> {
    /** Visual style variant */
    variant?: NotificationVariant;
    /** Notification title */
    title: string;
    /** Supporting description text */
    supportingText?: string;
    /** Show the close button */
    showCloseButton?: boolean;
    /** Callback when close button is clicked */
    onClose?: () => void;
    /** Primary action (displayed first, brand color) */
    primaryAction?: NotificationAction;
    /** Secondary action (displayed second, neutral color) */
    secondaryAction?: NotificationAction;
    /** Custom icon for gray variant */
    icon?: React.ReactNode;
    /** Avatar props for avatar variant */
    avatarProps?: AvatarProps;
    /** Timestamp for avatar variant */
    timestamp?: string;
    /** Image source for image variant */
    imageSrc?: string;
    /** Image alt text */
    imageAlt?: string;
    /** Progress value (0-100) for progress variant */
    progressValue?: number;
    /** Progress label for progress variant */
    progressLabel?: string;
    /** Stack action buttons vertically instead of horizontally */
    stackedActions?: boolean;
}
declare const NotificationItem: React.MemoExoticComponent<({ variant, title, supportingText, showCloseButton, onClose, primaryAction, secondaryAction, icon, avatarProps, timestamp, imageSrc, imageAlt, progressValue, progressLabel, stackedActions, className, ...props }: NotificationItemProps) => import("react/jsx-runtime").JSX.Element>;
export { NotificationItem, notificationItemVariants };
