. */ namespace FireflyIII\Repositories\PeriodStatistic; use Carbon\Carbon; use FireflyIII\Models\PeriodStatistic; use Illuminate\Database\Eloquent\Model; use Illuminate\Support\Collection; interface PeriodStatisticRepositoryInterface { public function findPeriodStatistics(Model $model, Carbon $start, Carbon $end, array $types): Collection; public function findPeriodStatistic(Model $model, Carbon $start, Carbon $end, string $type): Collection; public function saveStatistic(Model $model, int $currencyId, Carbon $start, Carbon $end, string $type, int $count, string $amount): PeriodStatistic; public function savePrefixedStatistic(string $prefix, int $currencyId, Carbon $start, Carbon $end, string $type, int $count, string $amount): PeriodStatistic; public function allInRangeForModel(Model $model, Carbon $start, Carbon $end): Collection; public function allInRangeForPrefix(string $prefix, Carbon $start, Carbon $end): Collection; public function deleteStatisticsForModel(Model $model, Carbon $date): void; }