import type {
  ActivityLogStats,
  UserActivityLog,
  VehicleHistoryLog,
  StatusChangeLog,
  SiteChangeLog,
} from "@/domain/entities/activity-log";
import type { BackendPaginatedData, PaginationQueryParams } from "@/shared/types";

export interface ActivityLogRepository {
  getStats(): Promise<ActivityLogStats>;
  getUserActivity(params: PaginationQueryParams): Promise<BackendPaginatedData<UserActivityLog>>;
  getVehicleHistory(params: PaginationQueryParams): Promise<BackendPaginatedData<VehicleHistoryLog>>;
  getStatusChanges(params: PaginationQueryParams): Promise<BackendPaginatedData<StatusChangeLog>>;
  getSiteChanges(params: PaginationQueryParams): Promise<BackendPaginatedData<SiteChangeLog>>;
}
