import 'package:dartz/dartz.dart';
import '../entities/dashboard_entity.dart';
import '../../../../core/error/failures.dart';

abstract class DashboardRepository {
  Future<Either<Failure, DashboardEntity>> getDashboardData(
    String organizationId,
    String userId,
  );

  Future<Either<Failure, DashboardStatsEntity>> getDashboardStats(
    String organizationId,
    String userId,
  );

  Future<Either<Failure, List<RecentActivityEntity>>> getRecentActivities(
    String organizationId,
    String userId, {
    int limit = 10,
  });

  Future<Either<Failure, List<UpcomingEventEntity>>> getUpcomingEvents(
    String organizationId,
    String userId, {
    int limit = 5,
  });
}
