interface InviteActivityFormProps {
  id?: number;
  activityName: string;
  activityType: number;
  activityDesc?: string;
  startTime: string;
  endTime: string;
  status: number;
  // 邀请规则
  maxInviteCount?: number; // 每人最大邀请次数
  rewardRuleType: number; // 奖励规则类型：1-固定奖励 2-阶梯奖励
  inviterRewardAmount?: number; // 邀请人奖励金额
  inviteeRewardAmount?: number; // 被邀请人奖励金额
  inviteeFirstChargeMinAmount?: number; // 被邀请人首充最低金额（元）
  // 双向优惠券配置
  inviterCouponTemplateId?: number | null; // 邀请人优惠券模板ID
  inviteeCouponTemplateId?: number | null; // 被邀请人优惠券模板ID（可选）
  // 统计数据
  totalInviteCount?: number; // 总邀请数
  validInviteCount?: number; // 有效邀请数
  rewardIssuedCount?: number; // 奖励发放数
}

interface InviteActivitySearchFormProps {
  name?: string;
  status?: number | undefined;
  startTime?: string;
  endTime?: string;
}

interface InviteActivityDetail extends InviteActivityFormProps {
  id: number;
  creatorId: number;
  creatorName: string;
  createTime: string;
  updateTime: string;
  totalBudget?: number;
  usedBudget?: number;
}

// 邀请记录相关类型
interface InviteRecordItem {
  id: number;
  activityId: number;
  activityName: string;
  inviterId: number;
  inviterPhone: string;
  inviteeId: number;
  inviteePhone: string;
  inviteCode: string;
  inviteTime: string;
  activateTime: string;
  status: number; // 0-待激活 1-已激活 2-奖励已发放 3-发放失败
  rewardType?: number | null; // 奖励类型：0-邀请人推荐奖 1-被邀请人新人券
  triggerType?: number | null; // 触发条件：0-首单完成 1-注册绑定
  rewardAmount?: number;
  createTime: string;
}

interface InviteRecordsSearchParams {
  activityId?: number | undefined;
  inviterId?: string;
  status?: number | undefined;
  rewardType?: number | undefined; // 奖励类型筛选
  startTime?: string;
  endTime?: string;
  page?: number;
  pageSize?: number;
}

// 统计数据类型
interface InviteStatisticsData {
  totalInvites: number; // 总邀请次数
  validInvites: number; // 有效邀请数
  totalRewardsIssued: number; // 奖励发放总数
  todayNewInvites: number; // 今日新增邀请数
  conversionRate: number; // 转化率
  rewardSuccessRate: number; // 奖励发放成功率

  // 新增：双向奖励统计 - 被邀请人优惠券
  inviteeCoupon?: {
    totalDistributed: number; // 发放总数
    totalUsed: number; // 使用总数
    usageRate: number; // 核销率 (%)
  };

  // 新增：双向奖励统计 - 邀请人优惠券
  inviterCoupon?: {
    totalDistributed: number; // 发放总数
    totalUsed: number; // 使用总数
    usageRate: number; // 核销率 (%)
  };

  // 新增：成本分析
  costAnalysis?: {
    totalDiscountAmount: number; // 总优惠金额（元）
    gmv: number; // GMV（元）
    roi: number; // ROI
    avgAcquisitionCost: number; // 平均获客成本（元）
  };

  // 趋势数据
  trendData?: Array<{
    date: string;
    invites: number;
    activations: number;
    rewards: number;
  }>;
  // 排行榜数据
  rankingList?: Array<{
    rank: number;
    userId: number;
    userPhone: string;
    inviteCount: number;
  }>;
}

export type {
  InviteActivityFormProps,
  InviteActivitySearchFormProps,
  InviteActivityDetail,
  InviteRecordItem,
  InviteRecordsSearchParams,
  InviteStatisticsData
};
