import 'package:equatable/equatable.dart'; class FinanceSummary extends Equatable { final double totalContributionsPaid; final double totalContributionsPending; final double epargneBalance; const FinanceSummary({ required this.totalContributionsPaid, required this.totalContributionsPending, required this.epargneBalance, }); @override List get props => [totalContributionsPaid, totalContributionsPending, epargneBalance]; } class FinanceTransaction extends Equatable { final String id; final String title; final String date; final double amount; final String status; const FinanceTransaction({ required this.id, required this.title, required this.date, required this.amount, required this.status, // "PayƩ", "En attente" }); @override List get props => [id, title, date, amount, status]; } abstract class FinanceState extends Equatable { const FinanceState(); @override List get props => []; } class FinanceInitial extends FinanceState {} class FinanceLoading extends FinanceState {} class FinanceLoaded extends FinanceState { final FinanceSummary summary; final List transactions; const FinanceLoaded({ required this.summary, required this.transactions, }); @override List get props => [summary, transactions]; } class FinanceError extends FinanceState { final String message; const FinanceError(this.message); @override List get props => [message]; }