Files
My-KOPKB/be/Modules/MembershipApplication/Repositories/Contracts/MembershipApplicationRepositoryInterface.php

24 lines
694 B
PHP

<?php
namespace Modules\MembershipApplication\Repositories\Contracts;
use Illuminate\Contracts\Pagination\LengthAwarePaginator;
use Modules\MembershipApplication\Entities\MembershipApplication;
interface MembershipApplicationRepositoryInterface
{
public function create(array $data): MembershipApplication;
public function findById(string $id): ?MembershipApplication;
public function findByIdWithRelations(string $id): ?MembershipApplication;
public function getAllPaginated(
int $perPage = 10,
string $search = '',
?string $status = null,
string $sortBy = 'submitted_at',
string $sortOrder = 'desc'
): LengthAwarePaginator;
}