import 'package:dartz/dartz.dart'; import '../../core/error/failures.dart'; import '../entities/contribution.dart'; import '../entities/contribution_record.dart'; import '../entities/contribution_stats.dart'; abstract class ContributionRepository { Future> getUserContribution(String accountSequence); Future> getContributionRecords( String accountSequence, { ContributionSourceType? sourceType, bool includeExpired = false, int page = 1, int pageSize = 50, }); Future> getContributionStats(); }