import { type ReferralAction, type ReferralEngagementAction } from "../event.enums"; import { type UserReward } from "./engage.lotteryDraw.reward"; export interface ReferralInvite { user_id: string; avatar_url?: string; role_id?: string; role_name?: string; server_id?: string; server_name?: string; } export declare const ReferralInviteValidator: import("@seayoo-web/validator").ObjectValidator; export interface ReferralEngagementData { /** 邀请码 */ referral_code?: string; /** 邀请人用户ID */ inviter_user_id?: string; /** 已邀请人数(真实邀请人数 action=query OR referral_code 时返回) */ invitee_count?: number; /** 被邀请人列表,受 max_recent_invitees 配置限制返回条数 */ invitees?: ReferralInvite[]; /** 已达成的奖励人数阶梯 */ generated_tiers?: number[]; /** 参与记录类型 */ type?: ReferralEngagementAction; /** 邀请人角色信息 (action=query_inviter 时返回) */ inviter?: ReferralInvite; } export declare const ReferralEngagementDataValidator: import("@seayoo-web/validator").ObjectValidator; export type ReferralEngagementParam = { /** 操作类型 */ action: typeof ReferralAction.ReferralCode; } | { /** 操作类型 */ action: typeof ReferralAction.Join; /** 邀请码 */ referral_code: string; } | { /** 操作类型 */ action: typeof ReferralAction.Query; } | { /** 操作类型 */ action: typeof ReferralAction.QueryInviter; /** 邀请码 */ referral_code: string; }; export type ReferralEngagementError = "referral_code_required" | "referral_code_invalid" | "referral_code_not_found" | "cannot_invite_self" | "user_already_invited"; export interface GenerateReferralRewardsResponse { /** 已邀请人数 */ invitee_count?: number; /** 本次获得的奖励 */ generated_rewards?: UserReward[]; /** 阶梯邀请奖励状态 */ tier_statuses?: TierStatus[]; } export interface TierStatus { /** 邀请邀请人数 */ required_invitees: number; /** 是否已获得奖励 */ reward_generated: boolean; } export declare const TierStatusValidator: import("@seayoo-web/validator").ObjectValidator; export declare const GenerateReferralRewardsResponseValidator: import("@seayoo-web/validator").ObjectValidator; export interface InvitedRegisterResponse { invitees: Array; } export interface InvitedRegisterInfo { /** 通行证 ID */ user_id: string; /** 俱乐部用户昵称*/ nickname: string; /** 俱乐部用户头像 URL */ avatar_url?: string; /** 该受邀人是否满足玩法条件:已在游戏内注册,且 Combo ID 注册时间落在玩法配置的时间区间 */ qualified: boolean; } export declare const InvitedRegisterResponseValidator: import("@seayoo-web/validator").ObjectValidator;