1: | <?php declare(strict_types=1); |
2: | |
3: | namespace Salient\Contract\Sync; |
4: | |
5: | /** |
6: | * @api |
7: | */ |
8: | interface LinkType |
9: | { |
10: | /** |
11: | * "@type" and "@id" |
12: | * |
13: | * ```php |
14: | * <?php |
15: | * [ |
16: | * '@type' => 'prefix:Foo', |
17: | * '@id' => 42, |
18: | * ] |
19: | * ``` |
20: | */ |
21: | public const DEFAULT = 0; |
22: | |
23: | /** |
24: | * "@id" only (identifier type not preserved) |
25: | * |
26: | * ```php |
27: | * <?php |
28: | * [ |
29: | * '@id' => 'prefix:Foo/42', |
30: | * ] |
31: | * ``` |
32: | */ |
33: | public const COMPACT = 1; |
34: | |
35: | /** |
36: | * "@type", "@id", "@name" and "@description" (empty values removed) |
37: | * |
38: | * ```php |
39: | * <?php |
40: | * [ |
41: | * '@type' => 'prefix:Foo', |
42: | * '@id' => 42, |
43: | * '@name' => 'Foo', |
44: | * ] |
45: | * ``` |
46: | */ |
47: | public const FRIENDLY = 2; |
48: | } |
49: |