-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUser.php
More file actions
33 lines (21 loc) · 775 Bytes
/
User.php
File metadata and controls
33 lines (21 loc) · 775 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
namespace Peers\Model\Interfaces;
use JetBrains\PhpStorm\ArrayShape;
use Peers\Model\IO\Review;
interface User
{
public function addReview(Review $review): void;
public function finishRound(int $round): void;
public function getNextRound(): int;
public function updateName(string $firstName, string $lastName): void;
public function updateImage(string $imageUrl): void;
public function getFirstName(): string;
public function getLastName(): string;
public function getImageUrl(): string;
/**
* @return array<Review>
*/
public function getPublishedReviews(): array;
#[ArrayShape(['published' => 'int', 'pending' => 'int'])]
public function getReviewCount(): array;
}