-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathResponseDefinitions.php
More file actions
79 lines (75 loc) · 2.18 KB
/
ResponseDefinitions.php
File metadata and controls
79 lines (75 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
/**
* SPDX-FileCopyrightText: 2026 LibreCode coop and contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
declare(strict_types=1);
namespace OCA\ProfileFields;
/**
* @psalm-type ProfileFieldsType = 'text'|'number'
* @psalm-type ProfileFieldsVisibility = 'private'|'users'|'public'
* @psalm-type ProfileFieldsDefinitionInput = array{
* field_key?: string,
* label?: string,
* type?: string,
* admin_only?: bool,
* user_editable?: bool,
* user_visible?: bool,
* initial_visibility?: string,
* sort_order?: int,
* active?: bool,
* }
* @psalm-type ProfileFieldsDefinition = array{
* id: int,
* field_key: non-empty-string,
* label: non-empty-string,
* type: ProfileFieldsType,
* admin_only: bool,
* user_editable: bool,
* user_visible: bool,
* initial_visibility: ProfileFieldsVisibility,
* sort_order: int,
* active: bool,
* created_at: string,
* updated_at: string,
* }
* @psalm-type ProfileFieldsValuePayload = array{
* value: mixed,
* }
* @psalm-type ProfileFieldsValueRecord = array{
* id: int,
* field_definition_id: int,
* user_uid: string,
* value: ProfileFieldsValuePayload,
* current_visibility: ProfileFieldsVisibility,
* updated_by_uid: string,
* updated_at: string,
* }
* @psalm-type ProfileFieldsEditableField = array{
* definition: ProfileFieldsDefinition,
* value: ProfileFieldsValueRecord|null,
* can_edit: bool,
* }
* @psalm-type ProfileFieldsLookupField = array{
* definition: ProfileFieldsDefinition,
* value: ProfileFieldsValueRecord,
* }
* @psalm-type ProfileFieldsLookupResult = array{
* user_uid: string,
* lookup_field_key: string,
* fields: array<string, ProfileFieldsLookupField>,
* }
* @psalm-type ProfileFieldsSearchItem = array{
* user_uid: string,
* display_name: string,
* fields: array<string, ProfileFieldsLookupField>,
* }
* @psalm-type ProfileFieldsSearchResult = array{
* items: list<ProfileFieldsSearchItem>,
* pagination: array{limit: int, offset: int, total: int},
* }
*/
final class ResponseDefinitions {
private function __construct() {
}
}