import 'package:equatable/equatable.dart';

/// Represents a reason or log for a declined [Invoice].
class InvoiceDecline extends Equatable {

  const InvoiceDecline({
    required this.id,
    required this.invoiceId,
    required this.reason,
    required this.declinedAt,
  });
  /// Unique identifier.
  final String id;

  /// The [Invoice] that was declined.
  final String invoiceId;

  /// Reason provided by the client.
  final String reason;

  /// When the decline happened.
  final DateTime declinedAt;

  @override
  List<Object?> get props => <Object?>[id, invoiceId, reason, declinedAt];
}