/**
 * @description: Login interface parameters
 */
export interface LoginParams {
  username: string;
  password: string;
  loginType: string;
  captchaKey?: string;
  captchaCode?: string;
  redirect?: string | string[];
  grant_type?: string;
  client_id?: string;
  client_secret?: string;
  captchaVerification?: string;
}

export interface RoleInfo {
  roleName: string;
  value: string;
}

/**
 * @description: Login interface return value
 */
export interface LoginResultModel {
  userId: string | number;
  token: string;
  role: RoleInfo;
  access_token: string;
  refresh_token: string;
  openid: string;
  client_id: string;
  expires_in: number;
  refresh_expires_in: number;
}

/**
 * @description: Get user information return value
 */
export interface GetUserInfoModel {
  roles: RoleInfo[];
  // 用户id
  userId: string | number;
  // 用户名
  username: string;
  // 真实名字
  nickname?: string;
  // 头像
  avatar?: string;
  // 介绍
  desc?: string;
}
