class PaymentMethodEntity { final bool nequi; final bool datafono; final bool transferencia; static const empty = PaymentMethodEntity( nequi: false, datafono: false, transferencia: false, ); const PaymentMethodEntity({ required this.nequi, required this.datafono, required this.transferencia, }); PaymentMethodEntity copyWith({ bool? datafono, bool? nequi, bool? transferencia, }) { return PaymentMethodEntity( nequi: nequi ?? this.nequi, datafono: datafono ?? this.datafono, transferencia: transferencia ?? this.transferencia, ); } Map toDocument() { return { 'nequi': nequi, 'datafono': datafono, 'transferencia': transferencia, }; } static PaymentMethodEntity fromDocument(Map doc) { return PaymentMethodEntity( nequi: doc['nequi'] as bool, datafono: doc['datafono'] as bool, transferencia: doc['transferencia'] as bool, ); } @override String toString() { return '''PaymentMethodEntity { nequi: $nequi datafono: $datafono transferencia: $transferencia }'''; } }