3 namespace Wallabag\CoreBundle\Notifications
;
5 use Psr\Log\LoggerAwareInterface
;
7 interface NotificationInterface
extends LoggerAwareInterface
10 * Title of the notification.
14 public function getTitle();
17 * @param string $title
19 * @return NotificationInterface
21 public function setTitle($title);
24 * Type of the notification.
28 public function getType();
33 * @return NotificationInterface
35 public function setType($type);
38 * If the notification has been viewed / dismissed or not.
42 public function isRead();
45 * @param boolean $read
47 * @return NotificationInterface
49 public function setRead($read);
52 * When the notification was sent.
56 public function getTimestamp();
59 * @param \DateTime $timestamp
61 * @return NotificationInterface
63 public function setTimestamp(\DateTime
$timestamp);
66 * @param ActionInterface $action
68 * @return NotificationInterface
70 public function addAction(ActionInterface
$action);
75 public function getDescription();
78 * @param string $description
80 * @return NotificationInterface
82 public function setDescription($description);
87 public function getParameters();
90 * @param array $parameters
92 * @return NotificationInterface
94 public function setParameters($parameters);
98 * @param string $value
100 * @return NotificationInterface
102 public function addParameter($key, $value);