// User information interface
export interface UserInfo {
  id: number;
  uuid: string;
  username: string;
  nickname: string;
  real_name: string;
  avatar: string;
  email: string;
  phone: string;
  gender: number;
  birthday: string;
  source: string;
  status: number;
}

// Token response interface
export interface TokenResponse {
  access_token: string;
  refresh_token: string;
  token_type: string;
  expires_in: number;
  scope: string;
}

// Login record interface
export interface LoginRecord {
  id: number;
  auth_type: string;
  username: string;
  ip_address: string;
  login_time: string;
  success: boolean;
  fail_reason: string;
}

// Client information interface
export interface ClientInfo {
  client_id: string;
  client_name: string;
  client_type: string;
  redirect_uris: string[];
}

// Login form data interface
export interface LoginFormData {
  username: string;
  password: string;
}

// SMS login form data interface
export interface SmsLoginFormData {
  phone: string;
  code: string;
}