class AiResponseModel { int? chatId; String? content; String? aiMessageId; String? humanMessageId; String? chatTitle; int? credit; int? freeCredit; bool? error; int? statusCode; String? detail; AiResponseModel( {this.chatId, this.content, this.aiMessageId, this.humanMessageId, this.credit, this.detail, this.error, this.freeCredit, this.statusCode, this.chatTitle}); AiResponseModel.fromJson(Map json) { chatId = json['chat_id'] is String ? int.tryParse(json['chat_id']) : json['chat_id']; chatTitle = json['chat_title']; content = json['content']; aiMessageId = json['ai_message_id']; humanMessageId = json['human_message_id']; credit = json['credit'] is String ? int.tryParse(json['credit']) : json['credit']; error = json['error'] ?? false; detail = json['detail']; statusCode = json['status_code'] ?? 200; freeCredit = json['free'] is String ? int.tryParse(json['free']) : json['free']; } Map toJson() { final Map data = {}; data['chat_id'] = chatId; data['chat_title'] = chatTitle; data['content'] = content; data['ai_message_id'] = aiMessageId; data['human_message_id'] = humanMessageId; data['credit'] = credit; return data; } AiResponseModel copyWith({ int? chatId, String? content, String? aiMessageId, String? humanMessageId, int? credit, int? freeCredit, String? chatTitle, bool? error, int? statusCode, String? detail, }) { return AiResponseModel( chatId: chatId ?? this.chatId, content: content ?? this.content, aiMessageId: aiMessageId ?? this.aiMessageId, humanMessageId: humanMessageId ?? this.humanMessageId, chatTitle: chatTitle ?? this.chatTitle, credit: credit ?? this.credit, error: error ?? this.error, statusCode: statusCode ?? this.statusCode, detail: detail ?? this.detail, freeCredit: freeCredit ?? this.freeCredit, ); } }