interface FormItemProps {
  id?: number;
  activityName: string;
  activityType: number | undefined;
  activityDesc?: string;
  startTime: string;
  endTime: string;
  status: number;
  discountValue: number | null;
  minAmount: number | null;
  maxDiscount: number | null;
  applyScope: number;
  deviceScope: number;
  productScope: number;
  totalBudget: number | null;
  shopIds?: number[];
  deviceIds?: string[];
  productIds?: number[];
  // 邀请有礼活动特有字段 (type=4)
  inviterCouponName?: string;      // 邀请人优惠券名称
  inviteeCouponName?: string;      // 被邀请人优惠券名称
  inviterCouponId?: number;        // 邀请人优惠券ID
  inviteeCouponId?: number;        // 被邀请人优惠券ID
  rewardRuleType?: string;         // 奖励规则类型：fixed 固定奖励
  inviterCouponTemplateId?: number | null;  // 邀请人优惠券模板ID
  inviteeCouponTemplateId?: number | null;  // 被邀请人优惠券模板ID
  dailyLimit?: number | null;              // 每日邀请上限
  totalLimit?: number | null;              // 总邀请上限
  requireFirstOrder?: number;             // 要求首单：1-是 0-否
  minOrderAmount?: number | null;          // 首单最低金额
  inviteCodePrefix?: string;              // 邀请码前缀
}

interface SearchFormProps {
  name?: string;
  type?: number;
  status?: number;
  page?: number;
  pageSize?: number;
}

interface ActivityDetail {
  id: number;
  activityName: string;
  activityType: number;
  activityDesc: string;
  startTime: string;
  endTime: string;
  status: number;
  discountValue: number;
  minAmount: number;
  maxDiscount: number;
  applyScope: number;
  deviceScope: number;
  productScope: number;
  totalBudget: number;
  usedBudget: number;
  creatorId: number;
  creatorName: string;
  createTime: string;
  updateTime: string;
  statusLabel: string;
  statusColor: string;
  typeLabel: string;
  applyScopeLabel: string;
  deviceScopeLabel: string;
  productScopeLabel: string;
  shopIds: number[];
  deviceIds: string[];
  productIds: number[];
  // 邀请有礼活动特有字段
  inviterCouponName?: string;      // 邀请人优惠券名称
  inviteeCouponName?: string;      // 被邀请人优惠券名称
  inviterCouponId?: number;        // 邀请人优惠券ID
  inviteeCouponId?: number;        // 被邀请人优惠券ID
}

export type { FormItemProps, SearchFormProps, ActivityDetail };
