@openbrf/plugin-sdk 1.2.0 → 1.4.0

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.
package/dist/catalog.d.ts CHANGED
@@ -219,6 +219,214 @@ export declare const catalogPluginEntrySchema: z.ZodObject<{
219
219
  }, z.core.$strict>>;
220
220
  released: z.ZodOptional<z.ZodString>;
221
221
  }, z.core.$strict>;
222
+ /**
223
+ * A plugin entry in version 2 of the index: version 1's, and the processing
224
+ * declaration.
225
+ *
226
+ * Repeated from the manifest on the terms the permissions are, because the
227
+ * consent screen shows it before anything is downloaded and the install seeds
228
+ * the record of processing activities from what that screen showed. Whether it
229
+ * is there is decided with the personal data, by the index as a whole below,
230
+ * since a refined object cannot be extended into the next version's entry.
231
+ */
232
+ export declare const catalogPluginEntryV2Schema: z.ZodObject<{
233
+ id: z.ZodString;
234
+ version: z.ZodString;
235
+ name: z.ZodObject<{
236
+ sv: z.ZodString;
237
+ en: z.ZodString;
238
+ }, z.core.$strict>;
239
+ description: z.ZodObject<{
240
+ sv: z.ZodString;
241
+ en: z.ZodString;
242
+ }, z.core.$strict>;
243
+ artifact: z.ZodObject<{
244
+ url: z.ZodString;
245
+ sha512: z.ZodString;
246
+ bytes: z.ZodOptional<z.ZodInt>;
247
+ }, z.core.$strict>;
248
+ homepage: z.ZodOptional<z.ZodString>;
249
+ deprecated: z.ZodDefault<z.ZodBoolean>;
250
+ type: z.ZodLiteral<"plugin">;
251
+ packageName: z.ZodString;
252
+ apiVersion: z.ZodInt;
253
+ permissions: z.ZodDefault<z.ZodArray<z.ZodEnum<{
254
+ "addressBook:proposeImport": "addressBook:proposeImport";
255
+ "addressBook:read": "addressBook:read";
256
+ "addressBook:readContact": "addressBook:readContact";
257
+ "addresses:read": "addresses:read";
258
+ "bookings:readAvailability": "bookings:readAvailability";
259
+ "calendar:read": "calendar:read";
260
+ "finances:read": "finances:read";
261
+ "finances:recordDelivery": "finances:recordDelivery";
262
+ "jobs:schedule": "jobs:schedule";
263
+ "mail:send": "mail:send";
264
+ "media:read": "media:read";
265
+ "news:read": "news:read";
266
+ "site:blocks": "site:blocks";
267
+ "sms:send": "sms:send";
268
+ "themes:install": "themes:install";
269
+ }>>>;
270
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
271
+ account: "account";
272
+ apartment: "apartment";
273
+ auditTrail: "auditTrail";
274
+ email: "email";
275
+ financial: "financial";
276
+ freeText: "freeText";
277
+ health: "health";
278
+ name: "name";
279
+ personalIdentityNumber: "personalIdentityNumber";
280
+ phone: "phone";
281
+ photograph: "photograph";
282
+ postalAddress: "postalAddress";
283
+ protected: "protected";
284
+ residency: "residency";
285
+ }>>>;
286
+ actions: z.ZodDefault<z.ZodArray<z.ZodObject<{
287
+ id: z.ZodString;
288
+ capability: z.ZodString;
289
+ effect: z.ZodEnum<{
290
+ delete: "delete";
291
+ read: "read";
292
+ write: "write";
293
+ }>;
294
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
295
+ account: "account";
296
+ apartment: "apartment";
297
+ auditTrail: "auditTrail";
298
+ email: "email";
299
+ financial: "financial";
300
+ freeText: "freeText";
301
+ health: "health";
302
+ name: "name";
303
+ personalIdentityNumber: "personalIdentityNumber";
304
+ phone: "phone";
305
+ photograph: "photograph";
306
+ postalAddress: "postalAddress";
307
+ protected: "protected";
308
+ residency: "residency";
309
+ }>>>;
310
+ surfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
311
+ ai: "ai";
312
+ mcp: "mcp";
313
+ ui: "ui";
314
+ }>>>;
315
+ }, z.core.$strict>>>;
316
+ oauthProtectedResource: z.ZodOptional<z.ZodString>;
317
+ extensionPoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
318
+ id: z.ZodString;
319
+ version: z.ZodInt;
320
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
321
+ account: "account";
322
+ apartment: "apartment";
323
+ auditTrail: "auditTrail";
324
+ email: "email";
325
+ financial: "financial";
326
+ freeText: "freeText";
327
+ health: "health";
328
+ name: "name";
329
+ personalIdentityNumber: "personalIdentityNumber";
330
+ phone: "phone";
331
+ photograph: "photograph";
332
+ postalAddress: "postalAddress";
333
+ protected: "protected";
334
+ residency: "residency";
335
+ }>>>;
336
+ title: z.ZodObject<{
337
+ sv: z.ZodString;
338
+ en: z.ZodString;
339
+ }, z.core.$strict>;
340
+ description: z.ZodObject<{
341
+ sv: z.ZodString;
342
+ en: z.ZodString;
343
+ }, z.core.$strict>;
344
+ }, z.core.$strict>>>;
345
+ extends: z.ZodOptional<z.ZodArray<z.ZodObject<{
346
+ plugin: z.ZodString;
347
+ point: z.ZodString;
348
+ version: z.ZodInt;
349
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
350
+ account: "account";
351
+ apartment: "apartment";
352
+ auditTrail: "auditTrail";
353
+ email: "email";
354
+ financial: "financial";
355
+ freeText: "freeText";
356
+ health: "health";
357
+ name: "name";
358
+ personalIdentityNumber: "personalIdentityNumber";
359
+ phone: "phone";
360
+ photograph: "photograph";
361
+ postalAddress: "postalAddress";
362
+ protected: "protected";
363
+ residency: "residency";
364
+ }>>>;
365
+ }, z.core.$strict>>>;
366
+ recipients: z.ZodOptional<z.ZodArray<z.ZodObject<{
367
+ id: z.ZodString;
368
+ origin: z.ZodString;
369
+ purpose: z.ZodObject<{
370
+ sv: z.ZodString;
371
+ en: z.ZodString;
372
+ }, z.core.$strict>;
373
+ personalData: z.ZodArray<z.ZodEnum<{
374
+ account: "account";
375
+ apartment: "apartment";
376
+ auditTrail: "auditTrail";
377
+ email: "email";
378
+ financial: "financial";
379
+ freeText: "freeText";
380
+ health: "health";
381
+ name: "name";
382
+ personalIdentityNumber: "personalIdentityNumber";
383
+ phone: "phone";
384
+ photograph: "photograph";
385
+ postalAddress: "postalAddress";
386
+ protected: "protected";
387
+ residency: "residency";
388
+ }>>;
389
+ }, z.core.$strict>>>;
390
+ deviceRoutes: z.ZodOptional<z.ZodArray<z.ZodObject<{
391
+ id: z.ZodString;
392
+ path: z.ZodString;
393
+ }, z.core.$strict>>>;
394
+ ai: z.ZodDefault<z.ZodBoolean>;
395
+ licence: z.ZodOptional<z.ZodObject<{
396
+ entitlement: z.ZodString;
397
+ issuer: z.ZodObject<{
398
+ name: z.ZodString;
399
+ url: z.ZodString;
400
+ }, z.core.$strict>;
401
+ keys: z.ZodRecord<z.ZodString, z.ZodString>;
402
+ audiences: z.ZodDefault<z.ZodArray<z.ZodString>>;
403
+ }, z.core.$strict>>;
404
+ released: z.ZodOptional<z.ZodString>;
405
+ processing: z.ZodOptional<z.ZodObject<{
406
+ purpose: z.ZodObject<{
407
+ sv: z.ZodString;
408
+ en: z.ZodString;
409
+ }, z.core.$strict>;
410
+ legalBasis: z.ZodEnum<{
411
+ consent: "consent";
412
+ contract: "contract";
413
+ legalObligation: "legalObligation";
414
+ legitimateInterest: "legitimateInterest";
415
+ }>;
416
+ legitimateInterest: z.ZodOptional<z.ZodObject<{
417
+ sv: z.ZodString;
418
+ en: z.ZodString;
419
+ }, z.core.$strict>>;
420
+ retention: z.ZodObject<{
421
+ sv: z.ZodString;
422
+ en: z.ZodString;
423
+ }, z.core.$strict>;
424
+ dataSubjects: z.ZodArray<z.ZodEnum<{
425
+ members: "members";
426
+ residents: "residents";
427
+ }>>;
428
+ }, z.core.$strict>>;
429
+ }, z.core.$strict>;
222
430
  /**
223
431
  * A theme entry. Themes install through the same download-and-verify path and
224
432
  * are listed in the same index; what happens after the bytes are verified is
@@ -248,8 +456,203 @@ export declare const catalogThemeEntrySchema: z.ZodObject<{
248
456
  type: z.ZodLiteral<"theme">;
249
457
  contract: z.ZodOptional<z.ZodString>;
250
458
  extends: z.ZodOptional<z.ZodString>;
251
- }, z.core.$strict>;
252
- export declare const catalogEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
459
+ }, z.core.$strict>;
460
+ export declare const catalogEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
461
+ id: z.ZodString;
462
+ version: z.ZodString;
463
+ name: z.ZodObject<{
464
+ sv: z.ZodString;
465
+ en: z.ZodString;
466
+ }, z.core.$strict>;
467
+ description: z.ZodObject<{
468
+ sv: z.ZodString;
469
+ en: z.ZodString;
470
+ }, z.core.$strict>;
471
+ artifact: z.ZodObject<{
472
+ url: z.ZodString;
473
+ sha512: z.ZodString;
474
+ bytes: z.ZodOptional<z.ZodInt>;
475
+ }, z.core.$strict>;
476
+ homepage: z.ZodOptional<z.ZodString>;
477
+ deprecated: z.ZodDefault<z.ZodBoolean>;
478
+ type: z.ZodLiteral<"plugin">;
479
+ packageName: z.ZodString;
480
+ apiVersion: z.ZodInt;
481
+ permissions: z.ZodDefault<z.ZodArray<z.ZodEnum<{
482
+ "addressBook:proposeImport": "addressBook:proposeImport";
483
+ "addressBook:read": "addressBook:read";
484
+ "addressBook:readContact": "addressBook:readContact";
485
+ "addresses:read": "addresses:read";
486
+ "bookings:readAvailability": "bookings:readAvailability";
487
+ "calendar:read": "calendar:read";
488
+ "finances:read": "finances:read";
489
+ "finances:recordDelivery": "finances:recordDelivery";
490
+ "jobs:schedule": "jobs:schedule";
491
+ "mail:send": "mail:send";
492
+ "media:read": "media:read";
493
+ "news:read": "news:read";
494
+ "site:blocks": "site:blocks";
495
+ "sms:send": "sms:send";
496
+ "themes:install": "themes:install";
497
+ }>>>;
498
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
499
+ account: "account";
500
+ apartment: "apartment";
501
+ auditTrail: "auditTrail";
502
+ email: "email";
503
+ financial: "financial";
504
+ freeText: "freeText";
505
+ health: "health";
506
+ name: "name";
507
+ personalIdentityNumber: "personalIdentityNumber";
508
+ phone: "phone";
509
+ photograph: "photograph";
510
+ postalAddress: "postalAddress";
511
+ protected: "protected";
512
+ residency: "residency";
513
+ }>>>;
514
+ actions: z.ZodDefault<z.ZodArray<z.ZodObject<{
515
+ id: z.ZodString;
516
+ capability: z.ZodString;
517
+ effect: z.ZodEnum<{
518
+ delete: "delete";
519
+ read: "read";
520
+ write: "write";
521
+ }>;
522
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
523
+ account: "account";
524
+ apartment: "apartment";
525
+ auditTrail: "auditTrail";
526
+ email: "email";
527
+ financial: "financial";
528
+ freeText: "freeText";
529
+ health: "health";
530
+ name: "name";
531
+ personalIdentityNumber: "personalIdentityNumber";
532
+ phone: "phone";
533
+ photograph: "photograph";
534
+ postalAddress: "postalAddress";
535
+ protected: "protected";
536
+ residency: "residency";
537
+ }>>>;
538
+ surfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
539
+ ai: "ai";
540
+ mcp: "mcp";
541
+ ui: "ui";
542
+ }>>>;
543
+ }, z.core.$strict>>>;
544
+ oauthProtectedResource: z.ZodOptional<z.ZodString>;
545
+ extensionPoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
546
+ id: z.ZodString;
547
+ version: z.ZodInt;
548
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
549
+ account: "account";
550
+ apartment: "apartment";
551
+ auditTrail: "auditTrail";
552
+ email: "email";
553
+ financial: "financial";
554
+ freeText: "freeText";
555
+ health: "health";
556
+ name: "name";
557
+ personalIdentityNumber: "personalIdentityNumber";
558
+ phone: "phone";
559
+ photograph: "photograph";
560
+ postalAddress: "postalAddress";
561
+ protected: "protected";
562
+ residency: "residency";
563
+ }>>>;
564
+ title: z.ZodObject<{
565
+ sv: z.ZodString;
566
+ en: z.ZodString;
567
+ }, z.core.$strict>;
568
+ description: z.ZodObject<{
569
+ sv: z.ZodString;
570
+ en: z.ZodString;
571
+ }, z.core.$strict>;
572
+ }, z.core.$strict>>>;
573
+ extends: z.ZodOptional<z.ZodArray<z.ZodObject<{
574
+ plugin: z.ZodString;
575
+ point: z.ZodString;
576
+ version: z.ZodInt;
577
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
578
+ account: "account";
579
+ apartment: "apartment";
580
+ auditTrail: "auditTrail";
581
+ email: "email";
582
+ financial: "financial";
583
+ freeText: "freeText";
584
+ health: "health";
585
+ name: "name";
586
+ personalIdentityNumber: "personalIdentityNumber";
587
+ phone: "phone";
588
+ photograph: "photograph";
589
+ postalAddress: "postalAddress";
590
+ protected: "protected";
591
+ residency: "residency";
592
+ }>>>;
593
+ }, z.core.$strict>>>;
594
+ recipients: z.ZodOptional<z.ZodArray<z.ZodObject<{
595
+ id: z.ZodString;
596
+ origin: z.ZodString;
597
+ purpose: z.ZodObject<{
598
+ sv: z.ZodString;
599
+ en: z.ZodString;
600
+ }, z.core.$strict>;
601
+ personalData: z.ZodArray<z.ZodEnum<{
602
+ account: "account";
603
+ apartment: "apartment";
604
+ auditTrail: "auditTrail";
605
+ email: "email";
606
+ financial: "financial";
607
+ freeText: "freeText";
608
+ health: "health";
609
+ name: "name";
610
+ personalIdentityNumber: "personalIdentityNumber";
611
+ phone: "phone";
612
+ photograph: "photograph";
613
+ postalAddress: "postalAddress";
614
+ protected: "protected";
615
+ residency: "residency";
616
+ }>>;
617
+ }, z.core.$strict>>>;
618
+ deviceRoutes: z.ZodOptional<z.ZodArray<z.ZodObject<{
619
+ id: z.ZodString;
620
+ path: z.ZodString;
621
+ }, z.core.$strict>>>;
622
+ ai: z.ZodDefault<z.ZodBoolean>;
623
+ licence: z.ZodOptional<z.ZodObject<{
624
+ entitlement: z.ZodString;
625
+ issuer: z.ZodObject<{
626
+ name: z.ZodString;
627
+ url: z.ZodString;
628
+ }, z.core.$strict>;
629
+ keys: z.ZodRecord<z.ZodString, z.ZodString>;
630
+ audiences: z.ZodDefault<z.ZodArray<z.ZodString>>;
631
+ }, z.core.$strict>>;
632
+ released: z.ZodOptional<z.ZodString>;
633
+ }, z.core.$strict>, z.ZodObject<{
634
+ id: z.ZodString;
635
+ version: z.ZodString;
636
+ name: z.ZodObject<{
637
+ sv: z.ZodString;
638
+ en: z.ZodString;
639
+ }, z.core.$strict>;
640
+ description: z.ZodObject<{
641
+ sv: z.ZodString;
642
+ en: z.ZodString;
643
+ }, z.core.$strict>;
644
+ artifact: z.ZodObject<{
645
+ url: z.ZodString;
646
+ sha512: z.ZodString;
647
+ bytes: z.ZodOptional<z.ZodInt>;
648
+ }, z.core.$strict>;
649
+ homepage: z.ZodOptional<z.ZodString>;
650
+ deprecated: z.ZodDefault<z.ZodBoolean>;
651
+ type: z.ZodLiteral<"theme">;
652
+ contract: z.ZodOptional<z.ZodString>;
653
+ extends: z.ZodOptional<z.ZodString>;
654
+ }, z.core.$strict>], "type">;
655
+ export declare const catalogEntryV2Schema: z.ZodDiscriminatedUnion<[z.ZodObject<{
253
656
  id: z.ZodString;
254
657
  version: z.ZodString;
255
658
  name: z.ZodObject<{
@@ -422,6 +825,30 @@ export declare const catalogEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
422
825
  audiences: z.ZodDefault<z.ZodArray<z.ZodString>>;
423
826
  }, z.core.$strict>>;
424
827
  released: z.ZodOptional<z.ZodString>;
828
+ processing: z.ZodOptional<z.ZodObject<{
829
+ purpose: z.ZodObject<{
830
+ sv: z.ZodString;
831
+ en: z.ZodString;
832
+ }, z.core.$strict>;
833
+ legalBasis: z.ZodEnum<{
834
+ consent: "consent";
835
+ contract: "contract";
836
+ legalObligation: "legalObligation";
837
+ legitimateInterest: "legitimateInterest";
838
+ }>;
839
+ legitimateInterest: z.ZodOptional<z.ZodObject<{
840
+ sv: z.ZodString;
841
+ en: z.ZodString;
842
+ }, z.core.$strict>>;
843
+ retention: z.ZodObject<{
844
+ sv: z.ZodString;
845
+ en: z.ZodString;
846
+ }, z.core.$strict>;
847
+ dataSubjects: z.ZodArray<z.ZodEnum<{
848
+ members: "members";
849
+ residents: "residents";
850
+ }>>;
851
+ }, z.core.$strict>>;
425
852
  }, z.core.$strict>, z.ZodObject<{
426
853
  id: z.ZodString;
427
854
  version: z.ZodString;
@@ -444,20 +871,27 @@ export declare const catalogEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
444
871
  contract: z.ZodOptional<z.ZodString>;
445
872
  extends: z.ZodOptional<z.ZodString>;
446
873
  }, z.core.$strict>], "type">;
447
- export type CatalogPluginEntry = z.infer<typeof catalogPluginEntrySchema>;
874
+ /**
875
+ * A plugin entry, as whichever version of the index it came from. A version 1
876
+ * entry is one with no processing and no device routes declared.
877
+ */
878
+ export type CatalogPluginEntry = z.infer<typeof catalogPluginEntryV2Schema>;
448
879
  export type CatalogThemeEntry = z.infer<typeof catalogThemeEntrySchema>;
449
- export type CatalogEntry = z.infer<typeof catalogEntrySchema>;
880
+ export type CatalogEntry = CatalogPluginEntry | CatalogThemeEntry;
450
881
  /**
451
882
  * The index versions this package reads.
452
883
  *
453
884
  * Version 2 adds the fields ADR 0030 lists: `extensionPoints` and `extends`
454
- * (ADR 0030), `recipients` (ADR 0037) and `deviceRoutes` (ADR 0031). An
455
- * instance reads both, and the catalog serves version 1, without the entries
456
- * that need version 2, to instances that have not upgraded.
885
+ * (ADR 0030), `recipients` (ADR 0037) and `deviceRoutes` (ADR 0031), and
886
+ * `processing` (ADR 0035). An instance reads both, and the catalog serves
887
+ * version 1, without the entries that need version 2, to instances that have
888
+ * not upgraded.
457
889
  */
458
890
  export declare const CATALOG_INDEX_VERSIONS: readonly [1, 2];
459
- export declare const catalogSchema: z.ZodObject<{
460
- version: z.ZodLiteral<1 | 2>;
891
+ /** The version of the index this SDK writes and reads first. */
892
+ export declare const CATALOG_INDEX_VERSION = 2;
893
+ export declare const catalogSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
894
+ version: z.ZodLiteral<1>;
461
895
  entries: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
462
896
  id: z.ZodString;
463
897
  version: z.ZodString;
@@ -653,8 +1087,233 @@ export declare const catalogSchema: z.ZodObject<{
653
1087
  contract: z.ZodOptional<z.ZodString>;
654
1088
  extends: z.ZodOptional<z.ZodString>;
655
1089
  }, z.core.$strict>], "type">>;
656
- }, z.core.$strict>;
657
- export type Catalog = z.infer<typeof catalogSchema>;
1090
+ }, z.core.$strict>, z.ZodObject<{
1091
+ version: z.ZodLiteral<2>;
1092
+ entries: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1093
+ id: z.ZodString;
1094
+ version: z.ZodString;
1095
+ name: z.ZodObject<{
1096
+ sv: z.ZodString;
1097
+ en: z.ZodString;
1098
+ }, z.core.$strict>;
1099
+ description: z.ZodObject<{
1100
+ sv: z.ZodString;
1101
+ en: z.ZodString;
1102
+ }, z.core.$strict>;
1103
+ artifact: z.ZodObject<{
1104
+ url: z.ZodString;
1105
+ sha512: z.ZodString;
1106
+ bytes: z.ZodOptional<z.ZodInt>;
1107
+ }, z.core.$strict>;
1108
+ homepage: z.ZodOptional<z.ZodString>;
1109
+ deprecated: z.ZodDefault<z.ZodBoolean>;
1110
+ type: z.ZodLiteral<"plugin">;
1111
+ packageName: z.ZodString;
1112
+ apiVersion: z.ZodInt;
1113
+ permissions: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1114
+ "addressBook:proposeImport": "addressBook:proposeImport";
1115
+ "addressBook:read": "addressBook:read";
1116
+ "addressBook:readContact": "addressBook:readContact";
1117
+ "addresses:read": "addresses:read";
1118
+ "bookings:readAvailability": "bookings:readAvailability";
1119
+ "calendar:read": "calendar:read";
1120
+ "finances:read": "finances:read";
1121
+ "finances:recordDelivery": "finances:recordDelivery";
1122
+ "jobs:schedule": "jobs:schedule";
1123
+ "mail:send": "mail:send";
1124
+ "media:read": "media:read";
1125
+ "news:read": "news:read";
1126
+ "site:blocks": "site:blocks";
1127
+ "sms:send": "sms:send";
1128
+ "themes:install": "themes:install";
1129
+ }>>>;
1130
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1131
+ account: "account";
1132
+ apartment: "apartment";
1133
+ auditTrail: "auditTrail";
1134
+ email: "email";
1135
+ financial: "financial";
1136
+ freeText: "freeText";
1137
+ health: "health";
1138
+ name: "name";
1139
+ personalIdentityNumber: "personalIdentityNumber";
1140
+ phone: "phone";
1141
+ photograph: "photograph";
1142
+ postalAddress: "postalAddress";
1143
+ protected: "protected";
1144
+ residency: "residency";
1145
+ }>>>;
1146
+ actions: z.ZodDefault<z.ZodArray<z.ZodObject<{
1147
+ id: z.ZodString;
1148
+ capability: z.ZodString;
1149
+ effect: z.ZodEnum<{
1150
+ delete: "delete";
1151
+ read: "read";
1152
+ write: "write";
1153
+ }>;
1154
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1155
+ account: "account";
1156
+ apartment: "apartment";
1157
+ auditTrail: "auditTrail";
1158
+ email: "email";
1159
+ financial: "financial";
1160
+ freeText: "freeText";
1161
+ health: "health";
1162
+ name: "name";
1163
+ personalIdentityNumber: "personalIdentityNumber";
1164
+ phone: "phone";
1165
+ photograph: "photograph";
1166
+ postalAddress: "postalAddress";
1167
+ protected: "protected";
1168
+ residency: "residency";
1169
+ }>>>;
1170
+ surfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1171
+ ai: "ai";
1172
+ mcp: "mcp";
1173
+ ui: "ui";
1174
+ }>>>;
1175
+ }, z.core.$strict>>>;
1176
+ oauthProtectedResource: z.ZodOptional<z.ZodString>;
1177
+ extensionPoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
1178
+ id: z.ZodString;
1179
+ version: z.ZodInt;
1180
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1181
+ account: "account";
1182
+ apartment: "apartment";
1183
+ auditTrail: "auditTrail";
1184
+ email: "email";
1185
+ financial: "financial";
1186
+ freeText: "freeText";
1187
+ health: "health";
1188
+ name: "name";
1189
+ personalIdentityNumber: "personalIdentityNumber";
1190
+ phone: "phone";
1191
+ photograph: "photograph";
1192
+ postalAddress: "postalAddress";
1193
+ protected: "protected";
1194
+ residency: "residency";
1195
+ }>>>;
1196
+ title: z.ZodObject<{
1197
+ sv: z.ZodString;
1198
+ en: z.ZodString;
1199
+ }, z.core.$strict>;
1200
+ description: z.ZodObject<{
1201
+ sv: z.ZodString;
1202
+ en: z.ZodString;
1203
+ }, z.core.$strict>;
1204
+ }, z.core.$strict>>>;
1205
+ extends: z.ZodOptional<z.ZodArray<z.ZodObject<{
1206
+ plugin: z.ZodString;
1207
+ point: z.ZodString;
1208
+ version: z.ZodInt;
1209
+ personalData: z.ZodDefault<z.ZodArray<z.ZodEnum<{
1210
+ account: "account";
1211
+ apartment: "apartment";
1212
+ auditTrail: "auditTrail";
1213
+ email: "email";
1214
+ financial: "financial";
1215
+ freeText: "freeText";
1216
+ health: "health";
1217
+ name: "name";
1218
+ personalIdentityNumber: "personalIdentityNumber";
1219
+ phone: "phone";
1220
+ photograph: "photograph";
1221
+ postalAddress: "postalAddress";
1222
+ protected: "protected";
1223
+ residency: "residency";
1224
+ }>>>;
1225
+ }, z.core.$strict>>>;
1226
+ recipients: z.ZodOptional<z.ZodArray<z.ZodObject<{
1227
+ id: z.ZodString;
1228
+ origin: z.ZodString;
1229
+ purpose: z.ZodObject<{
1230
+ sv: z.ZodString;
1231
+ en: z.ZodString;
1232
+ }, z.core.$strict>;
1233
+ personalData: z.ZodArray<z.ZodEnum<{
1234
+ account: "account";
1235
+ apartment: "apartment";
1236
+ auditTrail: "auditTrail";
1237
+ email: "email";
1238
+ financial: "financial";
1239
+ freeText: "freeText";
1240
+ health: "health";
1241
+ name: "name";
1242
+ personalIdentityNumber: "personalIdentityNumber";
1243
+ phone: "phone";
1244
+ photograph: "photograph";
1245
+ postalAddress: "postalAddress";
1246
+ protected: "protected";
1247
+ residency: "residency";
1248
+ }>>;
1249
+ }, z.core.$strict>>>;
1250
+ deviceRoutes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1251
+ id: z.ZodString;
1252
+ path: z.ZodString;
1253
+ }, z.core.$strict>>>;
1254
+ ai: z.ZodDefault<z.ZodBoolean>;
1255
+ licence: z.ZodOptional<z.ZodObject<{
1256
+ entitlement: z.ZodString;
1257
+ issuer: z.ZodObject<{
1258
+ name: z.ZodString;
1259
+ url: z.ZodString;
1260
+ }, z.core.$strict>;
1261
+ keys: z.ZodRecord<z.ZodString, z.ZodString>;
1262
+ audiences: z.ZodDefault<z.ZodArray<z.ZodString>>;
1263
+ }, z.core.$strict>>;
1264
+ released: z.ZodOptional<z.ZodString>;
1265
+ processing: z.ZodOptional<z.ZodObject<{
1266
+ purpose: z.ZodObject<{
1267
+ sv: z.ZodString;
1268
+ en: z.ZodString;
1269
+ }, z.core.$strict>;
1270
+ legalBasis: z.ZodEnum<{
1271
+ consent: "consent";
1272
+ contract: "contract";
1273
+ legalObligation: "legalObligation";
1274
+ legitimateInterest: "legitimateInterest";
1275
+ }>;
1276
+ legitimateInterest: z.ZodOptional<z.ZodObject<{
1277
+ sv: z.ZodString;
1278
+ en: z.ZodString;
1279
+ }, z.core.$strict>>;
1280
+ retention: z.ZodObject<{
1281
+ sv: z.ZodString;
1282
+ en: z.ZodString;
1283
+ }, z.core.$strict>;
1284
+ dataSubjects: z.ZodArray<z.ZodEnum<{
1285
+ members: "members";
1286
+ residents: "residents";
1287
+ }>>;
1288
+ }, z.core.$strict>>;
1289
+ }, z.core.$strict>, z.ZodObject<{
1290
+ id: z.ZodString;
1291
+ version: z.ZodString;
1292
+ name: z.ZodObject<{
1293
+ sv: z.ZodString;
1294
+ en: z.ZodString;
1295
+ }, z.core.$strict>;
1296
+ description: z.ZodObject<{
1297
+ sv: z.ZodString;
1298
+ en: z.ZodString;
1299
+ }, z.core.$strict>;
1300
+ artifact: z.ZodObject<{
1301
+ url: z.ZodString;
1302
+ sha512: z.ZodString;
1303
+ bytes: z.ZodOptional<z.ZodInt>;
1304
+ }, z.core.$strict>;
1305
+ homepage: z.ZodOptional<z.ZodString>;
1306
+ deprecated: z.ZodDefault<z.ZodBoolean>;
1307
+ type: z.ZodLiteral<"theme">;
1308
+ contract: z.ZodOptional<z.ZodString>;
1309
+ extends: z.ZodOptional<z.ZodString>;
1310
+ }, z.core.$strict>], "type">>;
1311
+ }, z.core.$strict>], "version">;
1312
+ /** An index of either version, read as one shape. */
1313
+ export interface Catalog {
1314
+ version: z.infer<typeof catalogSchema>["version"];
1315
+ entries: CatalogEntry[];
1316
+ }
658
1317
  /**
659
1318
  * The refusals of an index that its reader is told in their own language.
660
1319
  *