Domain: User, Session, EmailAddress, DTOs, repositories, services (PasswordHasher, TokenGenerator, Clock). Config: PHP-DI container definitions and Slim routes. Entry point: public/index.php with slim-bridge.
14 lines
258 B
PHP
14 lines
258 B
PHP
<?php
|
|
|
|
namespace App\User;
|
|
|
|
use App\Shared\ValueObject\EmailAddress;
|
|
|
|
interface UserRepository
|
|
{
|
|
public function create(CreateUserDto $dto): User;
|
|
|
|
public function findByEmail(EmailAddress $email): ?User;
|
|
|
|
public function find(int $id): ?User;
|
|
}
|