/// 令牌校验响应,对应服务端 `GET /api/client/verify`。 /// /// 与 Android 端 `network/model/VerifyResponse` 字段保持一致。 class VerifyResponse { final bool valid; /// USER / DEVICE。 final String? principalType; final String? principalId; final String? displayName; /// 过期时间(秒级时间戳)。 final int expiresAt; /// 剩余有效秒数。 final int remainingSeconds; final String? message; const VerifyResponse({ required this.valid, this.principalType, this.principalId, this.displayName, this.expiresAt = 0, this.remainingSeconds = 0, this.message, }); factory VerifyResponse.fromJson(Map json) => VerifyResponse( valid: json['valid'] == true, principalType: json['principalType'] as String?, principalId: json['principalId'] as String?, displayName: json['displayName'] as String?, expiresAt: (json['expiresAt'] as num?)?.toInt() ?? 0, remainingSeconds: (json['remainingSeconds'] as num?)?.toInt() ?? 0, message: json['message'] as String?, ); }