24 lines
694 B
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;
|
|
}
|