. */ declare(strict_types=1); namespace FireflyIII\Helpers\Report; use Carbon\Carbon; use FireflyIII\Helpers\Collection\Bill as BillCollection; use Illuminate\Support\Collection; /** * Interface ReportHelperInterface. */ interface ReportHelperInterface { /** * This method generates a full report for the given period on all * the users bills and their payments. * * Excludes bills which have not had a payment on the mentioned accounts. * * @param Carbon $start * @param Carbon $end * @param Collection $accounts * * @return BillCollection */ public function getBillReport(Carbon $start, Carbon $end, Collection $accounts): BillCollection; /** * Generate a list of months. * * @param Carbon $date * * @return array */ public function listOfMonths(Carbon $date): array; }