import type { Media } from '../../types/props.js'; /** * 活动日程项数据接口 */ export interface ActivityScheduleItem { /** 活动标题 */ title: string; /** 活动副标题 */ subtitle: string; /** 活动详细描述(可选,用于完整版) */ description?: string; /** 跳转链接 */ link?: string; /** 激活状态装饰图标 */ activeIcon?: Media; /** 非激活状态装饰图标 */ inactiveIcon?: Media; /** 是否为激活状态(激活状态显示渐变背景) */ isActive?: boolean; } /** * 活动日程组件数据接口 */ export interface ActivityScheduleData { /** 活动列表 */ scheduleList: ActivityScheduleItem[]; /** 主题模式,默认为 light */ theme?: 'light' | 'dark'; /** 卡片尺寸,默认为 small */ size?: 'small' | 'large'; } /** * 语义化类名 */ export type ActivityScheduleSemanticName = 'root' | 'card'; /** * 活动日程组件 Props */ export interface ActivityScheduleProps extends React.HTMLAttributes { /** 业务数据 */ data: ActivityScheduleData; /** 语义化类名 */ classNames?: Partial>; }