import { PageQueryParam, PageResult } from '../base';

/**
 * 请求参数ID
 */
export interface IdParam {
  id: number;
}

export interface MemberDetail {
  list: MemberDetailList[],
  member: MemberInfo
}

export interface MemberInfo {
  id: number;
  memberLevel: number;
  status: number;
  username: string;
  realName: string;
  mobilePhone: string;
  idNumber: string;
  email: string;
  registrationTime: string;
  lastLoginTime: string;
}

export interface MemberDetailList {
  id: number;
  isLock: number;
  memberId: number;
  memo: string | null;
  toReleased: string;
  address: string;
  balance: number;
  frozenBalance: number;
  coin: Coin
}

export interface Coin {
  unit: string;
  name: string;
  nameCn: string;
  status: number;
}

export interface LockActivity {
  id: number;
  title: string;
}

/**
 * 锁仓参数
 */
export interface LockActivityParam {
  memberId: number;
  activityId: number;
  unit: string;
  amount: number | string;
}

/**
 * 人工充值参数
 */
export interface ManualPayParam {
  unit: string;
  uid: number;
  amount: number | string;
}



/**
 * 锁定钱包、解锁钱包 参数
 */
export interface WalletAddressParam {
  uid: number;
  unit: string;
}

/**
 * 交易记录 列表查询参数类型
 */
export interface FilterSearchParam extends PageQueryParam {
  memberId?: number,
  type?: string;
  symbol?: string;
  startTime?: string,
  endTime?: string
}

/**
 * 币种
 */
export interface Symbol {
  id: number;
  unit: string;
}

/**
 * 交易记录分页项类型
 */
 export type TradePageResult = PageResult<TradeItem[]>;

/**
 * 交易记录列表分页列表项
 */
export interface TradeItem {
  id: number;
  memberId: number;
  type: string;
  amount: number | null;
  symbol: string | null;
  createTime: string;
}
