class ChatSession {
  final String id;
  final String? tenantId;
  final String status;
  final DateTime startedAt;
  final DateTime? endedAt;
  final int messageCount;

  const ChatSession({
    required this.id,
    this.tenantId,
    required this.status,
    required this.startedAt,
    this.endedAt,
    this.messageCount = 0,
  });

  ChatSession copyWith({
    String? id,
    String? tenantId,
    String? status,
    DateTime? startedAt,
    DateTime? endedAt,
    int? messageCount,
  }) {
    return ChatSession(
      id: id ?? this.id,
      tenantId: tenantId ?? this.tenantId,
      status: status ?? this.status,
      startedAt: startedAt ?? this.startedAt,
      endedAt: endedAt ?? this.endedAt,
      messageCount: messageCount ?? this.messageCount,
    );
  }
}
