23 lines
623 B
PHP
23 lines
623 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Contracts\Directories;
|
|
|
|
use App\Contracts\Directory;
|
|
use App\Models\Employee;
|
|
use Carbon\CarbonInterface;
|
|
|
|
/** @extends Directory<int, \App\Models\Employee> */
|
|
interface EmployeeDirectory extends Directory
|
|
{
|
|
public function find(int $id): ?Employee;
|
|
|
|
public function countActiveEmployees(): int;
|
|
|
|
public function countActiveRegisteredEmployees(): int;
|
|
|
|
public function countActiveEmployeesWithin(CarbonInterface $start, CarbonInterface $end): int;
|
|
|
|
public function countActiveRegisteredEmployeesWithin(CarbonInterface $start, CarbonInterface $end): int;
|
|
}
|