You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.7KB

  1. <?php
  2. namespace Lc\SovBundle\Model\User;
  3. use Doctrine\Common\Collections\Collection;
  4. use Lc\SovBundle\Model\Ticket\TicketInterface;
  5. interface UserInterface
  6. {
  7. public function getDevAlias(): ?string;
  8. public function setDevAlias(?string $devAlias): UserInterface;
  9. public function getCreatedAt(): ?\DateTimeInterface;
  10. public function setCreatedAt(\DateTimeInterface $createdAt): UserInterface;
  11. public function getUpdatedAt(): ?\DateTimeInterface;
  12. public function setUpdatedAt(\DateTimeInterface $updatedAt): UserInterface;
  13. public function getEmail(): ?string;
  14. public function setEmail(string $email): UserInterface;
  15. /**
  16. * A visual identifier that represents this user.
  17. *
  18. * @see UserInterface
  19. */
  20. public function getUsername(): string;
  21. public function getGender(): ?bool;
  22. public function setGender(?bool $gender): UserInterface;
  23. public function getBirthdate(): ?\DateTimeInterface;
  24. public function setBirthdate(?\DateTimeInterface $birthdate): UserInterface;
  25. /**
  26. * @see UserInterface
  27. */
  28. public function getRoles(): array;
  29. public function setRoles(array $roles): UserInterface;
  30. public function hasRole($role);
  31. /**
  32. * @see UserInterface
  33. */
  34. public function getPassword(): string;
  35. public function setPassword(string $password): UserInterface;
  36. public function generatePassword($length = 8): string;
  37. /**
  38. * @see UserIn
  39. */
  40. public function getSalt();
  41. /**
  42. * @see UserInterface
  43. */
  44. public function eraseCredentials();
  45. public function getLastname(): ?string;
  46. public function setLastname(?string $lastname): UserInterface;
  47. public function getFirstname(): ?string;
  48. public function setFirstname(?string $firstname): UserInterface;
  49. public function getPhone(): ?string;
  50. public function setPhone(?string $phone): UserInterface;
  51. public function isVerified(): bool;
  52. public function setIsVerified(bool $isVerified): UserInterface;
  53. /**
  54. * @return Collection|GroupUserInterface[]
  55. */
  56. public function getGroupUsers(): Collection;
  57. public function addGroupUser(GroupUserInterface $groupUser): UserInterface;
  58. public function removeGroupUser(GroupUserInterface $groupUser): UserInterface;
  59. /**
  60. * @return Collection|TicketInterface[]
  61. */
  62. public function getTickets(): Collection;
  63. public function addTicket(TicketInterface $ticket): UserInterface;
  64. public function removeTicket(TicketInterface $ticket): UserInterface;
  65. public function getTicketTypesNotification(): ?array;
  66. public function setTicketTypesNotification(?array $ticketTypesNotification): UserInterface;
  67. }