1: <?php declare(strict_types=1);
2:
3: namespace Salient\Contract\Core;
4:
5: use Salient\Contract\Core\MessageLevel as Level;
6:
7: /**
8: * Groups of message levels
9: *
10: * @api
11: */
12: interface MessageLevelGroup
13: {
14: /**
15: * @var list<Level::*>
16: */
17: public const ALL = [
18: Level::EMERGENCY,
19: Level::ALERT,
20: Level::CRITICAL,
21: Level::ERROR,
22: Level::WARNING,
23: Level::NOTICE,
24: Level::INFO,
25: Level::DEBUG,
26: ];
27:
28: /**
29: * @var list<Level::*>
30: */
31: public const ALL_EXCEPT_DEBUG = [
32: Level::EMERGENCY,
33: Level::ALERT,
34: Level::CRITICAL,
35: Level::ERROR,
36: Level::WARNING,
37: Level::NOTICE,
38: Level::INFO,
39: ];
40:
41: /**
42: * @var list<Level::*>
43: */
44: public const ERRORS_AND_WARNINGS = [
45: Level::EMERGENCY,
46: Level::ALERT,
47: Level::CRITICAL,
48: Level::ERROR,
49: Level::WARNING,
50: ];
51:
52: /**
53: * @var list<Level::*>
54: */
55: public const ERRORS = [
56: Level::EMERGENCY,
57: Level::ALERT,
58: Level::CRITICAL,
59: Level::ERROR,
60: ];
61:
62: /**
63: * @var list<Level::*>
64: */
65: public const INFO = [
66: Level::NOTICE,
67: Level::INFO,
68: Level::DEBUG,
69: ];
70:
71: /**
72: * @var list<Level::*>
73: */
74: public const INFO_EXCEPT_DEBUG = [
75: Level::NOTICE,
76: Level::INFO,
77: ];
78:
79: /**
80: * @var list<Level::*>
81: */
82: public const INFO_QUIET = [
83: Level::NOTICE,
84: ];
85: }
86: