1: <?php
2:
3: namespace Charcoal\Cms;
4:
5: use DateTimeInterface;
6:
7: // From 'charcoal-translator'
8: use Charcoal\Translator\Translation;
9:
10: /**
11: *
12: */
13: interface EventInterface
14: {
15: /**
16: * @param mixed $title Event title (localized).
17: * @return self
18: */
19: public function setTitle($title);
20:
21: /**
22: * @return Translation|string|null
23: */
24: public function title();
25:
26: /**
27: * @param mixed $subtitle Event subtitle (localized).
28: * @return self
29: */
30: public function setSubtitle($subtitle);
31:
32: /**
33: * @return Translation|string|null
34: */
35: public function subtitle();
36:
37: /**
38: * @param mixed $content Event content (localized).
39: * @return self
40: */
41: public function setContent($content);
42:
43: /**
44: * @return Translation|string|null
45: */
46: public function content();
47:
48: /**
49: * @param string|DateTimeInterface $startDate Event starting date.
50: * @return self
51: */
52: public function setStartDate($startDate);
53:
54: /**
55: * @return DateTimeInterface|null
56: */
57: public function startDate();
58:
59: /**
60: * @param string|DateTimeInterface $endDate Event end date.
61: * @return self
62: */
63: public function setEndDate($endDate);
64:
65: /**
66: * @return DateTimeInterface|null
67: */
68: public function endDate();
69: }
70: