oak-domain 5.1.16 → 5.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/lib/base-app-domain/ActionAuth/Schema.d.ts +19 -171
  2. package/lib/base-app-domain/ActionAuth/Schema.js +2 -0
  3. package/lib/base-app-domain/ActionAuth/_baseSchema.d.ts +44 -0
  4. package/lib/base-app-domain/ActionAuth/_baseSchema.js +2 -0
  5. package/lib/base-app-domain/EntityDict.d.ts +695 -14
  6. package/lib/base-app-domain/I18n/Schema.d.ts +19 -129
  7. package/lib/base-app-domain/I18n/Schema.js +2 -0
  8. package/lib/base-app-domain/I18n/_baseSchema.d.ts +51 -0
  9. package/lib/base-app-domain/I18n/_baseSchema.js +2 -0
  10. package/lib/base-app-domain/Log/Schema.d.ts +19 -141
  11. package/lib/base-app-domain/Log/Schema.js +2 -0
  12. package/lib/base-app-domain/Log/Style.d.ts +2 -2
  13. package/lib/base-app-domain/Log/_baseSchema.d.ts +44 -0
  14. package/lib/base-app-domain/Log/_baseSchema.js +2 -0
  15. package/lib/base-app-domain/Modi/Schema.d.ts +19 -130
  16. package/lib/base-app-domain/Modi/Schema.js +2 -0
  17. package/lib/base-app-domain/Modi/Style.d.ts +2 -2
  18. package/lib/base-app-domain/Modi/_baseSchema.d.ts +61 -0
  19. package/lib/base-app-domain/Modi/_baseSchema.js +2 -0
  20. package/lib/base-app-domain/ModiEntity/Schema.d.ts +19 -367
  21. package/lib/base-app-domain/ModiEntity/Schema.js +2 -0
  22. package/lib/base-app-domain/ModiEntity/Storage.js +1 -2
  23. package/lib/base-app-domain/ModiEntity/_baseSchema.d.ts +44 -0
  24. package/lib/base-app-domain/ModiEntity/_baseSchema.js +2 -0
  25. package/lib/base-app-domain/Oper/Schema.d.ts +19 -201
  26. package/lib/base-app-domain/Oper/Schema.js +2 -0
  27. package/lib/base-app-domain/Oper/Style.d.ts +2 -2
  28. package/lib/base-app-domain/Oper/_baseSchema.d.ts +67 -0
  29. package/lib/base-app-domain/Oper/_baseSchema.js +2 -0
  30. package/lib/base-app-domain/OperEntity/Schema.d.ts +19 -367
  31. package/lib/base-app-domain/OperEntity/Schema.js +2 -0
  32. package/lib/base-app-domain/OperEntity/Storage.js +1 -2
  33. package/lib/base-app-domain/OperEntity/_baseSchema.d.ts +44 -0
  34. package/lib/base-app-domain/OperEntity/_baseSchema.js +2 -0
  35. package/lib/base-app-domain/Path/Schema.d.ts +19 -157
  36. package/lib/base-app-domain/Path/Schema.js +2 -0
  37. package/lib/base-app-domain/Path/_baseSchema.d.ts +52 -0
  38. package/lib/base-app-domain/Path/_baseSchema.js +2 -0
  39. package/lib/base-app-domain/Relation/Schema.d.ts +19 -198
  40. package/lib/base-app-domain/Relation/Schema.js +2 -0
  41. package/lib/base-app-domain/Relation/_baseSchema.d.ts +48 -0
  42. package/lib/base-app-domain/Relation/_baseSchema.js +2 -0
  43. package/lib/base-app-domain/RelationAuth/Schema.d.ts +19 -199
  44. package/lib/base-app-domain/RelationAuth/Schema.js +2 -0
  45. package/lib/base-app-domain/RelationAuth/_baseSchema.d.ts +41 -0
  46. package/lib/base-app-domain/RelationAuth/_baseSchema.js +2 -0
  47. package/lib/base-app-domain/User/Schema.d.ts +19 -222
  48. package/lib/base-app-domain/User/Schema.js +2 -0
  49. package/lib/base-app-domain/User/Style.d.ts +2 -2
  50. package/lib/base-app-domain/User/_baseSchema.d.ts +53 -0
  51. package/lib/base-app-domain/User/_baseSchema.js +2 -0
  52. package/lib/base-app-domain/UserEntityClaim/Schema.d.ts +19 -264
  53. package/lib/base-app-domain/UserEntityClaim/Schema.js +2 -0
  54. package/lib/base-app-domain/UserEntityClaim/_baseSchema.d.ts +49 -0
  55. package/lib/base-app-domain/UserEntityClaim/_baseSchema.js +2 -0
  56. package/lib/base-app-domain/UserEntityGrant/Schema.d.ts +19 -136
  57. package/lib/base-app-domain/UserEntityGrant/Schema.js +2 -0
  58. package/lib/base-app-domain/UserEntityGrant/_baseSchema.d.ts +46 -0
  59. package/lib/base-app-domain/UserEntityGrant/_baseSchema.js +2 -0
  60. package/lib/base-app-domain/UserRelation/Schema.d.ts +19 -212
  61. package/lib/base-app-domain/UserRelation/Schema.js +2 -0
  62. package/lib/base-app-domain/UserRelation/_baseSchema.d.ts +47 -0
  63. package/lib/base-app-domain/UserRelation/_baseSchema.js +2 -0
  64. package/lib/compiler/localeBuilder.d.ts +1 -0
  65. package/lib/compiler/localeBuilder.js +9 -2
  66. package/lib/compiler/schemalBuilder.d.ts +1 -0
  67. package/lib/compiler/schemalBuilder.js +1368 -186
  68. package/lib/data/i18n.d.ts +3 -0
  69. package/lib/data/i18n.js +32 -0
  70. package/lib/store/CascadeStore.d.ts +3 -3
  71. package/lib/store/CascadeStore.js +28 -27
  72. package/lib/store/RelationAuth.d.ts +1 -1
  73. package/lib/store/RelationAuth.js +6 -6
  74. package/lib/store/TriggerExecutor.js +11 -5
  75. package/lib/store/checker.js +1 -1
  76. package/lib/store/filter.d.ts +11 -11
  77. package/lib/store/filter.js +14 -8
  78. package/lib/store/modi.d.ts +2 -2
  79. package/lib/store/triggers.js +14 -14
  80. package/lib/timers/vaccum.d.ts +1 -1
  81. package/lib/types/Auth.d.ts +4 -4
  82. package/lib/types/Cluster.d.ts +1 -0
  83. package/lib/types/Configuration.d.ts +9 -0
  84. package/lib/types/Entity.d.ts +5 -1
  85. package/lib/types/EntityDesc.d.ts +1 -1
  86. package/lib/types/Exception.d.ts +26 -21
  87. package/lib/types/Exception.js +81 -71
  88. package/lib/types/Expression.d.ts +4 -1
  89. package/lib/types/Port.d.ts +1 -1
  90. package/lib/types/Trigger.d.ts +1 -1
  91. package/lib/types/Watcher.d.ts +3 -3
  92. package/lib/utils/projection.d.ts +2 -2
  93. package/lib/utils/relationPath.d.ts +4 -4
  94. package/lib/utils/relationPath.js +1 -1
  95. package/lib/utils/validator.d.ts +2 -2
  96. package/package.json +2 -2
@@ -1,17 +1,698 @@
1
- import { EntityDef as ActionAuth } from "./ActionAuth/Schema";
2
- import { EntityDef as I18n } from "./I18n/Schema";
3
- import { EntityDef as Log } from "./Log/Schema";
4
- import { EntityDef as Modi } from "./Modi/Schema";
5
- import { EntityDef as ModiEntity } from "./ModiEntity/Schema";
6
- import { EntityDef as Oper } from "./Oper/Schema";
7
- import { EntityDef as OperEntity } from "./OperEntity/Schema";
8
- import { EntityDef as Path } from "./Path/Schema";
9
- import { EntityDef as Relation } from "./Relation/Schema";
10
- import { EntityDef as RelationAuth } from "./RelationAuth/Schema";
11
- import { EntityDef as User } from "./User/Schema";
12
- import { EntityDef as UserEntityClaim } from "./UserEntityClaim/Schema";
13
- import { EntityDef as UserEntityGrant } from "./UserEntityGrant/Schema";
14
- import { EntityDef as UserRelation } from "./UserRelation/Schema";
1
+ import { MakeFilter, SubQueryPredicateMetadata } from "../types/Demand";
2
+ import { FormCreateData, FormUpdateData, DeduceAggregation, Operation as OakOperation, Selection as OakSelection, AggregationResult } from "../types/Entity";
3
+ import * as BaseActionAuth from "./ActionAuth/_baseSchema";
4
+ import * as BaseI18n from "./I18n/_baseSchema";
5
+ import * as BaseLog from "./Log/_baseSchema";
6
+ import * as BaseModi from "./Modi/_baseSchema";
7
+ import * as BaseModiEntity from "./ModiEntity/_baseSchema";
8
+ import * as BaseOper from "./Oper/_baseSchema";
9
+ import * as BaseOperEntity from "./OperEntity/_baseSchema";
10
+ import * as BasePath from "./Path/_baseSchema";
11
+ import * as BaseRelation from "./Relation/_baseSchema";
12
+ import * as BaseRelationAuth from "./RelationAuth/_baseSchema";
13
+ import * as BaseUser from "./User/_baseSchema";
14
+ import * as BaseUserEntityClaim from "./UserEntityClaim/_baseSchema";
15
+ import * as BaseUserEntityGrant from "./UserEntityGrant/_baseSchema";
16
+ import * as BaseUserRelation from "./UserRelation/_baseSchema";
17
+ export type ActionAuth = {
18
+ OpSchema: BaseActionAuth.OpSchema;
19
+ Action: BaseActionAuth.OpAction;
20
+ Schema: BaseActionAuth.OpSchema & {
21
+ relation?: Relation["Schema"];
22
+ path: Path["Schema"];
23
+ };
24
+ Projection: BaseActionAuth.OpProjection & {
25
+ relation?: Relation["Projection"];
26
+ path?: Path["Projection"];
27
+ };
28
+ FilterUnit: BaseActionAuth.OpFilter & {
29
+ relation: MakeFilter<Relation["FilterUnit"]>;
30
+ path: MakeFilter<Path["FilterUnit"]>;
31
+ };
32
+ Filter: MakeFilter<ActionAuth["FilterUnit"]>;
33
+ SortAttr: Partial<BaseActionAuth.OpSortAttr | {
34
+ relation: Relation["SortAttr"];
35
+ path: Path["SortAttr"];
36
+ }>;
37
+ SortNode: {
38
+ $attr: ActionAuth["SortAttr"];
39
+ $direction?: "asc" | "desc";
40
+ };
41
+ Sorter: ActionAuth["SortNode"][];
42
+ Selection: OakSelection<"select", ActionAuth["Projection"], ActionAuth["Filter"], ActionAuth["Sorter"]>;
43
+ Aggregation: DeduceAggregation<ActionAuth["Projection"], ActionAuth["Filter"], ActionAuth["Sorter"]>;
44
+ CreateOperationData: FormCreateData<BaseActionAuth.OpSchema & {
45
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]>;
46
+ }>;
47
+ CreateSingle: OakOperation<"create", ActionAuth["CreateOperationData"]>;
48
+ CreateMulti: OakOperation<"create", Array<ActionAuth["CreateOperationData"]>>;
49
+ Create: ActionAuth["CreateSingle"] | ActionAuth["CreateMulti"];
50
+ UpdateOperationData: FormUpdateData<BaseActionAuth.OpSchema & {
51
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]> | OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"]>;
52
+ }>;
53
+ Update: OakOperation<BaseActionAuth.OpUpdateAction, ActionAuth["UpdateOperationData"], ActionAuth["Filter"], ActionAuth["Sorter"]>;
54
+ RemoveOperationData: {};
55
+ Remove: OakOperation<"remove", ActionAuth["RemoveOperationData"], ActionAuth["Filter"], ActionAuth["Sorter"]>;
56
+ Operation: ActionAuth["Create"] | ActionAuth["Update"] | ActionAuth["Remove"];
57
+ };
58
+ export type I18n = {
59
+ OpSchema: BaseI18n.OpSchema;
60
+ Action: BaseI18n.OpAction;
61
+ Schema: BaseI18n.OpSchema & {};
62
+ Projection: BaseI18n.OpProjection & {};
63
+ FilterUnit: BaseI18n.OpFilter & {};
64
+ Filter: MakeFilter<I18n["FilterUnit"]>;
65
+ SortAttr: Partial<BaseI18n.OpSortAttr | {}>;
66
+ SortNode: {
67
+ $attr: I18n["SortAttr"];
68
+ $direction?: "asc" | "desc";
69
+ };
70
+ Sorter: I18n["SortNode"][];
71
+ Selection: OakSelection<"select", I18n["Projection"], I18n["Filter"], I18n["Sorter"]>;
72
+ Aggregation: DeduceAggregation<I18n["Projection"], I18n["Filter"], I18n["Sorter"]>;
73
+ CreateOperationData: FormCreateData<BaseI18n.OpSchema>;
74
+ CreateSingle: OakOperation<"create", I18n["CreateOperationData"]>;
75
+ CreateMulti: OakOperation<"create", Array<I18n["CreateOperationData"]>>;
76
+ Create: I18n["CreateSingle"] | I18n["CreateMulti"];
77
+ UpdateOperationData: FormUpdateData<BaseI18n.OpSchema>;
78
+ Update: OakOperation<BaseI18n.OpUpdateAction, I18n["UpdateOperationData"], I18n["Filter"], I18n["Sorter"]>;
79
+ RemoveOperationData: {};
80
+ Remove: OakOperation<"remove", I18n["RemoveOperationData"], I18n["Filter"], I18n["Sorter"]>;
81
+ Operation: I18n["Create"] | I18n["Update"] | I18n["Remove"];
82
+ };
83
+ export type Log = {
84
+ OpSchema: BaseLog.OpSchema;
85
+ Action: BaseLog.OpAction;
86
+ Schema: BaseLog.OpSchema & {
87
+ oper$log?: Array<Omit<Oper["Schema"], "log">>;
88
+ oper$log$$aggr?: AggregationResult<Omit<Oper["Schema"], "log">>;
89
+ };
90
+ Projection: BaseLog.OpProjection & {
91
+ oper$log?: OakSelection<"select", Omit<Oper["Projection"], "log">, Omit<Oper["Filter"], "log">, Oper["Sorter"]> & {
92
+ $entity: "oper";
93
+ };
94
+ oper$log$$aggr?: DeduceAggregation<Omit<Oper["Projection"], "log">, Omit<Oper["Filter"], "log">, Oper["Sorter"]> & {
95
+ $entity: "oper";
96
+ };
97
+ };
98
+ FilterUnit: BaseLog.OpFilter & {
99
+ oper$log: MakeFilter<Omit<Oper["FilterUnit"], "log">> & SubQueryPredicateMetadata;
100
+ };
101
+ Filter: MakeFilter<Log["FilterUnit"]>;
102
+ SortAttr: Partial<BaseLog.OpSortAttr | {}>;
103
+ SortNode: {
104
+ $attr: Log["SortAttr"];
105
+ $direction?: "asc" | "desc";
106
+ };
107
+ Sorter: Log["SortNode"][];
108
+ Selection: OakSelection<"select", Log["Projection"], Log["Filter"], Log["Sorter"]>;
109
+ Aggregation: DeduceAggregation<Log["Projection"], Log["Filter"], Log["Sorter"]>;
110
+ CreateOperationData: FormCreateData<BaseLog.OpSchema & {
111
+ oper$log?: (OakOperation<"create", Omit<Oper["CreateOperationData"], "log"> | Omit<Oper["CreateOperationData"], "log">[]> | OakOperation<BaseOper.OpUpdateAction, Omit<Oper["UpdateOperationData"], "log">, Oper["Filter"]>)[];
112
+ }>;
113
+ CreateSingle: OakOperation<"create", Log["CreateOperationData"]>;
114
+ CreateMulti: OakOperation<"create", Array<Log["CreateOperationData"]>>;
115
+ Create: Log["CreateSingle"] | Log["CreateMulti"];
116
+ UpdateOperationData: FormUpdateData<BaseLog.OpSchema & {
117
+ oper$log?: (OakOperation<"create", Omit<Oper["CreateOperationData"], "log"> | Omit<Oper["CreateOperationData"], "log">[]> | OakOperation<BaseOper.OpUpdateAction, Omit<Oper["UpdateOperationData"], "log">, Oper["Filter"]> | OakOperation<"remove", Oper["RemoveOperationData"], Oper["Filter"]>)[];
118
+ }>;
119
+ Update: OakOperation<BaseLog.OpUpdateAction, Log["UpdateOperationData"], Log["Filter"], Log["Sorter"]>;
120
+ RemoveOperationData: {};
121
+ Remove: OakOperation<"remove", Log["RemoveOperationData"], Log["Filter"], Log["Sorter"]>;
122
+ Operation: Log["Create"] | Log["Update"] | Log["Remove"];
123
+ };
124
+ export type Modi = {
125
+ OpSchema: BaseModi.OpSchema;
126
+ Action: BaseModi.OpAction;
127
+ Schema: BaseModi.OpSchema & {
128
+ modiEntity$modi?: Array<Omit<ModiEntity["Schema"], "modi">>;
129
+ modiEntity$modi$$aggr?: AggregationResult<Omit<ModiEntity["Schema"], "modi">>;
130
+ };
131
+ Projection: BaseModi.OpProjection & {
132
+ modiEntity$modi?: OakSelection<"select", Omit<ModiEntity["Projection"], "modi">, Omit<ModiEntity["Filter"], "modi">, ModiEntity["Sorter"]> & {
133
+ $entity: "modiEntity";
134
+ };
135
+ modiEntity$modi$$aggr?: DeduceAggregation<Omit<ModiEntity["Projection"], "modi">, Omit<ModiEntity["Filter"], "modi">, ModiEntity["Sorter"]> & {
136
+ $entity: "modiEntity";
137
+ };
138
+ };
139
+ FilterUnit: BaseModi.OpFilter & {
140
+ modiEntity$modi: MakeFilter<Omit<ModiEntity["FilterUnit"], "modi">> & SubQueryPredicateMetadata;
141
+ };
142
+ Filter: MakeFilter<Modi["FilterUnit"]>;
143
+ SortAttr: Partial<BaseModi.OpSortAttr | {}>;
144
+ SortNode: {
145
+ $attr: Modi["SortAttr"];
146
+ $direction?: "asc" | "desc";
147
+ };
148
+ Sorter: Modi["SortNode"][];
149
+ Selection: OakSelection<"select", Modi["Projection"], Modi["Filter"], Modi["Sorter"]>;
150
+ Aggregation: DeduceAggregation<Modi["Projection"], Modi["Filter"], Modi["Sorter"]>;
151
+ CreateOperationData: FormCreateData<BaseModi.OpSchema & {
152
+ modiEntity$modi?: OakOperation<"create", Omit<ModiEntity["CreateOperationData"], "modi"> | Omit<ModiEntity["CreateOperationData"], "modi">[]>[];
153
+ }>;
154
+ CreateSingle: OakOperation<"create", Modi["CreateOperationData"]>;
155
+ CreateMulti: OakOperation<"create", Array<Modi["CreateOperationData"]>>;
156
+ Create: Modi["CreateSingle"] | Modi["CreateMulti"];
157
+ UpdateOperationData: FormUpdateData<BaseModi.OpSchema & {
158
+ modiEntity$modi?: OakOperation<"create", Omit<ModiEntity["CreateOperationData"], "modi"> | Omit<ModiEntity["CreateOperationData"], "modi">[]>[];
159
+ }>;
160
+ Update: OakOperation<BaseModi.OpUpdateAction, Modi["UpdateOperationData"], Modi["Filter"], Modi["Sorter"]>;
161
+ RemoveOperationData: {};
162
+ Remove: OakOperation<"remove", Modi["RemoveOperationData"], Modi["Filter"], Modi["Sorter"]>;
163
+ Operation: Modi["Create"] | Modi["Update"] | Modi["Remove"];
164
+ };
165
+ export type ModiEntity = {
166
+ OpSchema: BaseModiEntity.OpSchema;
167
+ Action: BaseModiEntity.OpAction;
168
+ Schema: BaseModiEntity.OpSchema & {
169
+ modi: Modi["Schema"];
170
+ };
171
+ Projection: BaseModiEntity.OpProjection & {
172
+ modi?: Modi["Projection"];
173
+ };
174
+ FilterUnit: BaseModiEntity.OpFilter & {
175
+ modi: MakeFilter<Modi["FilterUnit"]>;
176
+ };
177
+ Filter: MakeFilter<ModiEntity["FilterUnit"]>;
178
+ SortAttr: Partial<BaseModiEntity.OpSortAttr | {
179
+ modi: Modi["SortAttr"];
180
+ }>;
181
+ SortNode: {
182
+ $attr: ModiEntity["SortAttr"];
183
+ $direction?: "asc" | "desc";
184
+ };
185
+ Sorter: ModiEntity["SortNode"][];
186
+ Selection: OakSelection<"select", ModiEntity["Projection"], ModiEntity["Filter"], ModiEntity["Sorter"]>;
187
+ Aggregation: DeduceAggregation<ModiEntity["Projection"], ModiEntity["Filter"], ModiEntity["Sorter"]>;
188
+ CreateOperationData: FormCreateData<BaseModiEntity.OpSchema & {
189
+ modi?: OakOperation<"create", Modi["CreateOperationData"]> | OakOperation<BaseModi.OpUpdateAction, Modi["UpdateOperationData"], Modi["Filter"]>;
190
+ }>;
191
+ CreateSingle: OakOperation<"create", ModiEntity["CreateOperationData"]>;
192
+ CreateMulti: OakOperation<"create", Array<ModiEntity["CreateOperationData"]>>;
193
+ Create: ModiEntity["CreateSingle"] | ModiEntity["CreateMulti"];
194
+ UpdateOperationData: FormUpdateData<BaseModiEntity.OpSchema & {
195
+ modi?: OakOperation<"create", Modi["CreateOperationData"]> | OakOperation<BaseModi.OpUpdateAction, Modi["UpdateOperationData"], Modi["Filter"]> | OakOperation<"remove", Modi["RemoveOperationData"], Modi["Filter"]>;
196
+ }>;
197
+ Update: OakOperation<BaseModiEntity.OpUpdateAction, ModiEntity["UpdateOperationData"], ModiEntity["Filter"], ModiEntity["Sorter"]>;
198
+ RemoveOperationData: {};
199
+ Remove: OakOperation<"remove", ModiEntity["RemoveOperationData"], ModiEntity["Filter"], ModiEntity["Sorter"]>;
200
+ Operation: ModiEntity["Create"] | ModiEntity["Update"] | ModiEntity["Remove"];
201
+ };
202
+ export type Oper = {
203
+ OpSchema: BaseOper.OpSchema;
204
+ Action: BaseOper.OpAction;
205
+ Schema: BaseOper.OpSchema & {
206
+ operator?: User["Schema"];
207
+ log?: Log["Schema"];
208
+ operEntity$oper?: Array<Omit<OperEntity["Schema"], "oper">>;
209
+ operEntity$oper$$aggr?: AggregationResult<Omit<OperEntity["Schema"], "oper">>;
210
+ };
211
+ Projection: BaseOper.OpProjection & {
212
+ operator?: User["Projection"];
213
+ log?: Log["Projection"];
214
+ operEntity$oper?: OakSelection<"select", Omit<OperEntity["Projection"], "oper">, Omit<OperEntity["Filter"], "oper">, OperEntity["Sorter"]> & {
215
+ $entity: "operEntity";
216
+ };
217
+ operEntity$oper$$aggr?: DeduceAggregation<Omit<OperEntity["Projection"], "oper">, Omit<OperEntity["Filter"], "oper">, OperEntity["Sorter"]> & {
218
+ $entity: "operEntity";
219
+ };
220
+ };
221
+ FilterUnit: BaseOper.OpFilter & {
222
+ operator: MakeFilter<User["FilterUnit"]>;
223
+ log: MakeFilter<Log["FilterUnit"]>;
224
+ operEntity$oper: MakeFilter<Omit<OperEntity["FilterUnit"], "oper">> & SubQueryPredicateMetadata;
225
+ };
226
+ Filter: MakeFilter<Oper["FilterUnit"]>;
227
+ SortAttr: Partial<BaseOper.OpSortAttr | {
228
+ operator: User["SortAttr"];
229
+ log: Log["SortAttr"];
230
+ }>;
231
+ SortNode: {
232
+ $attr: Oper["SortAttr"];
233
+ $direction?: "asc" | "desc";
234
+ };
235
+ Sorter: Oper["SortNode"][];
236
+ Selection: OakSelection<"select", Oper["Projection"], Oper["Filter"], Oper["Sorter"]>;
237
+ Aggregation: DeduceAggregation<Oper["Projection"], Oper["Filter"], Oper["Sorter"]>;
238
+ CreateOperationData: FormCreateData<BaseOper.OpSchema & {
239
+ operator?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]>;
240
+ log?: OakOperation<"create", Log["CreateOperationData"]> | OakOperation<BaseLog.OpUpdateAction, Log["UpdateOperationData"], Log["Filter"]>;
241
+ operEntity$oper?: OakOperation<"create", Omit<OperEntity["CreateOperationData"], "oper"> | Omit<OperEntity["CreateOperationData"], "oper">[]>[];
242
+ }>;
243
+ CreateSingle: OakOperation<"create", Oper["CreateOperationData"]>;
244
+ CreateMulti: OakOperation<"create", Array<Oper["CreateOperationData"]>>;
245
+ Create: Oper["CreateSingle"] | Oper["CreateMulti"];
246
+ UpdateOperationData: FormUpdateData<BaseOper.OpSchema & {
247
+ operator?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]> | OakOperation<"remove", User["RemoveOperationData"], User["Filter"]>;
248
+ log?: OakOperation<"create", Log["CreateOperationData"]> | OakOperation<BaseLog.OpUpdateAction, Log["UpdateOperationData"], Log["Filter"]> | OakOperation<"remove", Log["RemoveOperationData"], Log["Filter"]>;
249
+ operEntity$oper?: OakOperation<"create", Omit<OperEntity["CreateOperationData"], "oper"> | Omit<OperEntity["CreateOperationData"], "oper">[]>[];
250
+ }>;
251
+ Update: OakOperation<BaseOper.OpUpdateAction, Oper["UpdateOperationData"], Oper["Filter"], Oper["Sorter"]>;
252
+ RemoveOperationData: {};
253
+ Remove: OakOperation<"remove", Oper["RemoveOperationData"], Oper["Filter"], Oper["Sorter"]>;
254
+ Operation: Oper["Create"] | Oper["Update"] | Oper["Remove"];
255
+ };
256
+ export type OperEntity = {
257
+ OpSchema: BaseOperEntity.OpSchema;
258
+ Action: BaseOperEntity.OpAction;
259
+ Schema: BaseOperEntity.OpSchema & {
260
+ oper: Oper["Schema"];
261
+ };
262
+ Projection: BaseOperEntity.OpProjection & {
263
+ oper?: Oper["Projection"];
264
+ };
265
+ FilterUnit: BaseOperEntity.OpFilter & {
266
+ oper: MakeFilter<Oper["FilterUnit"]>;
267
+ };
268
+ Filter: MakeFilter<OperEntity["FilterUnit"]>;
269
+ SortAttr: Partial<BaseOperEntity.OpSortAttr | {
270
+ oper: Oper["SortAttr"];
271
+ }>;
272
+ SortNode: {
273
+ $attr: OperEntity["SortAttr"];
274
+ $direction?: "asc" | "desc";
275
+ };
276
+ Sorter: OperEntity["SortNode"][];
277
+ Selection: OakSelection<"select", OperEntity["Projection"], OperEntity["Filter"], OperEntity["Sorter"]>;
278
+ Aggregation: DeduceAggregation<OperEntity["Projection"], OperEntity["Filter"], OperEntity["Sorter"]>;
279
+ CreateOperationData: FormCreateData<BaseOperEntity.OpSchema & {
280
+ oper?: OakOperation<"create", Oper["CreateOperationData"]> | OakOperation<BaseOper.OpUpdateAction, Oper["UpdateOperationData"], Oper["Filter"]>;
281
+ }>;
282
+ CreateSingle: OakOperation<"create", OperEntity["CreateOperationData"]>;
283
+ CreateMulti: OakOperation<"create", Array<OperEntity["CreateOperationData"]>>;
284
+ Create: OperEntity["CreateSingle"] | OperEntity["CreateMulti"];
285
+ UpdateOperationData: FormUpdateData<BaseOperEntity.OpSchema & {
286
+ oper?: OakOperation<"create", Oper["CreateOperationData"]> | OakOperation<BaseOper.OpUpdateAction, Oper["UpdateOperationData"], Oper["Filter"]> | OakOperation<"remove", Oper["RemoveOperationData"], Oper["Filter"]>;
287
+ }>;
288
+ Update: OakOperation<BaseOperEntity.OpUpdateAction, OperEntity["UpdateOperationData"], OperEntity["Filter"], OperEntity["Sorter"]>;
289
+ RemoveOperationData: {};
290
+ Remove: OakOperation<"remove", OperEntity["RemoveOperationData"], OperEntity["Filter"], OperEntity["Sorter"]>;
291
+ Operation: OperEntity["Create"] | OperEntity["Update"] | OperEntity["Remove"];
292
+ };
293
+ export type Path = {
294
+ OpSchema: BasePath.OpSchema;
295
+ Action: BasePath.OpAction;
296
+ Schema: BasePath.OpSchema & {
297
+ actionAuth$path?: Array<Omit<ActionAuth["Schema"], "path">>;
298
+ relationAuth$path?: Array<Omit<RelationAuth["Schema"], "path">>;
299
+ actionAuth$path$$aggr?: AggregationResult<Omit<ActionAuth["Schema"], "path">>;
300
+ relationAuth$path$$aggr?: AggregationResult<Omit<RelationAuth["Schema"], "path">>;
301
+ };
302
+ Projection: BasePath.OpProjection & {
303
+ actionAuth$path?: OakSelection<"select", Omit<ActionAuth["Projection"], "path">, Omit<ActionAuth["Filter"], "path">, ActionAuth["Sorter"]> & {
304
+ $entity: "actionAuth";
305
+ };
306
+ actionAuth$path$$aggr?: DeduceAggregation<Omit<ActionAuth["Projection"], "path">, Omit<ActionAuth["Filter"], "path">, ActionAuth["Sorter"]> & {
307
+ $entity: "actionAuth";
308
+ };
309
+ relationAuth$path?: OakSelection<"select", Omit<RelationAuth["Projection"], "path">, Omit<RelationAuth["Filter"], "path">, RelationAuth["Sorter"]> & {
310
+ $entity: "relationAuth";
311
+ };
312
+ relationAuth$path$$aggr?: DeduceAggregation<Omit<RelationAuth["Projection"], "path">, Omit<RelationAuth["Filter"], "path">, RelationAuth["Sorter"]> & {
313
+ $entity: "relationAuth";
314
+ };
315
+ };
316
+ FilterUnit: BasePath.OpFilter & {
317
+ actionAuth$path: MakeFilter<Omit<ActionAuth["FilterUnit"], "path">> & SubQueryPredicateMetadata;
318
+ relationAuth$path: MakeFilter<Omit<RelationAuth["FilterUnit"], "path">> & SubQueryPredicateMetadata;
319
+ };
320
+ Filter: MakeFilter<Path["FilterUnit"]>;
321
+ SortAttr: Partial<BasePath.OpSortAttr | {}>;
322
+ SortNode: {
323
+ $attr: Path["SortAttr"];
324
+ $direction?: "asc" | "desc";
325
+ };
326
+ Sorter: Path["SortNode"][];
327
+ Selection: OakSelection<"select", Path["Projection"], Path["Filter"], Path["Sorter"]>;
328
+ Aggregation: DeduceAggregation<Path["Projection"], Path["Filter"], Path["Sorter"]>;
329
+ CreateOperationData: FormCreateData<BasePath.OpSchema>;
330
+ CreateSingle: OakOperation<"create", Path["CreateOperationData"]>;
331
+ CreateMulti: OakOperation<"create", Array<Path["CreateOperationData"]>>;
332
+ Create: Path["CreateSingle"] | Path["CreateMulti"];
333
+ UpdateOperationData: FormUpdateData<BasePath.OpSchema>;
334
+ Update: OakOperation<BasePath.OpUpdateAction, Path["UpdateOperationData"], Path["Filter"], Path["Sorter"]>;
335
+ RemoveOperationData: {};
336
+ Remove: OakOperation<"remove", Path["RemoveOperationData"], Path["Filter"], Path["Sorter"]>;
337
+ Operation: Path["Create"] | Path["Update"] | Path["Remove"];
338
+ };
339
+ export type Relation = {
340
+ OpSchema: BaseRelation.OpSchema;
341
+ Action: BaseRelation.OpAction;
342
+ Schema: BaseRelation.OpSchema & {
343
+ actionAuth$relation?: Array<Omit<ActionAuth["Schema"], "relation">>;
344
+ relationAuth$sourceRelation?: Array<Omit<RelationAuth["Schema"], "sourceRelation">>;
345
+ relationAuth$destRelation?: Array<Omit<RelationAuth["Schema"], "destRelation">>;
346
+ userEntityClaim$relation?: Array<Omit<UserEntityClaim["Schema"], "relation">>;
347
+ userRelation$relation?: Array<Omit<UserRelation["Schema"], "relation">>;
348
+ actionAuth$relation$$aggr?: AggregationResult<Omit<ActionAuth["Schema"], "relation">>;
349
+ relationAuth$sourceRelation$$aggr?: AggregationResult<Omit<RelationAuth["Schema"], "sourceRelation">>;
350
+ relationAuth$destRelation$$aggr?: AggregationResult<Omit<RelationAuth["Schema"], "destRelation">>;
351
+ userEntityClaim$relation$$aggr?: AggregationResult<Omit<UserEntityClaim["Schema"], "relation">>;
352
+ userRelation$relation$$aggr?: AggregationResult<Omit<UserRelation["Schema"], "relation">>;
353
+ };
354
+ Projection: BaseRelation.OpProjection & {
355
+ actionAuth$relation?: OakSelection<"select", Omit<ActionAuth["Projection"], "relation">, Omit<ActionAuth["Filter"], "relation">, ActionAuth["Sorter"]> & {
356
+ $entity: "actionAuth";
357
+ };
358
+ actionAuth$relation$$aggr?: DeduceAggregation<Omit<ActionAuth["Projection"], "relation">, Omit<ActionAuth["Filter"], "relation">, ActionAuth["Sorter"]> & {
359
+ $entity: "actionAuth";
360
+ };
361
+ relationAuth$sourceRelation?: OakSelection<"select", Omit<RelationAuth["Projection"], "relation">, Omit<RelationAuth["Filter"], "relation">, RelationAuth["Sorter"]> & {
362
+ $entity: "relationAuth";
363
+ };
364
+ relationAuth$sourceRelation$$aggr?: DeduceAggregation<Omit<RelationAuth["Projection"], "relation">, Omit<RelationAuth["Filter"], "relation">, RelationAuth["Sorter"]> & {
365
+ $entity: "relationAuth";
366
+ };
367
+ relationAuth$destRelation?: OakSelection<"select", Omit<RelationAuth["Projection"], "relation">, Omit<RelationAuth["Filter"], "relation">, RelationAuth["Sorter"]> & {
368
+ $entity: "relationAuth";
369
+ };
370
+ relationAuth$destRelation$$aggr?: DeduceAggregation<Omit<RelationAuth["Projection"], "relation">, Omit<RelationAuth["Filter"], "relation">, RelationAuth["Sorter"]> & {
371
+ $entity: "relationAuth";
372
+ };
373
+ userEntityClaim$relation?: OakSelection<"select", Omit<UserEntityClaim["Projection"], "relation">, Omit<UserEntityClaim["Filter"], "relation">, UserEntityClaim["Sorter"]> & {
374
+ $entity: "userEntityClaim";
375
+ };
376
+ userEntityClaim$relation$$aggr?: DeduceAggregation<Omit<UserEntityClaim["Projection"], "relation">, Omit<UserEntityClaim["Filter"], "relation">, UserEntityClaim["Sorter"]> & {
377
+ $entity: "userEntityClaim";
378
+ };
379
+ userRelation$relation?: OakSelection<"select", Omit<UserRelation["Projection"], "relation">, Omit<UserRelation["Filter"], "relation">, UserRelation["Sorter"]> & {
380
+ $entity: "userRelation";
381
+ };
382
+ userRelation$relation$$aggr?: DeduceAggregation<Omit<UserRelation["Projection"], "relation">, Omit<UserRelation["Filter"], "relation">, UserRelation["Sorter"]> & {
383
+ $entity: "userRelation";
384
+ };
385
+ };
386
+ FilterUnit: BaseRelation.OpFilter & {
387
+ actionAuth$relation: MakeFilter<Omit<ActionAuth["FilterUnit"], "relation">> & SubQueryPredicateMetadata;
388
+ relationAuth$sourceRelation: MakeFilter<Omit<RelationAuth["FilterUnit"], "sourceRelation">> & SubQueryPredicateMetadata;
389
+ relationAuth$destRelation: MakeFilter<Omit<RelationAuth["FilterUnit"], "destRelation">> & SubQueryPredicateMetadata;
390
+ userEntityClaim$relation: MakeFilter<Omit<UserEntityClaim["FilterUnit"], "relation">> & SubQueryPredicateMetadata;
391
+ userRelation$relation: MakeFilter<Omit<UserRelation["FilterUnit"], "relation">> & SubQueryPredicateMetadata;
392
+ };
393
+ Filter: MakeFilter<Relation["FilterUnit"]>;
394
+ SortAttr: Partial<BaseRelation.OpSortAttr | {}>;
395
+ SortNode: {
396
+ $attr: Relation["SortAttr"];
397
+ $direction?: "asc" | "desc";
398
+ };
399
+ Sorter: Relation["SortNode"][];
400
+ Selection: OakSelection<"select", Relation["Projection"], Relation["Filter"], Relation["Sorter"]>;
401
+ Aggregation: DeduceAggregation<Relation["Projection"], Relation["Filter"], Relation["Sorter"]>;
402
+ CreateOperationData: FormCreateData<BaseRelation.OpSchema & {
403
+ userEntityClaim$relation?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "relation"> | Omit<UserEntityClaim["CreateOperationData"], "relation">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "relation">, UserEntityClaim["Filter"]>)[];
404
+ userRelation$relation?: (OakOperation<"create", Omit<UserRelation["CreateOperationData"], "relation"> | Omit<UserRelation["CreateOperationData"], "relation">[]> | OakOperation<BaseUserRelation.OpUpdateAction, Omit<UserRelation["UpdateOperationData"], "relation">, UserRelation["Filter"]>)[];
405
+ }>;
406
+ CreateSingle: OakOperation<"create", Relation["CreateOperationData"]>;
407
+ CreateMulti: OakOperation<"create", Array<Relation["CreateOperationData"]>>;
408
+ Create: Relation["CreateSingle"] | Relation["CreateMulti"];
409
+ UpdateOperationData: FormUpdateData<BaseRelation.OpSchema & {
410
+ userEntityClaim$relation?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "relation"> | Omit<UserEntityClaim["CreateOperationData"], "relation">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "relation">, UserEntityClaim["Filter"]> | OakOperation<"remove", UserEntityClaim["RemoveOperationData"], UserEntityClaim["Filter"]>)[];
411
+ userRelation$relation?: (OakOperation<"create", Omit<UserRelation["CreateOperationData"], "relation"> | Omit<UserRelation["CreateOperationData"], "relation">[]> | OakOperation<BaseUserRelation.OpUpdateAction, Omit<UserRelation["UpdateOperationData"], "relation">, UserRelation["Filter"]> | OakOperation<"remove", UserRelation["RemoveOperationData"], UserRelation["Filter"]>)[];
412
+ }>;
413
+ Update: OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"], Relation["Sorter"]>;
414
+ RemoveOperationData: {};
415
+ Remove: OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"], Relation["Sorter"]>;
416
+ Operation: Relation["Create"] | Relation["Update"] | Relation["Remove"];
417
+ };
418
+ export type RelationAuth = {
419
+ OpSchema: BaseRelationAuth.OpSchema;
420
+ Action: BaseRelationAuth.OpAction;
421
+ Schema: BaseRelationAuth.OpSchema & {
422
+ sourceRelation: Relation["Schema"];
423
+ path: Path["Schema"];
424
+ destRelation: Relation["Schema"];
425
+ };
426
+ Projection: BaseRelationAuth.OpProjection & {
427
+ sourceRelation?: Relation["Projection"];
428
+ path?: Path["Projection"];
429
+ destRelation?: Relation["Projection"];
430
+ };
431
+ FilterUnit: BaseRelationAuth.OpFilter & {
432
+ sourceRelation: MakeFilter<Relation["FilterUnit"]>;
433
+ path: MakeFilter<Path["FilterUnit"]>;
434
+ destRelation: MakeFilter<Relation["FilterUnit"]>;
435
+ };
436
+ Filter: MakeFilter<RelationAuth["FilterUnit"]>;
437
+ SortAttr: Partial<BaseRelationAuth.OpSortAttr | {
438
+ sourceRelation: Relation["SortAttr"];
439
+ path: Path["SortAttr"];
440
+ destRelation: Relation["SortAttr"];
441
+ }>;
442
+ SortNode: {
443
+ $attr: RelationAuth["SortAttr"];
444
+ $direction?: "asc" | "desc";
445
+ };
446
+ Sorter: RelationAuth["SortNode"][];
447
+ Selection: OakSelection<"select", RelationAuth["Projection"], RelationAuth["Filter"], RelationAuth["Sorter"]>;
448
+ Aggregation: DeduceAggregation<RelationAuth["Projection"], RelationAuth["Filter"], RelationAuth["Sorter"]>;
449
+ CreateOperationData: FormCreateData<BaseRelationAuth.OpSchema & {
450
+ sourceRelation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]>;
451
+ destRelation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]>;
452
+ }>;
453
+ CreateSingle: OakOperation<"create", RelationAuth["CreateOperationData"]>;
454
+ CreateMulti: OakOperation<"create", Array<RelationAuth["CreateOperationData"]>>;
455
+ Create: RelationAuth["CreateSingle"] | RelationAuth["CreateMulti"];
456
+ UpdateOperationData: FormUpdateData<BaseRelationAuth.OpSchema & {
457
+ sourceRelation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]> | OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"]>;
458
+ destRelation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]> | OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"]>;
459
+ }>;
460
+ Update: OakOperation<BaseRelationAuth.OpUpdateAction, RelationAuth["UpdateOperationData"], RelationAuth["Filter"], RelationAuth["Sorter"]>;
461
+ RemoveOperationData: {};
462
+ Remove: OakOperation<"remove", RelationAuth["RemoveOperationData"], RelationAuth["Filter"], RelationAuth["Sorter"]>;
463
+ Operation: RelationAuth["Create"] | RelationAuth["Update"] | RelationAuth["Remove"];
464
+ };
465
+ export type User = {
466
+ OpSchema: BaseUser.OpSchema;
467
+ Action: BaseUser.OpAction;
468
+ Schema: BaseUser.OpSchema & {
469
+ ref?: User["Schema"];
470
+ oper$operator?: Array<Omit<Oper["Schema"], "operator">>;
471
+ user$ref?: Array<Omit<User["Schema"], "ref">>;
472
+ userEntityClaim$user?: Array<Omit<UserEntityClaim["Schema"], "user">>;
473
+ userRelation$user?: Array<Omit<UserRelation["Schema"], "user">>;
474
+ oper$operator$$aggr?: AggregationResult<Omit<Oper["Schema"], "operator">>;
475
+ user$ref$$aggr?: AggregationResult<Omit<User["Schema"], "ref">>;
476
+ userEntityClaim$user$$aggr?: AggregationResult<Omit<UserEntityClaim["Schema"], "user">>;
477
+ userRelation$user$$aggr?: AggregationResult<Omit<UserRelation["Schema"], "user">>;
478
+ };
479
+ Projection: BaseUser.OpProjection & {
480
+ ref?: User["Projection"];
481
+ oper$operator?: OakSelection<"select", Omit<Oper["Projection"], "user">, Omit<Oper["Filter"], "user">, Oper["Sorter"]> & {
482
+ $entity: "oper";
483
+ };
484
+ oper$operator$$aggr?: DeduceAggregation<Omit<Oper["Projection"], "user">, Omit<Oper["Filter"], "user">, Oper["Sorter"]> & {
485
+ $entity: "oper";
486
+ };
487
+ user$ref?: OakSelection<"select", Omit<User["Projection"], "user">, Omit<User["Filter"], "user">, User["Sorter"]> & {
488
+ $entity: "user";
489
+ };
490
+ user$ref$$aggr?: DeduceAggregation<Omit<User["Projection"], "user">, Omit<User["Filter"], "user">, User["Sorter"]> & {
491
+ $entity: "user";
492
+ };
493
+ userEntityClaim$user?: OakSelection<"select", Omit<UserEntityClaim["Projection"], "user">, Omit<UserEntityClaim["Filter"], "user">, UserEntityClaim["Sorter"]> & {
494
+ $entity: "userEntityClaim";
495
+ };
496
+ userEntityClaim$user$$aggr?: DeduceAggregation<Omit<UserEntityClaim["Projection"], "user">, Omit<UserEntityClaim["Filter"], "user">, UserEntityClaim["Sorter"]> & {
497
+ $entity: "userEntityClaim";
498
+ };
499
+ userRelation$user?: OakSelection<"select", Omit<UserRelation["Projection"], "user">, Omit<UserRelation["Filter"], "user">, UserRelation["Sorter"]> & {
500
+ $entity: "userRelation";
501
+ };
502
+ userRelation$user$$aggr?: DeduceAggregation<Omit<UserRelation["Projection"], "user">, Omit<UserRelation["Filter"], "user">, UserRelation["Sorter"]> & {
503
+ $entity: "userRelation";
504
+ };
505
+ };
506
+ FilterUnit: BaseUser.OpFilter & {
507
+ ref: MakeFilter<User["FilterUnit"]>;
508
+ oper$operator: MakeFilter<Omit<Oper["FilterUnit"], "operator">> & SubQueryPredicateMetadata;
509
+ user$ref: MakeFilter<Omit<User["FilterUnit"], "ref">> & SubQueryPredicateMetadata;
510
+ userEntityClaim$user: MakeFilter<Omit<UserEntityClaim["FilterUnit"], "user">> & SubQueryPredicateMetadata;
511
+ userRelation$user: MakeFilter<Omit<UserRelation["FilterUnit"], "user">> & SubQueryPredicateMetadata;
512
+ };
513
+ Filter: MakeFilter<User["FilterUnit"]>;
514
+ SortAttr: Partial<BaseUser.OpSortAttr | {
515
+ ref: User["SortAttr"];
516
+ }>;
517
+ SortNode: {
518
+ $attr: User["SortAttr"];
519
+ $direction?: "asc" | "desc";
520
+ };
521
+ Sorter: User["SortNode"][];
522
+ Selection: OakSelection<"select", User["Projection"], User["Filter"], User["Sorter"]>;
523
+ Aggregation: DeduceAggregation<User["Projection"], User["Filter"], User["Sorter"]>;
524
+ CreateOperationData: FormCreateData<BaseUser.OpSchema & {
525
+ ref?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]>;
526
+ oper$operator?: (OakOperation<"create", Omit<Oper["CreateOperationData"], "operator"> | Omit<Oper["CreateOperationData"], "operator">[]> | OakOperation<BaseOper.OpUpdateAction, Omit<Oper["UpdateOperationData"], "operator">, Oper["Filter"]>)[];
527
+ user$ref?: (OakOperation<"create", Omit<User["CreateOperationData"], "ref"> | Omit<User["CreateOperationData"], "ref">[]> | OakOperation<BaseUser.OpUpdateAction, Omit<User["UpdateOperationData"], "ref">, User["Filter"]>)[];
528
+ userEntityClaim$user?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "user"> | Omit<UserEntityClaim["CreateOperationData"], "user">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "user">, UserEntityClaim["Filter"]>)[];
529
+ userRelation$user?: (OakOperation<"create", Omit<UserRelation["CreateOperationData"], "user"> | Omit<UserRelation["CreateOperationData"], "user">[]> | OakOperation<BaseUserRelation.OpUpdateAction, Omit<UserRelation["UpdateOperationData"], "user">, UserRelation["Filter"]>)[];
530
+ }>;
531
+ CreateSingle: OakOperation<"create", User["CreateOperationData"]>;
532
+ CreateMulti: OakOperation<"create", Array<User["CreateOperationData"]>>;
533
+ Create: User["CreateSingle"] | User["CreateMulti"];
534
+ UpdateOperationData: FormUpdateData<BaseUser.OpSchema & {
535
+ ref?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]> | OakOperation<"remove", User["RemoveOperationData"], User["Filter"]>;
536
+ oper$operator?: (OakOperation<"create", Omit<Oper["CreateOperationData"], "operator"> | Omit<Oper["CreateOperationData"], "operator">[]> | OakOperation<BaseOper.OpUpdateAction, Omit<Oper["UpdateOperationData"], "operator">, Oper["Filter"]> | OakOperation<"remove", Oper["RemoveOperationData"], Oper["Filter"]>)[];
537
+ user$ref?: (OakOperation<"create", Omit<User["CreateOperationData"], "ref"> | Omit<User["CreateOperationData"], "ref">[]> | OakOperation<BaseUser.OpUpdateAction, Omit<User["UpdateOperationData"], "ref">, User["Filter"]> | OakOperation<"remove", User["RemoveOperationData"], User["Filter"]>)[];
538
+ userEntityClaim$user?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "user"> | Omit<UserEntityClaim["CreateOperationData"], "user">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "user">, UserEntityClaim["Filter"]> | OakOperation<"remove", UserEntityClaim["RemoveOperationData"], UserEntityClaim["Filter"]>)[];
539
+ userRelation$user?: (OakOperation<"create", Omit<UserRelation["CreateOperationData"], "user"> | Omit<UserRelation["CreateOperationData"], "user">[]> | OakOperation<BaseUserRelation.OpUpdateAction, Omit<UserRelation["UpdateOperationData"], "user">, UserRelation["Filter"]> | OakOperation<"remove", UserRelation["RemoveOperationData"], UserRelation["Filter"]>)[];
540
+ }>;
541
+ Update: OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"], User["Sorter"]>;
542
+ RemoveOperationData: {};
543
+ Remove: OakOperation<"remove", User["RemoveOperationData"], User["Filter"], User["Sorter"]>;
544
+ Operation: User["Create"] | User["Update"] | User["Remove"];
545
+ };
546
+ export type UserEntityClaim = {
547
+ OpSchema: BaseUserEntityClaim.OpSchema;
548
+ Action: BaseUserEntityClaim.OpAction;
549
+ Schema: BaseUserEntityClaim.OpSchema & {
550
+ ueg: UserEntityGrant["Schema"];
551
+ user: User["Schema"];
552
+ relation: Relation["Schema"];
553
+ userRelation: UserRelation["Schema"];
554
+ };
555
+ Projection: BaseUserEntityClaim.OpProjection & {
556
+ ueg?: UserEntityGrant["Projection"];
557
+ user?: User["Projection"];
558
+ relation?: Relation["Projection"];
559
+ userRelation?: UserRelation["Projection"];
560
+ };
561
+ FilterUnit: BaseUserEntityClaim.OpFilter & {
562
+ ueg: MakeFilter<UserEntityGrant["FilterUnit"]>;
563
+ user: MakeFilter<User["FilterUnit"]>;
564
+ relation: MakeFilter<Relation["FilterUnit"]>;
565
+ userRelation: MakeFilter<UserRelation["FilterUnit"]>;
566
+ };
567
+ Filter: MakeFilter<UserEntityClaim["FilterUnit"]>;
568
+ SortAttr: Partial<BaseUserEntityClaim.OpSortAttr | {
569
+ ueg: UserEntityGrant["SortAttr"];
570
+ user: User["SortAttr"];
571
+ relation: Relation["SortAttr"];
572
+ userRelation: UserRelation["SortAttr"];
573
+ }>;
574
+ SortNode: {
575
+ $attr: UserEntityClaim["SortAttr"];
576
+ $direction?: "asc" | "desc";
577
+ };
578
+ Sorter: UserEntityClaim["SortNode"][];
579
+ Selection: OakSelection<"select", UserEntityClaim["Projection"], UserEntityClaim["Filter"], UserEntityClaim["Sorter"]>;
580
+ Aggregation: DeduceAggregation<UserEntityClaim["Projection"], UserEntityClaim["Filter"], UserEntityClaim["Sorter"]>;
581
+ CreateOperationData: FormCreateData<BaseUserEntityClaim.OpSchema & {
582
+ ueg?: OakOperation<"create", UserEntityGrant["CreateOperationData"]> | OakOperation<BaseUserEntityGrant.OpUpdateAction, UserEntityGrant["UpdateOperationData"], UserEntityGrant["Filter"]>;
583
+ user?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]>;
584
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]>;
585
+ userRelation?: OakOperation<"create", UserRelation["CreateOperationData"]> | OakOperation<BaseUserRelation.OpUpdateAction, UserRelation["UpdateOperationData"], UserRelation["Filter"]>;
586
+ }>;
587
+ CreateSingle: OakOperation<"create", UserEntityClaim["CreateOperationData"]>;
588
+ CreateMulti: OakOperation<"create", Array<UserEntityClaim["CreateOperationData"]>>;
589
+ Create: UserEntityClaim["CreateSingle"] | UserEntityClaim["CreateMulti"];
590
+ UpdateOperationData: FormUpdateData<BaseUserEntityClaim.OpSchema & {
591
+ ueg?: OakOperation<"create", UserEntityGrant["CreateOperationData"]> | OakOperation<BaseUserEntityGrant.OpUpdateAction, UserEntityGrant["UpdateOperationData"], UserEntityGrant["Filter"]> | OakOperation<"remove", UserEntityGrant["RemoveOperationData"], UserEntityGrant["Filter"]>;
592
+ user?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]> | OakOperation<"remove", User["RemoveOperationData"], User["Filter"]>;
593
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]> | OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"]>;
594
+ userRelation?: OakOperation<"create", UserRelation["CreateOperationData"]> | OakOperation<BaseUserRelation.OpUpdateAction, UserRelation["UpdateOperationData"], UserRelation["Filter"]> | OakOperation<"remove", UserRelation["RemoveOperationData"], UserRelation["Filter"]>;
595
+ }>;
596
+ Update: OakOperation<BaseUserEntityClaim.OpUpdateAction, UserEntityClaim["UpdateOperationData"], UserEntityClaim["Filter"], UserEntityClaim["Sorter"]>;
597
+ RemoveOperationData: {};
598
+ Remove: OakOperation<"remove", UserEntityClaim["RemoveOperationData"], UserEntityClaim["Filter"], UserEntityClaim["Sorter"]>;
599
+ Operation: UserEntityClaim["Create"] | UserEntityClaim["Update"] | UserEntityClaim["Remove"];
600
+ };
601
+ export type UserEntityGrant = {
602
+ OpSchema: BaseUserEntityGrant.OpSchema;
603
+ Action: BaseUserEntityGrant.OpAction;
604
+ Schema: BaseUserEntityGrant.OpSchema & {
605
+ userEntityClaim$ueg?: Array<Omit<UserEntityClaim["Schema"], "ueg">>;
606
+ userEntityClaim$ueg$$aggr?: AggregationResult<Omit<UserEntityClaim["Schema"], "ueg">>;
607
+ };
608
+ Projection: BaseUserEntityGrant.OpProjection & {
609
+ userEntityClaim$ueg?: OakSelection<"select", Omit<UserEntityClaim["Projection"], "userEntityGrant">, Omit<UserEntityClaim["Filter"], "userEntityGrant">, UserEntityClaim["Sorter"]> & {
610
+ $entity: "userEntityClaim";
611
+ };
612
+ userEntityClaim$ueg$$aggr?: DeduceAggregation<Omit<UserEntityClaim["Projection"], "userEntityGrant">, Omit<UserEntityClaim["Filter"], "userEntityGrant">, UserEntityClaim["Sorter"]> & {
613
+ $entity: "userEntityClaim";
614
+ };
615
+ };
616
+ FilterUnit: BaseUserEntityGrant.OpFilter & {
617
+ userEntityClaim$ueg: MakeFilter<Omit<UserEntityClaim["FilterUnit"], "ueg">> & SubQueryPredicateMetadata;
618
+ };
619
+ Filter: MakeFilter<UserEntityGrant["FilterUnit"]>;
620
+ SortAttr: Partial<BaseUserEntityGrant.OpSortAttr | {}>;
621
+ SortNode: {
622
+ $attr: UserEntityGrant["SortAttr"];
623
+ $direction?: "asc" | "desc";
624
+ };
625
+ Sorter: UserEntityGrant["SortNode"][];
626
+ Selection: OakSelection<"select", UserEntityGrant["Projection"], UserEntityGrant["Filter"], UserEntityGrant["Sorter"]>;
627
+ Aggregation: DeduceAggregation<UserEntityGrant["Projection"], UserEntityGrant["Filter"], UserEntityGrant["Sorter"]>;
628
+ CreateOperationData: FormCreateData<BaseUserEntityGrant.OpSchema & {
629
+ userEntityClaim$ueg?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "ueg"> | Omit<UserEntityClaim["CreateOperationData"], "ueg">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "ueg">, UserEntityClaim["Filter"]>)[];
630
+ }>;
631
+ CreateSingle: OakOperation<"create", UserEntityGrant["CreateOperationData"]>;
632
+ CreateMulti: OakOperation<"create", Array<UserEntityGrant["CreateOperationData"]>>;
633
+ Create: UserEntityGrant["CreateSingle"] | UserEntityGrant["CreateMulti"];
634
+ UpdateOperationData: FormUpdateData<BaseUserEntityGrant.OpSchema & {
635
+ userEntityClaim$ueg?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "ueg"> | Omit<UserEntityClaim["CreateOperationData"], "ueg">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "ueg">, UserEntityClaim["Filter"]> | OakOperation<"remove", UserEntityClaim["RemoveOperationData"], UserEntityClaim["Filter"]>)[];
636
+ }>;
637
+ Update: OakOperation<BaseUserEntityGrant.OpUpdateAction, UserEntityGrant["UpdateOperationData"], UserEntityGrant["Filter"], UserEntityGrant["Sorter"]>;
638
+ RemoveOperationData: {};
639
+ Remove: OakOperation<"remove", UserEntityGrant["RemoveOperationData"], UserEntityGrant["Filter"], UserEntityGrant["Sorter"]>;
640
+ Operation: UserEntityGrant["Create"] | UserEntityGrant["Update"] | UserEntityGrant["Remove"];
641
+ };
642
+ export type UserRelation = {
643
+ OpSchema: BaseUserRelation.OpSchema;
644
+ Action: BaseUserRelation.OpAction;
645
+ Schema: BaseUserRelation.OpSchema & {
646
+ user: User["Schema"];
647
+ relation: Relation["Schema"];
648
+ userEntityClaim$userRelation?: Array<Omit<UserEntityClaim["Schema"], "userRelation">>;
649
+ userEntityClaim$userRelation$$aggr?: AggregationResult<Omit<UserEntityClaim["Schema"], "userRelation">>;
650
+ };
651
+ Projection: BaseUserRelation.OpProjection & {
652
+ user?: User["Projection"];
653
+ relation?: Relation["Projection"];
654
+ userEntityClaim$userRelation?: OakSelection<"select", Omit<UserEntityClaim["Projection"], "userRelation">, Omit<UserEntityClaim["Filter"], "userRelation">, UserEntityClaim["Sorter"]> & {
655
+ $entity: "userEntityClaim";
656
+ };
657
+ userEntityClaim$userRelation$$aggr?: DeduceAggregation<Omit<UserEntityClaim["Projection"], "userRelation">, Omit<UserEntityClaim["Filter"], "userRelation">, UserEntityClaim["Sorter"]> & {
658
+ $entity: "userEntityClaim";
659
+ };
660
+ };
661
+ FilterUnit: BaseUserRelation.OpFilter & {
662
+ user: MakeFilter<User["FilterUnit"]>;
663
+ relation: MakeFilter<Relation["FilterUnit"]>;
664
+ userEntityClaim$userRelation: MakeFilter<Omit<UserEntityClaim["FilterUnit"], "userRelation">> & SubQueryPredicateMetadata;
665
+ };
666
+ Filter: MakeFilter<UserRelation["FilterUnit"]>;
667
+ SortAttr: Partial<BaseUserRelation.OpSortAttr | {
668
+ user: User["SortAttr"];
669
+ relation: Relation["SortAttr"];
670
+ }>;
671
+ SortNode: {
672
+ $attr: UserRelation["SortAttr"];
673
+ $direction?: "asc" | "desc";
674
+ };
675
+ Sorter: UserRelation["SortNode"][];
676
+ Selection: OakSelection<"select", UserRelation["Projection"], UserRelation["Filter"], UserRelation["Sorter"]>;
677
+ Aggregation: DeduceAggregation<UserRelation["Projection"], UserRelation["Filter"], UserRelation["Sorter"]>;
678
+ CreateOperationData: FormCreateData<BaseUserRelation.OpSchema & {
679
+ user?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]>;
680
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]>;
681
+ userEntityClaim$userRelation?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "userRelation"> | Omit<UserEntityClaim["CreateOperationData"], "userRelation">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "userRelation">, UserEntityClaim["Filter"]>)[];
682
+ }>;
683
+ CreateSingle: OakOperation<"create", UserRelation["CreateOperationData"]>;
684
+ CreateMulti: OakOperation<"create", Array<UserRelation["CreateOperationData"]>>;
685
+ Create: UserRelation["CreateSingle"] | UserRelation["CreateMulti"];
686
+ UpdateOperationData: FormUpdateData<BaseUserRelation.OpSchema & {
687
+ user?: OakOperation<"create", User["CreateOperationData"]> | OakOperation<BaseUser.OpUpdateAction, User["UpdateOperationData"], User["Filter"]> | OakOperation<"remove", User["RemoveOperationData"], User["Filter"]>;
688
+ relation?: OakOperation<"create", Relation["CreateOperationData"]> | OakOperation<BaseRelation.OpUpdateAction, Relation["UpdateOperationData"], Relation["Filter"]> | OakOperation<"remove", Relation["RemoveOperationData"], Relation["Filter"]>;
689
+ userEntityClaim$userRelation?: (OakOperation<"create", Omit<UserEntityClaim["CreateOperationData"], "userRelation"> | Omit<UserEntityClaim["CreateOperationData"], "userRelation">[]> | OakOperation<BaseUserEntityClaim.OpUpdateAction, Omit<UserEntityClaim["UpdateOperationData"], "userRelation">, UserEntityClaim["Filter"]> | OakOperation<"remove", UserEntityClaim["RemoveOperationData"], UserEntityClaim["Filter"]>)[];
690
+ }>;
691
+ Update: OakOperation<BaseUserRelation.OpUpdateAction, UserRelation["UpdateOperationData"], UserRelation["Filter"], UserRelation["Sorter"]>;
692
+ RemoveOperationData: {};
693
+ Remove: OakOperation<"remove", UserRelation["RemoveOperationData"], UserRelation["Filter"], UserRelation["Sorter"]>;
694
+ Operation: UserRelation["Create"] | UserRelation["Update"] | UserRelation["Remove"];
695
+ };
15
696
  export type EntityDict = {
16
697
  actionAuth: ActionAuth;
17
698
  i18n: I18n;