import Foundation struct LoginRequest: Codable { let email: String let password: String } struct RegisterRequest: Codable { let email: String let password: String let name: String } struct AuthResponse: Codable { let token: String? let accessToken: String? let refreshToken: String? let user: UserInfo var authToken: String { token ?? accessToken ?? "" } enum CodingKeys: String, CodingKey { case token case accessToken = "access_token" case refreshToken = "refresh_token" case user } } struct RefreshRequest: Codable { let refreshToken: String enum CodingKeys: String, CodingKey { case refreshToken = "refresh_token" } } struct RefreshResponse: Codable { let accessToken: String? let refreshToken: String? let token: String? var authToken: String { accessToken ?? token ?? "" } enum CodingKeys: String, CodingKey { case accessToken = "access_token" case refreshToken = "refresh_token" case token } } struct UserInfo: Codable { let id: Int let email: String let name: String? let username: String? let createdAt: String? var displayName: String { username ?? name ?? email } enum CodingKeys: String, CodingKey { case id, email, name, username case createdAt = "created_at" } }