/// 聊天分类 Domain 实体
class ChatCategory {
  final int id;
  final String? name;
  final String? includedChatIds;
  final String? excludedChatIds;
  final int? seq;
  final int isHide;
  final int createdAt;
  final int updatedAt;
  final int deletedAt;

  const ChatCategory({
    required this.id,
    this.name,
    this.includedChatIds,
    this.excludedChatIds,
    this.seq,
    this.isHide = 0,
    this.createdAt = 0,
    this.updatedAt = 0,
    this.deletedAt = 0,
  });

  ChatCategory copyWith({
    int? id,
    String? name,
    String? includedChatIds,
    String? excludedChatIds,
    int? seq,
    int? isHide,
    int? createdAt,
    int? updatedAt,
    int? deletedAt,
  }) {
    return ChatCategory(
      id: id ?? this.id,
      name: name ?? this.name,
      includedChatIds: includedChatIds ?? this.includedChatIds,
      excludedChatIds: excludedChatIds ?? this.excludedChatIds,
      seq: seq ?? this.seq,
      isHide: isHide ?? this.isHide,
      createdAt: createdAt ?? this.createdAt,
      updatedAt: updatedAt ?? this.updatedAt,
      deletedAt: deletedAt ?? this.deletedAt,
    );
  }
}