@betterportal/config-manager 10.1.70 → 10.2.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.
@@ -1,3 +1,2718 @@
1
- import type { BetterPortalRegistry } from "@betterportal/framework";
2
- export declare const registry: BetterPortalRegistry;
1
+ import * as authBootstrap5PageGET from "../bp-routes/auth/_renderer.bootstrap5/GET.js";
2
+ import * as configBootstrap5PageGET from "../bp-routes/config/_renderer.bootstrap5/GET.js";
3
+ import * as configEmbeddedPageGET from "../bp-routes/config/_renderer.embedded/GET.js";
4
+ import * as fragmentsBootstrap5PageGET from "../bp-routes/fragments/_renderer.bootstrap5/GET.js";
5
+ import * as menuBootstrap5PageGET from "../bp-routes/menu/_renderer.bootstrap5/GET.js";
6
+ import * as previewBootstrap5PageGET from "../bp-routes/preview/_renderer.bootstrap5/GET.js";
7
+ import * as routesBootstrap5PageGET from "../bp-routes/routes/_renderer.bootstrap5/GET.js";
8
+ import * as servicesBootstrap5PageGET from "../bp-routes/services/_renderer.bootstrap5/GET.js";
9
+ import * as settingsBootstrap5PageGET from "../bp-routes/settings/_renderer.bootstrap5/GET.js";
10
+ import * as tenantsBootstrap5PageDELETE from "../bp-routes/tenants/_renderer.bootstrap5/DELETE.js";
11
+ export declare const registry: {
12
+ routes: ({
13
+ viewId: string;
14
+ path: string;
15
+ methods: "GET"[];
16
+ paramNames: never[];
17
+ schemas: {};
18
+ methodRoutes: {
19
+ GET: {
20
+ method: "GET";
21
+ operationId: string;
22
+ title: string;
23
+ description: string;
24
+ schemas: {
25
+ response: import("anyvali").ObjectSchema<{
26
+ title: import("anyvali").StringSchema;
27
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
28
+ id: import("anyvali").StringSchema;
29
+ tenantId: import("anyvali").StringSchema;
30
+ title: import("anyvali").StringSchema;
31
+ }>>;
32
+ selectedAppId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
33
+ selectedTenantId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
34
+ authConfigured: import("anyvali").BoolSchema;
35
+ servicePermissions: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
36
+ serviceId: import("anyvali").StringSchema;
37
+ title: import("anyvali").StringSchema;
38
+ hostname: import("anyvali").StringSchema;
39
+ manifestVersion: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
40
+ views: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
41
+ viewId: import("anyvali").StringSchema;
42
+ path: import("anyvali").StringSchema;
43
+ operations: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
44
+ operationId: import("anyvali").StringSchema;
45
+ method: import("anyvali").StringSchema;
46
+ role: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
47
+ requiredPermissions: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
48
+ serviceId: import("anyvali").StringSchema;
49
+ viewId: import("anyvali").StringSchema;
50
+ permissions: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
51
+ }>>;
52
+ }>>;
53
+ }>>;
54
+ }>>;
55
+ currentRoles: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
56
+ id: import("anyvali").StringSchema;
57
+ title: import("anyvali").StringSchema;
58
+ description: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
59
+ permissions: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
60
+ serviceId: import("anyvali").StringSchema;
61
+ viewId: import("anyvali").StringSchema;
62
+ permissions: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["read", "create", "update", "delete"]>>;
63
+ }>>;
64
+ }>>;
65
+ derivedPermissionGrants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
66
+ roleId: import("anyvali").StringSchema;
67
+ serviceId: import("anyvali").StringSchema;
68
+ viewId: import("anyvali").StringSchema;
69
+ permissions: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["read", "create", "update", "delete"]>>;
70
+ requiredBy: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
71
+ serviceId: import("anyvali").StringSchema;
72
+ operationId: import("anyvali").StringSchema;
73
+ method: import("anyvali").StringSchema;
74
+ }>>;
75
+ }>>;
76
+ externalRoleSync: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
77
+ serviceTitle: import("anyvali").StringSchema;
78
+ fragmentUrl: import("anyvali").StringSchema;
79
+ }>>;
80
+ managedRoleSync: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
81
+ serviceTitle: import("anyvali").StringSchema;
82
+ syncUrl: import("anyvali").StringSchema;
83
+ }>>;
84
+ adminApiBase: import("anyvali").StringSchema;
85
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
86
+ }>;
87
+ query: import("anyvali").ObjectSchema<{
88
+ appId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
89
+ }>;
90
+ headers: import("anyvali").ObjectSchema<{}>;
91
+ request: import("anyvali").ObjectSchema<{}>;
92
+ };
93
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, {
94
+ appId?: string | undefined;
95
+ }, Record<string, string>, Record<string, unknown>, {
96
+ title: string;
97
+ apps: {
98
+ id: string;
99
+ tenantId: string;
100
+ title: string;
101
+ }[];
102
+ authConfigured: boolean;
103
+ servicePermissions: {
104
+ serviceId: string;
105
+ title: string;
106
+ hostname: string;
107
+ views: {
108
+ viewId: string;
109
+ path: string;
110
+ operations: {
111
+ operationId: string;
112
+ method: string;
113
+ requiredPermissions: {
114
+ serviceId: string;
115
+ viewId: string;
116
+ permissions: string[];
117
+ }[];
118
+ role?: string | undefined;
119
+ }[];
120
+ }[];
121
+ manifestVersion?: string | undefined;
122
+ }[];
123
+ currentRoles: {
124
+ id: string;
125
+ title: string;
126
+ permissions: {
127
+ serviceId: string;
128
+ viewId: string;
129
+ permissions: ("read" | "create" | "update" | "delete")[];
130
+ }[];
131
+ description?: string | undefined;
132
+ }[];
133
+ derivedPermissionGrants: {
134
+ roleId: string;
135
+ serviceId: string;
136
+ viewId: string;
137
+ permissions: ("read" | "create" | "update" | "delete")[];
138
+ requiredBy: {
139
+ serviceId: string;
140
+ operationId: string;
141
+ method: string;
142
+ }[];
143
+ }[];
144
+ adminApiBase: string;
145
+ selectedAppId?: string | undefined;
146
+ selectedTenantId?: string | undefined;
147
+ externalRoleSync?: {
148
+ serviceTitle: string;
149
+ fragmentUrl: string;
150
+ } | undefined;
151
+ managedRoleSync?: {
152
+ serviceTitle: string;
153
+ syncUrl: string;
154
+ } | undefined;
155
+ serviceBaseUrl?: string | undefined;
156
+ }, unknown, Record<string, unknown>>;
157
+ auth: import("@betterportal/framework").ApiAuthRequirement;
158
+ cacheHints: {
159
+ ttlSeconds: number;
160
+ varyBy: string[];
161
+ };
162
+ demoScenarios: never[];
163
+ dependencies?: undefined;
164
+ };
165
+ DELETE?: undefined;
166
+ POST?: undefined;
167
+ PUT?: undefined;
168
+ };
169
+ handlers: {
170
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, {
171
+ appId?: string | undefined;
172
+ }, Record<string, string>, Record<string, unknown>, {
173
+ title: string;
174
+ apps: {
175
+ id: string;
176
+ tenantId: string;
177
+ title: string;
178
+ }[];
179
+ authConfigured: boolean;
180
+ servicePermissions: {
181
+ serviceId: string;
182
+ title: string;
183
+ hostname: string;
184
+ views: {
185
+ viewId: string;
186
+ path: string;
187
+ operations: {
188
+ operationId: string;
189
+ method: string;
190
+ requiredPermissions: {
191
+ serviceId: string;
192
+ viewId: string;
193
+ permissions: string[];
194
+ }[];
195
+ role?: string | undefined;
196
+ }[];
197
+ }[];
198
+ manifestVersion?: string | undefined;
199
+ }[];
200
+ currentRoles: {
201
+ id: string;
202
+ title: string;
203
+ permissions: {
204
+ serviceId: string;
205
+ viewId: string;
206
+ permissions: ("read" | "create" | "update" | "delete")[];
207
+ }[];
208
+ description?: string | undefined;
209
+ }[];
210
+ derivedPermissionGrants: {
211
+ roleId: string;
212
+ serviceId: string;
213
+ viewId: string;
214
+ permissions: ("read" | "create" | "update" | "delete")[];
215
+ requiredBy: {
216
+ serviceId: string;
217
+ operationId: string;
218
+ method: string;
219
+ }[];
220
+ }[];
221
+ adminApiBase: string;
222
+ selectedAppId?: string | undefined;
223
+ selectedTenantId?: string | undefined;
224
+ externalRoleSync?: {
225
+ serviceTitle: string;
226
+ fragmentUrl: string;
227
+ } | undefined;
228
+ managedRoleSync?: {
229
+ serviceTitle: string;
230
+ syncUrl: string;
231
+ } | undefined;
232
+ serviceBaseUrl?: string | undefined;
233
+ }, unknown, Record<string, unknown>>;
234
+ DELETE?: undefined;
235
+ POST?: undefined;
236
+ PUT?: undefined;
237
+ };
238
+ title: string;
239
+ description: string;
240
+ renderers: {
241
+ bootstrap5: {
242
+ pages: {
243
+ rendererId: string;
244
+ type: "page";
245
+ method: "GET";
246
+ render: typeof authBootstrap5PageGET.render;
247
+ }[];
248
+ components: never[];
249
+ fragments: never[];
250
+ };
251
+ embedded?: undefined;
252
+ };
253
+ } | {
254
+ viewId: string;
255
+ path: string;
256
+ methods: "GET"[];
257
+ paramNames: never[];
258
+ schemas: {};
259
+ methodRoutes: {
260
+ GET: {
261
+ method: "GET";
262
+ operationId: string;
263
+ title: string;
264
+ description: string;
265
+ schemas: {
266
+ response: import("anyvali").ObjectSchema<{
267
+ title: import("anyvali").StringSchema;
268
+ tenantId: import("anyvali").StringSchema;
269
+ appId: import("anyvali").StringSchema;
270
+ requestTimeoutMs: import("anyvali").IntSchema;
271
+ services: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
272
+ serviceId: import("anyvali").StringSchema;
273
+ bindingId: import("anyvali").StringSchema;
274
+ endpointBaseUrl: import("anyvali").StringSchema;
275
+ deploymentMode: import("anyvali").StringSchema;
276
+ healthUrl: import("anyvali").StringSchema;
277
+ schemaUrl: import("anyvali").StringSchema;
278
+ manifestUrl: import("anyvali").StringSchema;
279
+ }>>;
280
+ }>;
281
+ query: import("anyvali").ObjectSchema<{}>;
282
+ headers: import("anyvali").ObjectSchema<{}>;
283
+ request: import("anyvali").ObjectSchema<{}>;
284
+ };
285
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
286
+ title: string;
287
+ tenantId: string;
288
+ appId: string;
289
+ requestTimeoutMs: number;
290
+ services: {
291
+ serviceId: string;
292
+ bindingId: string;
293
+ endpointBaseUrl: string;
294
+ deploymentMode: string;
295
+ healthUrl: string;
296
+ schemaUrl: string;
297
+ manifestUrl: string;
298
+ }[];
299
+ }, unknown, Record<string, unknown>>;
300
+ auth: import("@betterportal/framework").ApiAuthRequirement;
301
+ cacheHints: {
302
+ ttlSeconds: number;
303
+ varyBy: string[];
304
+ };
305
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
306
+ title: string;
307
+ tenantId: string;
308
+ appId: string;
309
+ requestTimeoutMs: number;
310
+ services: {
311
+ serviceId: string;
312
+ bindingId: string;
313
+ endpointBaseUrl: string;
314
+ deploymentMode: string;
315
+ healthUrl: string;
316
+ schemaUrl: string;
317
+ manifestUrl: string;
318
+ }[];
319
+ }>[];
320
+ dependencies?: undefined;
321
+ };
322
+ DELETE?: undefined;
323
+ POST?: undefined;
324
+ PUT?: undefined;
325
+ };
326
+ handlers: {
327
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
328
+ title: string;
329
+ tenantId: string;
330
+ appId: string;
331
+ requestTimeoutMs: number;
332
+ services: {
333
+ serviceId: string;
334
+ bindingId: string;
335
+ endpointBaseUrl: string;
336
+ deploymentMode: string;
337
+ healthUrl: string;
338
+ schemaUrl: string;
339
+ manifestUrl: string;
340
+ }[];
341
+ }, unknown, Record<string, unknown>>;
342
+ DELETE?: undefined;
343
+ POST?: undefined;
344
+ PUT?: undefined;
345
+ };
346
+ title: string;
347
+ description: string;
348
+ renderers: {
349
+ bootstrap5: {
350
+ pages: {
351
+ rendererId: string;
352
+ type: "page";
353
+ method: "GET";
354
+ render: typeof configBootstrap5PageGET.render;
355
+ }[];
356
+ components: never[];
357
+ fragments: never[];
358
+ };
359
+ embedded: {
360
+ pages: {
361
+ rendererId: string;
362
+ type: "page";
363
+ method: "GET";
364
+ render: typeof configEmbeddedPageGET.render;
365
+ }[];
366
+ components: never[];
367
+ fragments: never[];
368
+ };
369
+ };
370
+ } | {
371
+ viewId: string;
372
+ path: string;
373
+ methods: "GET"[];
374
+ paramNames: never[];
375
+ schemas: {};
376
+ methodRoutes: {
377
+ GET: {
378
+ method: "GET";
379
+ operationId: string;
380
+ title: string;
381
+ description: string;
382
+ schemas: {
383
+ response: import("anyvali").ObjectSchema<{
384
+ title: import("anyvali").StringSchema;
385
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
386
+ id: import("anyvali").StringSchema;
387
+ title: import("anyvali").StringSchema;
388
+ tenantId: import("anyvali").StringSchema;
389
+ }>>;
390
+ selectedAppId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
391
+ adminApiBase: import("anyvali").StringSchema;
392
+ serviceBaseUrl: import("anyvali").StringSchema;
393
+ }>;
394
+ query?: undefined;
395
+ headers?: undefined;
396
+ request?: undefined;
397
+ };
398
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
399
+ title: string;
400
+ apps: {
401
+ id: string;
402
+ title: string;
403
+ tenantId: string;
404
+ }[];
405
+ adminApiBase: string;
406
+ serviceBaseUrl: string;
407
+ selectedAppId?: string | undefined;
408
+ }, unknown, Record<string, unknown>>;
409
+ auth: import("@betterportal/framework").ApiAuthRequirement;
410
+ cacheHints: {
411
+ ttlSeconds: number;
412
+ varyBy: string[];
413
+ };
414
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
415
+ title: string;
416
+ apps: {
417
+ id: string;
418
+ title: string;
419
+ tenantId: string;
420
+ }[];
421
+ adminApiBase: string;
422
+ serviceBaseUrl: string;
423
+ selectedAppId?: string | undefined;
424
+ }>[];
425
+ dependencies?: undefined;
426
+ };
427
+ DELETE?: undefined;
428
+ POST?: undefined;
429
+ PUT?: undefined;
430
+ };
431
+ handlers: {
432
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
433
+ title: string;
434
+ apps: {
435
+ id: string;
436
+ title: string;
437
+ tenantId: string;
438
+ }[];
439
+ adminApiBase: string;
440
+ serviceBaseUrl: string;
441
+ selectedAppId?: string | undefined;
442
+ }, unknown, Record<string, unknown>>;
443
+ DELETE?: undefined;
444
+ POST?: undefined;
445
+ PUT?: undefined;
446
+ };
447
+ title: string;
448
+ description: string;
449
+ renderers: {
450
+ bootstrap5: {
451
+ pages: {
452
+ rendererId: string;
453
+ type: "page";
454
+ method: "GET";
455
+ render: typeof fragmentsBootstrap5PageGET.render;
456
+ }[];
457
+ components: never[];
458
+ fragments: never[];
459
+ };
460
+ embedded?: undefined;
461
+ };
462
+ } | {
463
+ viewId: string;
464
+ path: string;
465
+ methods: "GET"[];
466
+ paramNames: never[];
467
+ schemas: {};
468
+ methodRoutes: {
469
+ GET: {
470
+ method: "GET";
471
+ operationId: string;
472
+ title: string;
473
+ description: string;
474
+ schemas: {
475
+ response: import("anyvali").ObjectSchema<{
476
+ title: import("anyvali").StringSchema;
477
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
478
+ id: import("anyvali").StringSchema;
479
+ title: import("anyvali").StringSchema;
480
+ tenantId: import("anyvali").StringSchema;
481
+ }>>;
482
+ selectedAppId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
483
+ menu: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
484
+ id: import("anyvali").StringSchema;
485
+ type: import("anyvali").StringSchema;
486
+ title: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
487
+ routeId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
488
+ href: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
489
+ enabled: import("anyvali").BoolSchema;
490
+ defaultExpanded: import("anyvali").OptionalSchema<import("anyvali").BoolSchema>;
491
+ }>>;
492
+ routes: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
493
+ id: import("anyvali").StringSchema;
494
+ path: import("anyvali").StringSchema;
495
+ title: import("anyvali").StringSchema;
496
+ }>>;
497
+ adminApiBase: import("anyvali").StringSchema;
498
+ serviceBaseUrl: import("anyvali").StringSchema;
499
+ }>;
500
+ query?: undefined;
501
+ headers?: undefined;
502
+ request?: undefined;
503
+ };
504
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
505
+ title: string;
506
+ apps: {
507
+ id: string;
508
+ title: string;
509
+ tenantId: string;
510
+ }[];
511
+ menu: {
512
+ id: string;
513
+ type: string;
514
+ enabled: boolean;
515
+ title?: string | undefined;
516
+ routeId?: string | undefined;
517
+ href?: string | undefined;
518
+ defaultExpanded?: boolean | undefined;
519
+ }[];
520
+ routes: {
521
+ id: string;
522
+ path: string;
523
+ title: string;
524
+ }[];
525
+ adminApiBase: string;
526
+ serviceBaseUrl: string;
527
+ selectedAppId?: string | undefined;
528
+ }, unknown, Record<string, unknown>>;
529
+ auth: import("@betterportal/framework").ApiAuthRequirement;
530
+ cacheHints: {
531
+ ttlSeconds: number;
532
+ varyBy: string[];
533
+ };
534
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
535
+ title: string;
536
+ apps: {
537
+ id: string;
538
+ title: string;
539
+ tenantId: string;
540
+ }[];
541
+ menu: {
542
+ id: string;
543
+ type: string;
544
+ enabled: boolean;
545
+ title?: string | undefined;
546
+ routeId?: string | undefined;
547
+ href?: string | undefined;
548
+ defaultExpanded?: boolean | undefined;
549
+ }[];
550
+ routes: {
551
+ id: string;
552
+ path: string;
553
+ title: string;
554
+ }[];
555
+ adminApiBase: string;
556
+ serviceBaseUrl: string;
557
+ selectedAppId?: string | undefined;
558
+ }>[];
559
+ dependencies?: undefined;
560
+ };
561
+ DELETE?: undefined;
562
+ POST?: undefined;
563
+ PUT?: undefined;
564
+ };
565
+ handlers: {
566
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
567
+ title: string;
568
+ apps: {
569
+ id: string;
570
+ title: string;
571
+ tenantId: string;
572
+ }[];
573
+ menu: {
574
+ id: string;
575
+ type: string;
576
+ enabled: boolean;
577
+ title?: string | undefined;
578
+ routeId?: string | undefined;
579
+ href?: string | undefined;
580
+ defaultExpanded?: boolean | undefined;
581
+ }[];
582
+ routes: {
583
+ id: string;
584
+ path: string;
585
+ title: string;
586
+ }[];
587
+ adminApiBase: string;
588
+ serviceBaseUrl: string;
589
+ selectedAppId?: string | undefined;
590
+ }, unknown, Record<string, unknown>>;
591
+ DELETE?: undefined;
592
+ POST?: undefined;
593
+ PUT?: undefined;
594
+ };
595
+ title: string;
596
+ description: string;
597
+ renderers: {
598
+ bootstrap5: {
599
+ pages: {
600
+ rendererId: string;
601
+ type: "page";
602
+ method: "GET";
603
+ render: typeof menuBootstrap5PageGET.render;
604
+ }[];
605
+ components: never[];
606
+ fragments: never[];
607
+ };
608
+ embedded?: undefined;
609
+ };
610
+ } | {
611
+ viewId: string;
612
+ path: string;
613
+ methods: "GET"[];
614
+ paramNames: never[];
615
+ schemas: {};
616
+ methodRoutes: {
617
+ GET: {
618
+ method: "GET";
619
+ operationId: string;
620
+ title: string;
621
+ description: string;
622
+ schemas: {
623
+ response: import("anyvali").ObjectSchema<{
624
+ title: import("anyvali").StringSchema;
625
+ services: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
626
+ serviceId: import("anyvali").StringSchema;
627
+ endpointBaseUrl: import("anyvali").StringSchema;
628
+ views: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
629
+ viewId: import("anyvali").StringSchema;
630
+ title: import("anyvali").StringSchema;
631
+ path: import("anyvali").StringSchema;
632
+ renderers: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
633
+ components: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
634
+ hasFragments: import("anyvali").BoolSchema;
635
+ demoScenarios: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
636
+ id: import("anyvali").StringSchema;
637
+ title: import("anyvali").StringSchema;
638
+ }>>;
639
+ }>>;
640
+ }>>;
641
+ }>;
642
+ query?: undefined;
643
+ headers?: undefined;
644
+ request?: undefined;
645
+ };
646
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
647
+ title: string;
648
+ services: {
649
+ serviceId: string;
650
+ endpointBaseUrl: string;
651
+ views: {
652
+ viewId: string;
653
+ title: string;
654
+ path: string;
655
+ renderers: string[];
656
+ components: string[];
657
+ hasFragments: boolean;
658
+ demoScenarios: {
659
+ id: string;
660
+ title: string;
661
+ }[];
662
+ }[];
663
+ }[];
664
+ }, unknown, Record<string, unknown>>;
665
+ auth: import("@betterportal/framework").ApiAuthRequirement;
666
+ cacheHints: {
667
+ ttlSeconds: number;
668
+ varyBy: string[];
669
+ };
670
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
671
+ title: string;
672
+ services: {
673
+ serviceId: string;
674
+ endpointBaseUrl: string;
675
+ views: {
676
+ viewId: string;
677
+ title: string;
678
+ path: string;
679
+ renderers: string[];
680
+ components: string[];
681
+ hasFragments: boolean;
682
+ demoScenarios: {
683
+ id: string;
684
+ title: string;
685
+ }[];
686
+ }[];
687
+ }[];
688
+ }>[];
689
+ dependencies?: undefined;
690
+ };
691
+ DELETE?: undefined;
692
+ POST?: undefined;
693
+ PUT?: undefined;
694
+ };
695
+ handlers: {
696
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
697
+ title: string;
698
+ services: {
699
+ serviceId: string;
700
+ endpointBaseUrl: string;
701
+ views: {
702
+ viewId: string;
703
+ title: string;
704
+ path: string;
705
+ renderers: string[];
706
+ components: string[];
707
+ hasFragments: boolean;
708
+ demoScenarios: {
709
+ id: string;
710
+ title: string;
711
+ }[];
712
+ }[];
713
+ }[];
714
+ }, unknown, Record<string, unknown>>;
715
+ DELETE?: undefined;
716
+ POST?: undefined;
717
+ PUT?: undefined;
718
+ };
719
+ title: string;
720
+ description: string;
721
+ renderers: {
722
+ bootstrap5: {
723
+ pages: {
724
+ rendererId: string;
725
+ type: "page";
726
+ method: "GET";
727
+ render: typeof previewBootstrap5PageGET.render;
728
+ }[];
729
+ components: never[];
730
+ fragments: never[];
731
+ };
732
+ embedded?: undefined;
733
+ };
734
+ } | {
735
+ viewId: string;
736
+ path: string;
737
+ methods: "GET"[];
738
+ paramNames: never[];
739
+ schemas: {};
740
+ methodRoutes: {
741
+ GET: {
742
+ method: "GET";
743
+ operationId: string;
744
+ title: string;
745
+ description: string;
746
+ schemas: {
747
+ response: import("anyvali").ObjectSchema<{
748
+ title: import("anyvali").StringSchema;
749
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
750
+ id: import("anyvali").StringSchema;
751
+ title: import("anyvali").StringSchema;
752
+ tenantId: import("anyvali").StringSchema;
753
+ }>>;
754
+ selectedAppId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
755
+ openApiServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
756
+ routes: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
757
+ id: import("anyvali").StringSchema;
758
+ kind: import("anyvali").EnumSchema<readonly ["page", "api"]>;
759
+ path: import("anyvali").StringSchema;
760
+ serviceId: import("anyvali").StringSchema;
761
+ viewId: import("anyvali").StringSchema;
762
+ targetPath: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
763
+ servicePathVariant: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
764
+ fixedParams: import("anyvali").RecordSchema<import("anyvali").StringSchema>;
765
+ operations: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
766
+ methods: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
767
+ query: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
768
+ title: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
769
+ renderable: import("anyvali").BoolSchema;
770
+ enabled: import("anyvali").BoolSchema;
771
+ }>>;
772
+ availableServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
773
+ id: import("anyvali").StringSchema;
774
+ title: import("anyvali").StringSchema;
775
+ hostname: import("anyvali").StringSchema;
776
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
777
+ manifestLoaded: import("anyvali").BoolSchema;
778
+ views: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
779
+ viewId: import("anyvali").StringSchema;
780
+ operationId: import("anyvali").StringSchema;
781
+ title: import("anyvali").StringSchema;
782
+ description: import("anyvali").StringSchema;
783
+ path: import("anyvali").StringSchema;
784
+ pathVariants: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
785
+ paramsSchema: import("anyvali").OptionalSchema<import("anyvali").BaseSchema<unknown, import("@betterportal/framework").JsonObject>>;
786
+ method: import("anyvali").StringSchema;
787
+ renderable: import("anyvali").BoolSchema;
788
+ dependencies: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
789
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
790
+ operationId: import("anyvali").StringSchema;
791
+ method: import("anyvali").EnumSchema<readonly ["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"]>;
792
+ }>>;
793
+ }>>;
794
+ }>>;
795
+ dependencyWarnings: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
796
+ adminApiBase: import("anyvali").StringSchema;
797
+ serviceBaseUrl: import("anyvali").StringSchema;
798
+ }>;
799
+ query?: undefined;
800
+ headers?: undefined;
801
+ request?: undefined;
802
+ };
803
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
804
+ title: string;
805
+ apps: {
806
+ id: string;
807
+ title: string;
808
+ tenantId: string;
809
+ }[];
810
+ routes: {
811
+ id: string;
812
+ kind: "page" | "api";
813
+ path: string;
814
+ serviceId: string;
815
+ viewId: string;
816
+ fixedParams: Record<string, string>;
817
+ operations: string[];
818
+ methods: string[];
819
+ renderable: boolean;
820
+ enabled: boolean;
821
+ targetPath?: string | undefined;
822
+ servicePathVariant?: string | undefined;
823
+ query?: string | undefined;
824
+ title?: string | undefined;
825
+ }[];
826
+ availableServices: {
827
+ id: string;
828
+ title: string;
829
+ hostname: string;
830
+ manifestLoaded: boolean;
831
+ views: {
832
+ viewId: string;
833
+ operationId: string;
834
+ title: string;
835
+ description: string;
836
+ path: string;
837
+ pathVariants: string[];
838
+ method: string;
839
+ renderable: boolean;
840
+ dependencies: {
841
+ operationId: string;
842
+ method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS";
843
+ serviceId?: string | undefined;
844
+ }[];
845
+ paramsSchema?: import("@betterportal/framework").JsonObject | undefined;
846
+ }[];
847
+ serviceId?: string | undefined;
848
+ }[];
849
+ dependencyWarnings: string[];
850
+ adminApiBase: string;
851
+ serviceBaseUrl: string;
852
+ selectedAppId?: string | undefined;
853
+ openApiServiceId?: string | undefined;
854
+ }, unknown, Record<string, unknown>>;
855
+ auth: import("@betterportal/framework").ApiAuthRequirement;
856
+ cacheHints: {
857
+ ttlSeconds: number;
858
+ varyBy: string[];
859
+ };
860
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
861
+ title: string;
862
+ apps: {
863
+ id: string;
864
+ title: string;
865
+ tenantId: string;
866
+ }[];
867
+ routes: {
868
+ id: string;
869
+ kind: "page" | "api";
870
+ path: string;
871
+ serviceId: string;
872
+ viewId: string;
873
+ fixedParams: Record<string, string>;
874
+ operations: string[];
875
+ methods: string[];
876
+ renderable: boolean;
877
+ enabled: boolean;
878
+ targetPath?: string | undefined;
879
+ servicePathVariant?: string | undefined;
880
+ query?: string | undefined;
881
+ title?: string | undefined;
882
+ }[];
883
+ availableServices: {
884
+ id: string;
885
+ title: string;
886
+ hostname: string;
887
+ manifestLoaded: boolean;
888
+ views: {
889
+ viewId: string;
890
+ operationId: string;
891
+ title: string;
892
+ description: string;
893
+ path: string;
894
+ pathVariants: string[];
895
+ method: string;
896
+ renderable: boolean;
897
+ dependencies: {
898
+ operationId: string;
899
+ method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS";
900
+ serviceId?: string | undefined;
901
+ }[];
902
+ paramsSchema?: import("@betterportal/framework").JsonObject | undefined;
903
+ }[];
904
+ serviceId?: string | undefined;
905
+ }[];
906
+ dependencyWarnings: string[];
907
+ adminApiBase: string;
908
+ serviceBaseUrl: string;
909
+ selectedAppId?: string | undefined;
910
+ openApiServiceId?: string | undefined;
911
+ }>[];
912
+ dependencies?: undefined;
913
+ };
914
+ DELETE?: undefined;
915
+ POST?: undefined;
916
+ PUT?: undefined;
917
+ };
918
+ handlers: {
919
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
920
+ title: string;
921
+ apps: {
922
+ id: string;
923
+ title: string;
924
+ tenantId: string;
925
+ }[];
926
+ routes: {
927
+ id: string;
928
+ kind: "page" | "api";
929
+ path: string;
930
+ serviceId: string;
931
+ viewId: string;
932
+ fixedParams: Record<string, string>;
933
+ operations: string[];
934
+ methods: string[];
935
+ renderable: boolean;
936
+ enabled: boolean;
937
+ targetPath?: string | undefined;
938
+ servicePathVariant?: string | undefined;
939
+ query?: string | undefined;
940
+ title?: string | undefined;
941
+ }[];
942
+ availableServices: {
943
+ id: string;
944
+ title: string;
945
+ hostname: string;
946
+ manifestLoaded: boolean;
947
+ views: {
948
+ viewId: string;
949
+ operationId: string;
950
+ title: string;
951
+ description: string;
952
+ path: string;
953
+ pathVariants: string[];
954
+ method: string;
955
+ renderable: boolean;
956
+ dependencies: {
957
+ operationId: string;
958
+ method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS";
959
+ serviceId?: string | undefined;
960
+ }[];
961
+ paramsSchema?: import("@betterportal/framework").JsonObject | undefined;
962
+ }[];
963
+ serviceId?: string | undefined;
964
+ }[];
965
+ dependencyWarnings: string[];
966
+ adminApiBase: string;
967
+ serviceBaseUrl: string;
968
+ selectedAppId?: string | undefined;
969
+ openApiServiceId?: string | undefined;
970
+ }, unknown, Record<string, unknown>>;
971
+ DELETE?: undefined;
972
+ POST?: undefined;
973
+ PUT?: undefined;
974
+ };
975
+ title: string;
976
+ description: string;
977
+ renderers: {
978
+ bootstrap5: {
979
+ pages: {
980
+ rendererId: string;
981
+ type: "page";
982
+ method: "GET";
983
+ render: typeof routesBootstrap5PageGET.render;
984
+ }[];
985
+ components: never[];
986
+ fragments: never[];
987
+ };
988
+ embedded?: undefined;
989
+ };
990
+ } | {
991
+ viewId: string;
992
+ path: string;
993
+ methods: "GET"[];
994
+ paramNames: never[];
995
+ schemas: {};
996
+ methodRoutes: {
997
+ GET: {
998
+ method: "GET";
999
+ operationId: string;
1000
+ title: string;
1001
+ description: string;
1002
+ schemas: {
1003
+ response: import("anyvali").ObjectSchema<{
1004
+ title: import("anyvali").StringSchema;
1005
+ services: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1006
+ id: import("anyvali").StringSchema;
1007
+ hostname: import("anyvali").StringSchema;
1008
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1009
+ capabilities: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1010
+ title: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1011
+ description: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1012
+ createdAt: import("anyvali").StringSchema;
1013
+ lastSeenAt: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1014
+ enabled: import("anyvali").BoolSchema;
1015
+ scope: import("anyvali").StringSchema;
1016
+ tenantId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1017
+ pushBase: import("anyvali").StringSchema;
1018
+ supportsCustomUi: import("anyvali").BoolSchema;
1019
+ configManifestKnown: import("anyvali").BoolSchema;
1020
+ hasConfigurableOptions: import("anyvali").BoolSchema;
1021
+ customUiPath: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1022
+ }>>;
1023
+ tenants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1024
+ id: import("anyvali").StringSchema;
1025
+ title: import("anyvali").StringSchema;
1026
+ }>>;
1027
+ selectedTenantId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1028
+ selectedAppId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1029
+ m2mConnections: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1030
+ sourceServiceId: import("anyvali").StringSchema;
1031
+ sourceServiceTitle: import("anyvali").StringSchema;
1032
+ sourceServiceType: import("anyvali").StringSchema;
1033
+ requestId: import("anyvali").StringSchema;
1034
+ title: import("anyvali").StringSchema;
1035
+ contractId: import("anyvali").StringSchema;
1036
+ version: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1037
+ mode: import("anyvali").EnumSchema<readonly ["service", "delegated"]>;
1038
+ methods: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1039
+ permissions: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1040
+ optional: import("anyvali").BoolSchema;
1041
+ status: import("anyvali").EnumSchema<readonly ["connected", "pending", "choice", "unavailable", "stale"]>;
1042
+ message: import("anyvali").StringSchema;
1043
+ bindingId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1044
+ targetServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1045
+ targetViewId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1046
+ candidates: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1047
+ targetServiceId: import("anyvali").StringSchema;
1048
+ targetServiceTitle: import("anyvali").StringSchema;
1049
+ targetServiceType: import("anyvali").StringSchema;
1050
+ targetViewId: import("anyvali").StringSchema;
1051
+ }>>;
1052
+ }>>;
1053
+ sharedServiceCatalog: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1054
+ id: import("anyvali").StringSchema;
1055
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1056
+ title: import("anyvali").StringSchema;
1057
+ description: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1058
+ baseUrl: import("anyvali").StringSchema;
1059
+ owner: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1060
+ category: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1061
+ tags: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1062
+ installed: import("anyvali").BoolSchema;
1063
+ enabled: import("anyvali").BoolSchema;
1064
+ }>>;
1065
+ sharedServiceActivations: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1066
+ id: import("anyvali").StringSchema;
1067
+ tenantId: import("anyvali").StringSchema;
1068
+ appId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1069
+ sharedServiceId: import("anyvali").StringSchema;
1070
+ activatedAt: import("anyvali").StringSchema;
1071
+ enabled: import("anyvali").BoolSchema;
1072
+ }>>;
1073
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1074
+ id: import("anyvali").StringSchema;
1075
+ tenantId: import("anyvali").StringSchema;
1076
+ title: import("anyvali").StringSchema;
1077
+ }>>;
1078
+ tenantApps: import("anyvali").RecordSchema<import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1079
+ id: import("anyvali").StringSchema;
1080
+ title: import("anyvali").StringSchema;
1081
+ shellServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1082
+ }>>>;
1083
+ adminApiBase: import("anyvali").StringSchema;
1084
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1085
+ }>;
1086
+ query?: undefined;
1087
+ headers?: undefined;
1088
+ request?: undefined;
1089
+ };
1090
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1091
+ title: string;
1092
+ services: {
1093
+ id: string;
1094
+ hostname: string;
1095
+ capabilities: string[];
1096
+ createdAt: string;
1097
+ enabled: boolean;
1098
+ scope: string;
1099
+ pushBase: string;
1100
+ supportsCustomUi: boolean;
1101
+ configManifestKnown: boolean;
1102
+ hasConfigurableOptions: boolean;
1103
+ serviceId?: string | undefined;
1104
+ title?: string | undefined;
1105
+ description?: string | undefined;
1106
+ lastSeenAt?: string | undefined;
1107
+ tenantId?: string | undefined;
1108
+ customUiPath?: string | undefined;
1109
+ }[];
1110
+ tenants: {
1111
+ id: string;
1112
+ title: string;
1113
+ }[];
1114
+ m2mConnections: {
1115
+ sourceServiceId: string;
1116
+ sourceServiceTitle: string;
1117
+ sourceServiceType: string;
1118
+ requestId: string;
1119
+ title: string;
1120
+ contractId: string;
1121
+ mode: "service" | "delegated";
1122
+ methods: string[];
1123
+ permissions: string[];
1124
+ optional: boolean;
1125
+ status: "unavailable" | "connected" | "pending" | "choice" | "stale";
1126
+ message: string;
1127
+ candidates: {
1128
+ targetServiceId: string;
1129
+ targetServiceTitle: string;
1130
+ targetServiceType: string;
1131
+ targetViewId: string;
1132
+ }[];
1133
+ version?: string | undefined;
1134
+ bindingId?: string | undefined;
1135
+ targetServiceId?: string | undefined;
1136
+ targetViewId?: string | undefined;
1137
+ }[];
1138
+ sharedServiceCatalog: {
1139
+ id: string;
1140
+ title: string;
1141
+ baseUrl: string;
1142
+ tags: string[];
1143
+ installed: boolean;
1144
+ enabled: boolean;
1145
+ serviceId?: string | undefined;
1146
+ description?: string | undefined;
1147
+ owner?: string | undefined;
1148
+ category?: string | undefined;
1149
+ }[];
1150
+ sharedServiceActivations: {
1151
+ id: string;
1152
+ tenantId: string;
1153
+ sharedServiceId: string;
1154
+ activatedAt: string;
1155
+ enabled: boolean;
1156
+ appId?: string | undefined;
1157
+ }[];
1158
+ apps: {
1159
+ id: string;
1160
+ tenantId: string;
1161
+ title: string;
1162
+ }[];
1163
+ tenantApps: Record<string, {
1164
+ id: string;
1165
+ title: string;
1166
+ shellServiceId?: string | undefined;
1167
+ }[]>;
1168
+ adminApiBase: string;
1169
+ selectedTenantId?: string | undefined;
1170
+ selectedAppId?: string | undefined;
1171
+ serviceBaseUrl?: string | undefined;
1172
+ }, unknown, Record<string, unknown>>;
1173
+ auth: import("@betterportal/framework").ApiAuthRequirement;
1174
+ cacheHints: {
1175
+ ttlSeconds: number;
1176
+ varyBy: string[];
1177
+ };
1178
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
1179
+ title: string;
1180
+ services: {
1181
+ id: string;
1182
+ hostname: string;
1183
+ capabilities: string[];
1184
+ createdAt: string;
1185
+ enabled: boolean;
1186
+ scope: string;
1187
+ pushBase: string;
1188
+ supportsCustomUi: boolean;
1189
+ configManifestKnown: boolean;
1190
+ hasConfigurableOptions: boolean;
1191
+ serviceId?: string | undefined;
1192
+ title?: string | undefined;
1193
+ description?: string | undefined;
1194
+ lastSeenAt?: string | undefined;
1195
+ tenantId?: string | undefined;
1196
+ customUiPath?: string | undefined;
1197
+ }[];
1198
+ tenants: {
1199
+ id: string;
1200
+ title: string;
1201
+ }[];
1202
+ m2mConnections: {
1203
+ sourceServiceId: string;
1204
+ sourceServiceTitle: string;
1205
+ sourceServiceType: string;
1206
+ requestId: string;
1207
+ title: string;
1208
+ contractId: string;
1209
+ mode: "service" | "delegated";
1210
+ methods: string[];
1211
+ permissions: string[];
1212
+ optional: boolean;
1213
+ status: "unavailable" | "connected" | "pending" | "choice" | "stale";
1214
+ message: string;
1215
+ candidates: {
1216
+ targetServiceId: string;
1217
+ targetServiceTitle: string;
1218
+ targetServiceType: string;
1219
+ targetViewId: string;
1220
+ }[];
1221
+ version?: string | undefined;
1222
+ bindingId?: string | undefined;
1223
+ targetServiceId?: string | undefined;
1224
+ targetViewId?: string | undefined;
1225
+ }[];
1226
+ sharedServiceCatalog: {
1227
+ id: string;
1228
+ title: string;
1229
+ baseUrl: string;
1230
+ tags: string[];
1231
+ installed: boolean;
1232
+ enabled: boolean;
1233
+ serviceId?: string | undefined;
1234
+ description?: string | undefined;
1235
+ owner?: string | undefined;
1236
+ category?: string | undefined;
1237
+ }[];
1238
+ sharedServiceActivations: {
1239
+ id: string;
1240
+ tenantId: string;
1241
+ sharedServiceId: string;
1242
+ activatedAt: string;
1243
+ enabled: boolean;
1244
+ appId?: string | undefined;
1245
+ }[];
1246
+ apps: {
1247
+ id: string;
1248
+ tenantId: string;
1249
+ title: string;
1250
+ }[];
1251
+ tenantApps: Record<string, {
1252
+ id: string;
1253
+ title: string;
1254
+ shellServiceId?: string | undefined;
1255
+ }[]>;
1256
+ adminApiBase: string;
1257
+ selectedTenantId?: string | undefined;
1258
+ selectedAppId?: string | undefined;
1259
+ serviceBaseUrl?: string | undefined;
1260
+ }>[];
1261
+ dependencies?: undefined;
1262
+ };
1263
+ DELETE?: undefined;
1264
+ POST?: undefined;
1265
+ PUT?: undefined;
1266
+ };
1267
+ handlers: {
1268
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1269
+ title: string;
1270
+ services: {
1271
+ id: string;
1272
+ hostname: string;
1273
+ capabilities: string[];
1274
+ createdAt: string;
1275
+ enabled: boolean;
1276
+ scope: string;
1277
+ pushBase: string;
1278
+ supportsCustomUi: boolean;
1279
+ configManifestKnown: boolean;
1280
+ hasConfigurableOptions: boolean;
1281
+ serviceId?: string | undefined;
1282
+ title?: string | undefined;
1283
+ description?: string | undefined;
1284
+ lastSeenAt?: string | undefined;
1285
+ tenantId?: string | undefined;
1286
+ customUiPath?: string | undefined;
1287
+ }[];
1288
+ tenants: {
1289
+ id: string;
1290
+ title: string;
1291
+ }[];
1292
+ m2mConnections: {
1293
+ sourceServiceId: string;
1294
+ sourceServiceTitle: string;
1295
+ sourceServiceType: string;
1296
+ requestId: string;
1297
+ title: string;
1298
+ contractId: string;
1299
+ mode: "service" | "delegated";
1300
+ methods: string[];
1301
+ permissions: string[];
1302
+ optional: boolean;
1303
+ status: "unavailable" | "connected" | "pending" | "choice" | "stale";
1304
+ message: string;
1305
+ candidates: {
1306
+ targetServiceId: string;
1307
+ targetServiceTitle: string;
1308
+ targetServiceType: string;
1309
+ targetViewId: string;
1310
+ }[];
1311
+ version?: string | undefined;
1312
+ bindingId?: string | undefined;
1313
+ targetServiceId?: string | undefined;
1314
+ targetViewId?: string | undefined;
1315
+ }[];
1316
+ sharedServiceCatalog: {
1317
+ id: string;
1318
+ title: string;
1319
+ baseUrl: string;
1320
+ tags: string[];
1321
+ installed: boolean;
1322
+ enabled: boolean;
1323
+ serviceId?: string | undefined;
1324
+ description?: string | undefined;
1325
+ owner?: string | undefined;
1326
+ category?: string | undefined;
1327
+ }[];
1328
+ sharedServiceActivations: {
1329
+ id: string;
1330
+ tenantId: string;
1331
+ sharedServiceId: string;
1332
+ activatedAt: string;
1333
+ enabled: boolean;
1334
+ appId?: string | undefined;
1335
+ }[];
1336
+ apps: {
1337
+ id: string;
1338
+ tenantId: string;
1339
+ title: string;
1340
+ }[];
1341
+ tenantApps: Record<string, {
1342
+ id: string;
1343
+ title: string;
1344
+ shellServiceId?: string | undefined;
1345
+ }[]>;
1346
+ adminApiBase: string;
1347
+ selectedTenantId?: string | undefined;
1348
+ selectedAppId?: string | undefined;
1349
+ serviceBaseUrl?: string | undefined;
1350
+ }, unknown, Record<string, unknown>>;
1351
+ DELETE?: undefined;
1352
+ POST?: undefined;
1353
+ PUT?: undefined;
1354
+ };
1355
+ title: string;
1356
+ description: string;
1357
+ renderers: {
1358
+ bootstrap5: {
1359
+ pages: {
1360
+ rendererId: string;
1361
+ type: "page";
1362
+ method: "GET";
1363
+ render: typeof servicesBootstrap5PageGET.render;
1364
+ }[];
1365
+ components: never[];
1366
+ fragments: never[];
1367
+ };
1368
+ embedded?: undefined;
1369
+ };
1370
+ } | {
1371
+ viewId: string;
1372
+ path: string;
1373
+ methods: "GET"[];
1374
+ paramNames: never[];
1375
+ schemas: {};
1376
+ methodRoutes: {
1377
+ GET: {
1378
+ method: "GET";
1379
+ operationId: string;
1380
+ title: string;
1381
+ description: string;
1382
+ schemas: {
1383
+ response: import("anyvali").ObjectSchema<{
1384
+ title: import("anyvali").StringSchema;
1385
+ tenant: import("anyvali").ObjectSchema<{
1386
+ id: import("anyvali").StringSchema;
1387
+ title: import("anyvali").StringSchema;
1388
+ }>;
1389
+ app: import("anyvali").ObjectSchema<{
1390
+ id: import("anyvali").StringSchema;
1391
+ tenantId: import("anyvali").StringSchema;
1392
+ title: import("anyvali").StringSchema;
1393
+ hostnames: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1394
+ }>;
1395
+ idsVisible: import("anyvali").BoolSchema;
1396
+ managementDiscoveryUrl: import("anyvali").StringSchema;
1397
+ automationCatalogUrl: import("anyvali").StringSchema;
1398
+ endpoints: import("anyvali").ObjectSchema<{
1399
+ current: import("anyvali").StringSchema;
1400
+ services: import("anyvali").StringSchema;
1401
+ activateService: import("anyvali").StringSchema;
1402
+ routes: import("anyvali").StringSchema;
1403
+ fragments: import("anyvali").StringSchema;
1404
+ theme: import("anyvali").StringSchema;
1405
+ webhooks: import("anyvali").StringSchema;
1406
+ webhookEvents: import("anyvali").StringSchema;
1407
+ }>;
1408
+ sharedServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1409
+ id: import("anyvali").StringSchema;
1410
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1411
+ title: import("anyvali").StringSchema;
1412
+ description: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1413
+ baseUrl: import("anyvali").StringSchema;
1414
+ category: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1415
+ tags: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1416
+ enabled: import("anyvali").BoolSchema;
1417
+ active: import("anyvali").BoolSchema;
1418
+ }>>;
1419
+ routeCount: import("anyvali").IntSchema;
1420
+ fragmentCount: import("anyvali").IntSchema;
1421
+ }>;
1422
+ query?: undefined;
1423
+ headers?: undefined;
1424
+ request?: undefined;
1425
+ };
1426
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1427
+ title: string;
1428
+ tenant: {
1429
+ id: string;
1430
+ title: string;
1431
+ };
1432
+ app: {
1433
+ id: string;
1434
+ tenantId: string;
1435
+ title: string;
1436
+ hostnames: string[];
1437
+ };
1438
+ idsVisible: boolean;
1439
+ managementDiscoveryUrl: string;
1440
+ automationCatalogUrl: string;
1441
+ endpoints: {
1442
+ current: string;
1443
+ services: string;
1444
+ activateService: string;
1445
+ routes: string;
1446
+ fragments: string;
1447
+ theme: string;
1448
+ webhooks: string;
1449
+ webhookEvents: string;
1450
+ };
1451
+ sharedServices: {
1452
+ id: string;
1453
+ title: string;
1454
+ baseUrl: string;
1455
+ tags: string[];
1456
+ enabled: boolean;
1457
+ active: boolean;
1458
+ serviceId?: string | undefined;
1459
+ description?: string | undefined;
1460
+ category?: string | undefined;
1461
+ }[];
1462
+ routeCount: number;
1463
+ fragmentCount: number;
1464
+ }, unknown, Record<string, unknown>>;
1465
+ auth: import("@betterportal/framework").ApiAuthRequirement;
1466
+ cacheHints: {
1467
+ ttlSeconds: number;
1468
+ varyBy: string[];
1469
+ };
1470
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
1471
+ title: string;
1472
+ tenant: {
1473
+ id: string;
1474
+ title: string;
1475
+ };
1476
+ app: {
1477
+ id: string;
1478
+ tenantId: string;
1479
+ title: string;
1480
+ hostnames: string[];
1481
+ };
1482
+ idsVisible: boolean;
1483
+ managementDiscoveryUrl: string;
1484
+ automationCatalogUrl: string;
1485
+ endpoints: {
1486
+ current: string;
1487
+ services: string;
1488
+ activateService: string;
1489
+ routes: string;
1490
+ fragments: string;
1491
+ theme: string;
1492
+ webhooks: string;
1493
+ webhookEvents: string;
1494
+ };
1495
+ sharedServices: {
1496
+ id: string;
1497
+ title: string;
1498
+ baseUrl: string;
1499
+ tags: string[];
1500
+ enabled: boolean;
1501
+ active: boolean;
1502
+ serviceId?: string | undefined;
1503
+ description?: string | undefined;
1504
+ category?: string | undefined;
1505
+ }[];
1506
+ routeCount: number;
1507
+ fragmentCount: number;
1508
+ }>[];
1509
+ dependencies: readonly [{
1510
+ readonly operationId: "admin.services.view";
1511
+ readonly method: "GET";
1512
+ }, {
1513
+ readonly operationId: "admin.routes.view";
1514
+ readonly method: "GET";
1515
+ }, {
1516
+ readonly operationId: "admin.fragments.view";
1517
+ readonly method: "GET";
1518
+ }, {
1519
+ readonly operationId: "admin.config.view";
1520
+ readonly method: "GET";
1521
+ }];
1522
+ };
1523
+ DELETE?: undefined;
1524
+ POST?: undefined;
1525
+ PUT?: undefined;
1526
+ };
1527
+ handlers: {
1528
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1529
+ title: string;
1530
+ tenant: {
1531
+ id: string;
1532
+ title: string;
1533
+ };
1534
+ app: {
1535
+ id: string;
1536
+ tenantId: string;
1537
+ title: string;
1538
+ hostnames: string[];
1539
+ };
1540
+ idsVisible: boolean;
1541
+ managementDiscoveryUrl: string;
1542
+ automationCatalogUrl: string;
1543
+ endpoints: {
1544
+ current: string;
1545
+ services: string;
1546
+ activateService: string;
1547
+ routes: string;
1548
+ fragments: string;
1549
+ theme: string;
1550
+ webhooks: string;
1551
+ webhookEvents: string;
1552
+ };
1553
+ sharedServices: {
1554
+ id: string;
1555
+ title: string;
1556
+ baseUrl: string;
1557
+ tags: string[];
1558
+ enabled: boolean;
1559
+ active: boolean;
1560
+ serviceId?: string | undefined;
1561
+ description?: string | undefined;
1562
+ category?: string | undefined;
1563
+ }[];
1564
+ routeCount: number;
1565
+ fragmentCount: number;
1566
+ }, unknown, Record<string, unknown>>;
1567
+ DELETE?: undefined;
1568
+ POST?: undefined;
1569
+ PUT?: undefined;
1570
+ };
1571
+ title: string;
1572
+ description: string;
1573
+ renderers: {
1574
+ bootstrap5: {
1575
+ pages: {
1576
+ rendererId: string;
1577
+ type: "page";
1578
+ method: "GET";
1579
+ render: typeof settingsBootstrap5PageGET.render;
1580
+ }[];
1581
+ components: never[];
1582
+ fragments: never[];
1583
+ };
1584
+ embedded?: undefined;
1585
+ };
1586
+ } | {
1587
+ viewId: string;
1588
+ path: string;
1589
+ methods: ("GET" | "POST" | "PUT" | "DELETE")[];
1590
+ paramNames: never[];
1591
+ schemas: {};
1592
+ methodRoutes: {
1593
+ DELETE: {
1594
+ method: "DELETE";
1595
+ operationId: string;
1596
+ title: string;
1597
+ description: string;
1598
+ schemas: {
1599
+ response: import("anyvali").ObjectSchema<{
1600
+ title: import("anyvali").StringSchema;
1601
+ tenants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1602
+ id: import("anyvali").StringSchema;
1603
+ slug: import("anyvali").StringSchema;
1604
+ title: import("anyvali").StringSchema;
1605
+ active: import("anyvali").BoolSchema;
1606
+ serviceCount: import("anyvali").IntSchema;
1607
+ }>>;
1608
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1609
+ id: import("anyvali").StringSchema;
1610
+ tenantId: import("anyvali").StringSchema;
1611
+ slug: import("anyvali").StringSchema;
1612
+ title: import("anyvali").StringSchema;
1613
+ hostnames: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1614
+ shellServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1615
+ shellService: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1616
+ shellRenderer: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1617
+ authServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1618
+ roleAuthority: import("anyvali").OptionalSchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
1619
+ authRedirects: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1620
+ afterLogin: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1621
+ serviceId: import("anyvali").StringSchema;
1622
+ viewId: import("anyvali").StringSchema;
1623
+ }>>;
1624
+ afterLogout: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1625
+ serviceId: import("anyvali").StringSchema;
1626
+ viewId: import("anyvali").StringSchema;
1627
+ }>>;
1628
+ }>>;
1629
+ seo: import("anyvali").ObjectSchema<{
1630
+ visibility: import("anyvali").EnumSchema<readonly ["auto", "public", "private"]>;
1631
+ serviceFailure: import("anyvali").EnumSchema<readonly ["known-routes", "omit-service", "error"]>;
1632
+ serviceCache: import("anyvali").EnumSchema<readonly ["none", "1h", "24h", "7d"]>;
1633
+ canonicalOrigin: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1634
+ }>;
1635
+ pageViews: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1636
+ serviceId: import("anyvali").StringSchema;
1637
+ serviceTitle: import("anyvali").StringSchema;
1638
+ viewId: import("anyvali").StringSchema;
1639
+ title: import("anyvali").StringSchema;
1640
+ path: import("anyvali").StringSchema;
1641
+ }>>;
1642
+ routeCount: import("anyvali").IntSchema;
1643
+ }>>;
1644
+ shellServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1645
+ id: import("anyvali").StringSchema;
1646
+ tenantId: import("anyvali").StringSchema;
1647
+ title: import("anyvali").StringSchema;
1648
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1649
+ service: import("anyvali").StringSchema;
1650
+ renderer: import("anyvali").StringSchema;
1651
+ }>>;
1652
+ authServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1653
+ id: import("anyvali").StringSchema;
1654
+ tenantId: import("anyvali").StringSchema;
1655
+ title: import("anyvali").StringSchema;
1656
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1657
+ roleAuthorities: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
1658
+ }>>;
1659
+ adminApiBase: import("anyvali").StringSchema;
1660
+ tenantsPath: import("anyvali").StringSchema;
1661
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1662
+ }>;
1663
+ };
1664
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1665
+ title: string;
1666
+ tenants: {
1667
+ id: string;
1668
+ slug: string;
1669
+ title: string;
1670
+ active: boolean;
1671
+ serviceCount: number;
1672
+ }[];
1673
+ apps: {
1674
+ id: string;
1675
+ tenantId: string;
1676
+ slug: string;
1677
+ title: string;
1678
+ hostnames: string[];
1679
+ seo: {
1680
+ visibility: "auto" | "public" | "private";
1681
+ serviceFailure: "known-routes" | "omit-service" | "error";
1682
+ serviceCache: "none" | "1h" | "24h" | "7d";
1683
+ canonicalOrigin?: string | undefined;
1684
+ };
1685
+ pageViews: {
1686
+ serviceId: string;
1687
+ serviceTitle: string;
1688
+ viewId: string;
1689
+ title: string;
1690
+ path: string;
1691
+ }[];
1692
+ routeCount: number;
1693
+ shellServiceId?: string | undefined;
1694
+ shellService?: string | undefined;
1695
+ shellRenderer?: string | undefined;
1696
+ authServiceId?: string | undefined;
1697
+ roleAuthority?: "provider" | "betterportal" | undefined;
1698
+ authRedirects?: {
1699
+ afterLogin?: {
1700
+ serviceId: string;
1701
+ viewId: string;
1702
+ } | undefined;
1703
+ afterLogout?: {
1704
+ serviceId: string;
1705
+ viewId: string;
1706
+ } | undefined;
1707
+ } | undefined;
1708
+ }[];
1709
+ shellServices: {
1710
+ id: string;
1711
+ tenantId: string;
1712
+ title: string;
1713
+ service: string;
1714
+ renderer: string;
1715
+ serviceId?: string | undefined;
1716
+ }[];
1717
+ authServices: {
1718
+ id: string;
1719
+ tenantId: string;
1720
+ title: string;
1721
+ roleAuthorities: ("provider" | "betterportal")[];
1722
+ serviceId?: string | undefined;
1723
+ }[];
1724
+ adminApiBase: string;
1725
+ tenantsPath: string;
1726
+ serviceBaseUrl?: string | undefined;
1727
+ }, unknown, Record<string, unknown>>;
1728
+ auth: import("@betterportal/framework").ApiAuthRequirement;
1729
+ cacheHints: {
1730
+ ttlSeconds: number;
1731
+ varyBy: string[];
1732
+ };
1733
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
1734
+ title: string;
1735
+ tenants: {
1736
+ id: string;
1737
+ slug: string;
1738
+ title: string;
1739
+ active: boolean;
1740
+ serviceCount: number;
1741
+ }[];
1742
+ apps: {
1743
+ id: string;
1744
+ tenantId: string;
1745
+ slug: string;
1746
+ title: string;
1747
+ hostnames: string[];
1748
+ seo: {
1749
+ visibility: "auto" | "public" | "private";
1750
+ serviceFailure: "known-routes" | "omit-service" | "error";
1751
+ serviceCache: "none" | "1h" | "24h" | "7d";
1752
+ canonicalOrigin?: string | undefined;
1753
+ };
1754
+ pageViews: {
1755
+ serviceId: string;
1756
+ serviceTitle: string;
1757
+ viewId: string;
1758
+ title: string;
1759
+ path: string;
1760
+ }[];
1761
+ routeCount: number;
1762
+ shellServiceId?: string | undefined;
1763
+ shellService?: string | undefined;
1764
+ shellRenderer?: string | undefined;
1765
+ authServiceId?: string | undefined;
1766
+ roleAuthority?: "provider" | "betterportal" | undefined;
1767
+ authRedirects?: {
1768
+ afterLogin?: {
1769
+ serviceId: string;
1770
+ viewId: string;
1771
+ } | undefined;
1772
+ afterLogout?: {
1773
+ serviceId: string;
1774
+ viewId: string;
1775
+ } | undefined;
1776
+ } | undefined;
1777
+ }[];
1778
+ shellServices: {
1779
+ id: string;
1780
+ tenantId: string;
1781
+ title: string;
1782
+ service: string;
1783
+ renderer: string;
1784
+ serviceId?: string | undefined;
1785
+ }[];
1786
+ authServices: {
1787
+ id: string;
1788
+ tenantId: string;
1789
+ title: string;
1790
+ roleAuthorities: ("provider" | "betterportal")[];
1791
+ serviceId?: string | undefined;
1792
+ }[];
1793
+ adminApiBase: string;
1794
+ tenantsPath: string;
1795
+ serviceBaseUrl?: string | undefined;
1796
+ }>[];
1797
+ };
1798
+ GET: {
1799
+ method: "GET";
1800
+ operationId: string;
1801
+ title: string;
1802
+ description: string;
1803
+ schemas: {
1804
+ response: import("anyvali").ObjectSchema<{
1805
+ title: import("anyvali").StringSchema;
1806
+ tenants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1807
+ id: import("anyvali").StringSchema;
1808
+ slug: import("anyvali").StringSchema;
1809
+ title: import("anyvali").StringSchema;
1810
+ active: import("anyvali").BoolSchema;
1811
+ serviceCount: import("anyvali").IntSchema;
1812
+ }>>;
1813
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1814
+ id: import("anyvali").StringSchema;
1815
+ tenantId: import("anyvali").StringSchema;
1816
+ slug: import("anyvali").StringSchema;
1817
+ title: import("anyvali").StringSchema;
1818
+ hostnames: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
1819
+ shellServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1820
+ shellService: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1821
+ shellRenderer: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1822
+ authServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1823
+ roleAuthority: import("anyvali").OptionalSchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
1824
+ authRedirects: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1825
+ afterLogin: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1826
+ serviceId: import("anyvali").StringSchema;
1827
+ viewId: import("anyvali").StringSchema;
1828
+ }>>;
1829
+ afterLogout: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
1830
+ serviceId: import("anyvali").StringSchema;
1831
+ viewId: import("anyvali").StringSchema;
1832
+ }>>;
1833
+ }>>;
1834
+ seo: import("anyvali").ObjectSchema<{
1835
+ visibility: import("anyvali").EnumSchema<readonly ["auto", "public", "private"]>;
1836
+ serviceFailure: import("anyvali").EnumSchema<readonly ["known-routes", "omit-service", "error"]>;
1837
+ serviceCache: import("anyvali").EnumSchema<readonly ["none", "1h", "24h", "7d"]>;
1838
+ canonicalOrigin: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1839
+ }>;
1840
+ pageViews: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1841
+ serviceId: import("anyvali").StringSchema;
1842
+ serviceTitle: import("anyvali").StringSchema;
1843
+ viewId: import("anyvali").StringSchema;
1844
+ title: import("anyvali").StringSchema;
1845
+ path: import("anyvali").StringSchema;
1846
+ }>>;
1847
+ routeCount: import("anyvali").IntSchema;
1848
+ }>>;
1849
+ shellServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1850
+ id: import("anyvali").StringSchema;
1851
+ tenantId: import("anyvali").StringSchema;
1852
+ title: import("anyvali").StringSchema;
1853
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1854
+ service: import("anyvali").StringSchema;
1855
+ renderer: import("anyvali").StringSchema;
1856
+ }>>;
1857
+ authServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
1858
+ id: import("anyvali").StringSchema;
1859
+ tenantId: import("anyvali").StringSchema;
1860
+ title: import("anyvali").StringSchema;
1861
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1862
+ roleAuthorities: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
1863
+ }>>;
1864
+ adminApiBase: import("anyvali").StringSchema;
1865
+ tenantsPath: import("anyvali").StringSchema;
1866
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
1867
+ }>;
1868
+ query?: undefined;
1869
+ headers?: undefined;
1870
+ request?: undefined;
1871
+ };
1872
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
1873
+ title: string;
1874
+ tenants: {
1875
+ id: string;
1876
+ slug: string;
1877
+ title: string;
1878
+ active: boolean;
1879
+ serviceCount: number;
1880
+ }[];
1881
+ apps: {
1882
+ id: string;
1883
+ tenantId: string;
1884
+ slug: string;
1885
+ title: string;
1886
+ hostnames: string[];
1887
+ seo: {
1888
+ visibility: "auto" | "public" | "private";
1889
+ serviceFailure: "known-routes" | "omit-service" | "error";
1890
+ serviceCache: "none" | "1h" | "24h" | "7d";
1891
+ canonicalOrigin?: string | undefined;
1892
+ };
1893
+ pageViews: {
1894
+ serviceId: string;
1895
+ serviceTitle: string;
1896
+ viewId: string;
1897
+ title: string;
1898
+ path: string;
1899
+ }[];
1900
+ routeCount: number;
1901
+ shellServiceId?: string | undefined;
1902
+ shellService?: string | undefined;
1903
+ shellRenderer?: string | undefined;
1904
+ authServiceId?: string | undefined;
1905
+ roleAuthority?: "provider" | "betterportal" | undefined;
1906
+ authRedirects?: {
1907
+ afterLogin?: {
1908
+ serviceId: string;
1909
+ viewId: string;
1910
+ } | undefined;
1911
+ afterLogout?: {
1912
+ serviceId: string;
1913
+ viewId: string;
1914
+ } | undefined;
1915
+ } | undefined;
1916
+ }[];
1917
+ shellServices: {
1918
+ id: string;
1919
+ tenantId: string;
1920
+ title: string;
1921
+ service: string;
1922
+ renderer: string;
1923
+ serviceId?: string | undefined;
1924
+ }[];
1925
+ authServices: {
1926
+ id: string;
1927
+ tenantId: string;
1928
+ title: string;
1929
+ roleAuthorities: ("provider" | "betterportal")[];
1930
+ serviceId?: string | undefined;
1931
+ }[];
1932
+ adminApiBase: string;
1933
+ tenantsPath: string;
1934
+ serviceBaseUrl?: string | undefined;
1935
+ }, unknown, Record<string, unknown>>;
1936
+ auth: import("@betterportal/framework").ApiAuthRequirement;
1937
+ cacheHints: {
1938
+ ttlSeconds: number;
1939
+ varyBy: string[];
1940
+ };
1941
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
1942
+ title: string;
1943
+ tenants: {
1944
+ id: string;
1945
+ slug: string;
1946
+ title: string;
1947
+ active: boolean;
1948
+ serviceCount: number;
1949
+ }[];
1950
+ apps: {
1951
+ id: string;
1952
+ tenantId: string;
1953
+ slug: string;
1954
+ title: string;
1955
+ hostnames: string[];
1956
+ seo: {
1957
+ visibility: "auto" | "public" | "private";
1958
+ serviceFailure: "known-routes" | "omit-service" | "error";
1959
+ serviceCache: "none" | "1h" | "24h" | "7d";
1960
+ canonicalOrigin?: string | undefined;
1961
+ };
1962
+ pageViews: {
1963
+ serviceId: string;
1964
+ serviceTitle: string;
1965
+ viewId: string;
1966
+ title: string;
1967
+ path: string;
1968
+ }[];
1969
+ routeCount: number;
1970
+ shellServiceId?: string | undefined;
1971
+ shellService?: string | undefined;
1972
+ shellRenderer?: string | undefined;
1973
+ authServiceId?: string | undefined;
1974
+ roleAuthority?: "provider" | "betterportal" | undefined;
1975
+ authRedirects?: {
1976
+ afterLogin?: {
1977
+ serviceId: string;
1978
+ viewId: string;
1979
+ } | undefined;
1980
+ afterLogout?: {
1981
+ serviceId: string;
1982
+ viewId: string;
1983
+ } | undefined;
1984
+ } | undefined;
1985
+ }[];
1986
+ shellServices: {
1987
+ id: string;
1988
+ tenantId: string;
1989
+ title: string;
1990
+ service: string;
1991
+ renderer: string;
1992
+ serviceId?: string | undefined;
1993
+ }[];
1994
+ authServices: {
1995
+ id: string;
1996
+ tenantId: string;
1997
+ title: string;
1998
+ roleAuthorities: ("provider" | "betterportal")[];
1999
+ serviceId?: string | undefined;
2000
+ }[];
2001
+ adminApiBase: string;
2002
+ tenantsPath: string;
2003
+ serviceBaseUrl?: string | undefined;
2004
+ }>[];
2005
+ dependencies: readonly [{
2006
+ readonly operationId: "admin.tenants.create";
2007
+ readonly method: "POST";
2008
+ }, {
2009
+ readonly operationId: "admin.tenants.update";
2010
+ readonly method: "PUT";
2011
+ }, {
2012
+ readonly operationId: "admin.tenants.delete";
2013
+ readonly method: "DELETE";
2014
+ }];
2015
+ };
2016
+ POST: {
2017
+ method: "POST";
2018
+ operationId: string;
2019
+ title: string;
2020
+ description: string;
2021
+ schemas: {
2022
+ response: import("anyvali").ObjectSchema<{
2023
+ title: import("anyvali").StringSchema;
2024
+ tenants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2025
+ id: import("anyvali").StringSchema;
2026
+ slug: import("anyvali").StringSchema;
2027
+ title: import("anyvali").StringSchema;
2028
+ active: import("anyvali").BoolSchema;
2029
+ serviceCount: import("anyvali").IntSchema;
2030
+ }>>;
2031
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2032
+ id: import("anyvali").StringSchema;
2033
+ tenantId: import("anyvali").StringSchema;
2034
+ slug: import("anyvali").StringSchema;
2035
+ title: import("anyvali").StringSchema;
2036
+ hostnames: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
2037
+ shellServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2038
+ shellService: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2039
+ shellRenderer: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2040
+ authServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2041
+ roleAuthority: import("anyvali").OptionalSchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
2042
+ authRedirects: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2043
+ afterLogin: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2044
+ serviceId: import("anyvali").StringSchema;
2045
+ viewId: import("anyvali").StringSchema;
2046
+ }>>;
2047
+ afterLogout: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2048
+ serviceId: import("anyvali").StringSchema;
2049
+ viewId: import("anyvali").StringSchema;
2050
+ }>>;
2051
+ }>>;
2052
+ seo: import("anyvali").ObjectSchema<{
2053
+ visibility: import("anyvali").EnumSchema<readonly ["auto", "public", "private"]>;
2054
+ serviceFailure: import("anyvali").EnumSchema<readonly ["known-routes", "omit-service", "error"]>;
2055
+ serviceCache: import("anyvali").EnumSchema<readonly ["none", "1h", "24h", "7d"]>;
2056
+ canonicalOrigin: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2057
+ }>;
2058
+ pageViews: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2059
+ serviceId: import("anyvali").StringSchema;
2060
+ serviceTitle: import("anyvali").StringSchema;
2061
+ viewId: import("anyvali").StringSchema;
2062
+ title: import("anyvali").StringSchema;
2063
+ path: import("anyvali").StringSchema;
2064
+ }>>;
2065
+ routeCount: import("anyvali").IntSchema;
2066
+ }>>;
2067
+ shellServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2068
+ id: import("anyvali").StringSchema;
2069
+ tenantId: import("anyvali").StringSchema;
2070
+ title: import("anyvali").StringSchema;
2071
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2072
+ service: import("anyvali").StringSchema;
2073
+ renderer: import("anyvali").StringSchema;
2074
+ }>>;
2075
+ authServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2076
+ id: import("anyvali").StringSchema;
2077
+ tenantId: import("anyvali").StringSchema;
2078
+ title: import("anyvali").StringSchema;
2079
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2080
+ roleAuthorities: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
2081
+ }>>;
2082
+ adminApiBase: import("anyvali").StringSchema;
2083
+ tenantsPath: import("anyvali").StringSchema;
2084
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2085
+ }>;
2086
+ };
2087
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2088
+ title: string;
2089
+ tenants: {
2090
+ id: string;
2091
+ slug: string;
2092
+ title: string;
2093
+ active: boolean;
2094
+ serviceCount: number;
2095
+ }[];
2096
+ apps: {
2097
+ id: string;
2098
+ tenantId: string;
2099
+ slug: string;
2100
+ title: string;
2101
+ hostnames: string[];
2102
+ seo: {
2103
+ visibility: "auto" | "public" | "private";
2104
+ serviceFailure: "known-routes" | "omit-service" | "error";
2105
+ serviceCache: "none" | "1h" | "24h" | "7d";
2106
+ canonicalOrigin?: string | undefined;
2107
+ };
2108
+ pageViews: {
2109
+ serviceId: string;
2110
+ serviceTitle: string;
2111
+ viewId: string;
2112
+ title: string;
2113
+ path: string;
2114
+ }[];
2115
+ routeCount: number;
2116
+ shellServiceId?: string | undefined;
2117
+ shellService?: string | undefined;
2118
+ shellRenderer?: string | undefined;
2119
+ authServiceId?: string | undefined;
2120
+ roleAuthority?: "provider" | "betterportal" | undefined;
2121
+ authRedirects?: {
2122
+ afterLogin?: {
2123
+ serviceId: string;
2124
+ viewId: string;
2125
+ } | undefined;
2126
+ afterLogout?: {
2127
+ serviceId: string;
2128
+ viewId: string;
2129
+ } | undefined;
2130
+ } | undefined;
2131
+ }[];
2132
+ shellServices: {
2133
+ id: string;
2134
+ tenantId: string;
2135
+ title: string;
2136
+ service: string;
2137
+ renderer: string;
2138
+ serviceId?: string | undefined;
2139
+ }[];
2140
+ authServices: {
2141
+ id: string;
2142
+ tenantId: string;
2143
+ title: string;
2144
+ roleAuthorities: ("provider" | "betterportal")[];
2145
+ serviceId?: string | undefined;
2146
+ }[];
2147
+ adminApiBase: string;
2148
+ tenantsPath: string;
2149
+ serviceBaseUrl?: string | undefined;
2150
+ }, unknown, Record<string, unknown>>;
2151
+ auth: import("@betterportal/framework").ApiAuthRequirement;
2152
+ cacheHints: {
2153
+ ttlSeconds: number;
2154
+ varyBy: string[];
2155
+ };
2156
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
2157
+ title: string;
2158
+ tenants: {
2159
+ id: string;
2160
+ slug: string;
2161
+ title: string;
2162
+ active: boolean;
2163
+ serviceCount: number;
2164
+ }[];
2165
+ apps: {
2166
+ id: string;
2167
+ tenantId: string;
2168
+ slug: string;
2169
+ title: string;
2170
+ hostnames: string[];
2171
+ seo: {
2172
+ visibility: "auto" | "public" | "private";
2173
+ serviceFailure: "known-routes" | "omit-service" | "error";
2174
+ serviceCache: "none" | "1h" | "24h" | "7d";
2175
+ canonicalOrigin?: string | undefined;
2176
+ };
2177
+ pageViews: {
2178
+ serviceId: string;
2179
+ serviceTitle: string;
2180
+ viewId: string;
2181
+ title: string;
2182
+ path: string;
2183
+ }[];
2184
+ routeCount: number;
2185
+ shellServiceId?: string | undefined;
2186
+ shellService?: string | undefined;
2187
+ shellRenderer?: string | undefined;
2188
+ authServiceId?: string | undefined;
2189
+ roleAuthority?: "provider" | "betterportal" | undefined;
2190
+ authRedirects?: {
2191
+ afterLogin?: {
2192
+ serviceId: string;
2193
+ viewId: string;
2194
+ } | undefined;
2195
+ afterLogout?: {
2196
+ serviceId: string;
2197
+ viewId: string;
2198
+ } | undefined;
2199
+ } | undefined;
2200
+ }[];
2201
+ shellServices: {
2202
+ id: string;
2203
+ tenantId: string;
2204
+ title: string;
2205
+ service: string;
2206
+ renderer: string;
2207
+ serviceId?: string | undefined;
2208
+ }[];
2209
+ authServices: {
2210
+ id: string;
2211
+ tenantId: string;
2212
+ title: string;
2213
+ roleAuthorities: ("provider" | "betterportal")[];
2214
+ serviceId?: string | undefined;
2215
+ }[];
2216
+ adminApiBase: string;
2217
+ tenantsPath: string;
2218
+ serviceBaseUrl?: string | undefined;
2219
+ }>[];
2220
+ };
2221
+ PUT: {
2222
+ method: "PUT";
2223
+ operationId: string;
2224
+ title: string;
2225
+ description: string;
2226
+ schemas: {
2227
+ response: import("anyvali").ObjectSchema<{
2228
+ title: import("anyvali").StringSchema;
2229
+ tenants: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2230
+ id: import("anyvali").StringSchema;
2231
+ slug: import("anyvali").StringSchema;
2232
+ title: import("anyvali").StringSchema;
2233
+ active: import("anyvali").BoolSchema;
2234
+ serviceCount: import("anyvali").IntSchema;
2235
+ }>>;
2236
+ apps: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2237
+ id: import("anyvali").StringSchema;
2238
+ tenantId: import("anyvali").StringSchema;
2239
+ slug: import("anyvali").StringSchema;
2240
+ title: import("anyvali").StringSchema;
2241
+ hostnames: import("anyvali").ArraySchema<import("anyvali").StringSchema>;
2242
+ shellServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2243
+ shellService: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2244
+ shellRenderer: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2245
+ authServiceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2246
+ roleAuthority: import("anyvali").OptionalSchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
2247
+ authRedirects: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2248
+ afterLogin: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2249
+ serviceId: import("anyvali").StringSchema;
2250
+ viewId: import("anyvali").StringSchema;
2251
+ }>>;
2252
+ afterLogout: import("anyvali").OptionalSchema<import("anyvali").ObjectSchema<{
2253
+ serviceId: import("anyvali").StringSchema;
2254
+ viewId: import("anyvali").StringSchema;
2255
+ }>>;
2256
+ }>>;
2257
+ seo: import("anyvali").ObjectSchema<{
2258
+ visibility: import("anyvali").EnumSchema<readonly ["auto", "public", "private"]>;
2259
+ serviceFailure: import("anyvali").EnumSchema<readonly ["known-routes", "omit-service", "error"]>;
2260
+ serviceCache: import("anyvali").EnumSchema<readonly ["none", "1h", "24h", "7d"]>;
2261
+ canonicalOrigin: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2262
+ }>;
2263
+ pageViews: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2264
+ serviceId: import("anyvali").StringSchema;
2265
+ serviceTitle: import("anyvali").StringSchema;
2266
+ viewId: import("anyvali").StringSchema;
2267
+ title: import("anyvali").StringSchema;
2268
+ path: import("anyvali").StringSchema;
2269
+ }>>;
2270
+ routeCount: import("anyvali").IntSchema;
2271
+ }>>;
2272
+ shellServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2273
+ id: import("anyvali").StringSchema;
2274
+ tenantId: import("anyvali").StringSchema;
2275
+ title: import("anyvali").StringSchema;
2276
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2277
+ service: import("anyvali").StringSchema;
2278
+ renderer: import("anyvali").StringSchema;
2279
+ }>>;
2280
+ authServices: import("anyvali").ArraySchema<import("anyvali").ObjectSchema<{
2281
+ id: import("anyvali").StringSchema;
2282
+ tenantId: import("anyvali").StringSchema;
2283
+ title: import("anyvali").StringSchema;
2284
+ serviceId: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2285
+ roleAuthorities: import("anyvali").ArraySchema<import("anyvali").EnumSchema<readonly ["provider", "betterportal"]>>;
2286
+ }>>;
2287
+ adminApiBase: import("anyvali").StringSchema;
2288
+ tenantsPath: import("anyvali").StringSchema;
2289
+ serviceBaseUrl: import("anyvali").OptionalSchema<import("anyvali").StringSchema>;
2290
+ }>;
2291
+ };
2292
+ handler: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2293
+ title: string;
2294
+ tenants: {
2295
+ id: string;
2296
+ slug: string;
2297
+ title: string;
2298
+ active: boolean;
2299
+ serviceCount: number;
2300
+ }[];
2301
+ apps: {
2302
+ id: string;
2303
+ tenantId: string;
2304
+ slug: string;
2305
+ title: string;
2306
+ hostnames: string[];
2307
+ seo: {
2308
+ visibility: "auto" | "public" | "private";
2309
+ serviceFailure: "known-routes" | "omit-service" | "error";
2310
+ serviceCache: "none" | "1h" | "24h" | "7d";
2311
+ canonicalOrigin?: string | undefined;
2312
+ };
2313
+ pageViews: {
2314
+ serviceId: string;
2315
+ serviceTitle: string;
2316
+ viewId: string;
2317
+ title: string;
2318
+ path: string;
2319
+ }[];
2320
+ routeCount: number;
2321
+ shellServiceId?: string | undefined;
2322
+ shellService?: string | undefined;
2323
+ shellRenderer?: string | undefined;
2324
+ authServiceId?: string | undefined;
2325
+ roleAuthority?: "provider" | "betterportal" | undefined;
2326
+ authRedirects?: {
2327
+ afterLogin?: {
2328
+ serviceId: string;
2329
+ viewId: string;
2330
+ } | undefined;
2331
+ afterLogout?: {
2332
+ serviceId: string;
2333
+ viewId: string;
2334
+ } | undefined;
2335
+ } | undefined;
2336
+ }[];
2337
+ shellServices: {
2338
+ id: string;
2339
+ tenantId: string;
2340
+ title: string;
2341
+ service: string;
2342
+ renderer: string;
2343
+ serviceId?: string | undefined;
2344
+ }[];
2345
+ authServices: {
2346
+ id: string;
2347
+ tenantId: string;
2348
+ title: string;
2349
+ roleAuthorities: ("provider" | "betterportal")[];
2350
+ serviceId?: string | undefined;
2351
+ }[];
2352
+ adminApiBase: string;
2353
+ tenantsPath: string;
2354
+ serviceBaseUrl?: string | undefined;
2355
+ }, unknown, Record<string, unknown>>;
2356
+ auth: import("@betterportal/framework").ApiAuthRequirement;
2357
+ cacheHints: {
2358
+ ttlSeconds: number;
2359
+ varyBy: string[];
2360
+ };
2361
+ demoScenarios: import("@betterportal/framework").DemoScenario<{
2362
+ title: string;
2363
+ tenants: {
2364
+ id: string;
2365
+ slug: string;
2366
+ title: string;
2367
+ active: boolean;
2368
+ serviceCount: number;
2369
+ }[];
2370
+ apps: {
2371
+ id: string;
2372
+ tenantId: string;
2373
+ slug: string;
2374
+ title: string;
2375
+ hostnames: string[];
2376
+ seo: {
2377
+ visibility: "auto" | "public" | "private";
2378
+ serviceFailure: "known-routes" | "omit-service" | "error";
2379
+ serviceCache: "none" | "1h" | "24h" | "7d";
2380
+ canonicalOrigin?: string | undefined;
2381
+ };
2382
+ pageViews: {
2383
+ serviceId: string;
2384
+ serviceTitle: string;
2385
+ viewId: string;
2386
+ title: string;
2387
+ path: string;
2388
+ }[];
2389
+ routeCount: number;
2390
+ shellServiceId?: string | undefined;
2391
+ shellService?: string | undefined;
2392
+ shellRenderer?: string | undefined;
2393
+ authServiceId?: string | undefined;
2394
+ roleAuthority?: "provider" | "betterportal" | undefined;
2395
+ authRedirects?: {
2396
+ afterLogin?: {
2397
+ serviceId: string;
2398
+ viewId: string;
2399
+ } | undefined;
2400
+ afterLogout?: {
2401
+ serviceId: string;
2402
+ viewId: string;
2403
+ } | undefined;
2404
+ } | undefined;
2405
+ }[];
2406
+ shellServices: {
2407
+ id: string;
2408
+ tenantId: string;
2409
+ title: string;
2410
+ service: string;
2411
+ renderer: string;
2412
+ serviceId?: string | undefined;
2413
+ }[];
2414
+ authServices: {
2415
+ id: string;
2416
+ tenantId: string;
2417
+ title: string;
2418
+ roleAuthorities: ("provider" | "betterportal")[];
2419
+ serviceId?: string | undefined;
2420
+ }[];
2421
+ adminApiBase: string;
2422
+ tenantsPath: string;
2423
+ serviceBaseUrl?: string | undefined;
2424
+ }>[];
2425
+ };
2426
+ };
2427
+ handlers: {
2428
+ DELETE: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2429
+ title: string;
2430
+ tenants: {
2431
+ id: string;
2432
+ slug: string;
2433
+ title: string;
2434
+ active: boolean;
2435
+ serviceCount: number;
2436
+ }[];
2437
+ apps: {
2438
+ id: string;
2439
+ tenantId: string;
2440
+ slug: string;
2441
+ title: string;
2442
+ hostnames: string[];
2443
+ seo: {
2444
+ visibility: "auto" | "public" | "private";
2445
+ serviceFailure: "known-routes" | "omit-service" | "error";
2446
+ serviceCache: "none" | "1h" | "24h" | "7d";
2447
+ canonicalOrigin?: string | undefined;
2448
+ };
2449
+ pageViews: {
2450
+ serviceId: string;
2451
+ serviceTitle: string;
2452
+ viewId: string;
2453
+ title: string;
2454
+ path: string;
2455
+ }[];
2456
+ routeCount: number;
2457
+ shellServiceId?: string | undefined;
2458
+ shellService?: string | undefined;
2459
+ shellRenderer?: string | undefined;
2460
+ authServiceId?: string | undefined;
2461
+ roleAuthority?: "provider" | "betterportal" | undefined;
2462
+ authRedirects?: {
2463
+ afterLogin?: {
2464
+ serviceId: string;
2465
+ viewId: string;
2466
+ } | undefined;
2467
+ afterLogout?: {
2468
+ serviceId: string;
2469
+ viewId: string;
2470
+ } | undefined;
2471
+ } | undefined;
2472
+ }[];
2473
+ shellServices: {
2474
+ id: string;
2475
+ tenantId: string;
2476
+ title: string;
2477
+ service: string;
2478
+ renderer: string;
2479
+ serviceId?: string | undefined;
2480
+ }[];
2481
+ authServices: {
2482
+ id: string;
2483
+ tenantId: string;
2484
+ title: string;
2485
+ roleAuthorities: ("provider" | "betterportal")[];
2486
+ serviceId?: string | undefined;
2487
+ }[];
2488
+ adminApiBase: string;
2489
+ tenantsPath: string;
2490
+ serviceBaseUrl?: string | undefined;
2491
+ }, unknown, Record<string, unknown>>;
2492
+ GET: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2493
+ title: string;
2494
+ tenants: {
2495
+ id: string;
2496
+ slug: string;
2497
+ title: string;
2498
+ active: boolean;
2499
+ serviceCount: number;
2500
+ }[];
2501
+ apps: {
2502
+ id: string;
2503
+ tenantId: string;
2504
+ slug: string;
2505
+ title: string;
2506
+ hostnames: string[];
2507
+ seo: {
2508
+ visibility: "auto" | "public" | "private";
2509
+ serviceFailure: "known-routes" | "omit-service" | "error";
2510
+ serviceCache: "none" | "1h" | "24h" | "7d";
2511
+ canonicalOrigin?: string | undefined;
2512
+ };
2513
+ pageViews: {
2514
+ serviceId: string;
2515
+ serviceTitle: string;
2516
+ viewId: string;
2517
+ title: string;
2518
+ path: string;
2519
+ }[];
2520
+ routeCount: number;
2521
+ shellServiceId?: string | undefined;
2522
+ shellService?: string | undefined;
2523
+ shellRenderer?: string | undefined;
2524
+ authServiceId?: string | undefined;
2525
+ roleAuthority?: "provider" | "betterportal" | undefined;
2526
+ authRedirects?: {
2527
+ afterLogin?: {
2528
+ serviceId: string;
2529
+ viewId: string;
2530
+ } | undefined;
2531
+ afterLogout?: {
2532
+ serviceId: string;
2533
+ viewId: string;
2534
+ } | undefined;
2535
+ } | undefined;
2536
+ }[];
2537
+ shellServices: {
2538
+ id: string;
2539
+ tenantId: string;
2540
+ title: string;
2541
+ service: string;
2542
+ renderer: string;
2543
+ serviceId?: string | undefined;
2544
+ }[];
2545
+ authServices: {
2546
+ id: string;
2547
+ tenantId: string;
2548
+ title: string;
2549
+ roleAuthorities: ("provider" | "betterportal")[];
2550
+ serviceId?: string | undefined;
2551
+ }[];
2552
+ adminApiBase: string;
2553
+ tenantsPath: string;
2554
+ serviceBaseUrl?: string | undefined;
2555
+ }, unknown, Record<string, unknown>>;
2556
+ POST: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2557
+ title: string;
2558
+ tenants: {
2559
+ id: string;
2560
+ slug: string;
2561
+ title: string;
2562
+ active: boolean;
2563
+ serviceCount: number;
2564
+ }[];
2565
+ apps: {
2566
+ id: string;
2567
+ tenantId: string;
2568
+ slug: string;
2569
+ title: string;
2570
+ hostnames: string[];
2571
+ seo: {
2572
+ visibility: "auto" | "public" | "private";
2573
+ serviceFailure: "known-routes" | "omit-service" | "error";
2574
+ serviceCache: "none" | "1h" | "24h" | "7d";
2575
+ canonicalOrigin?: string | undefined;
2576
+ };
2577
+ pageViews: {
2578
+ serviceId: string;
2579
+ serviceTitle: string;
2580
+ viewId: string;
2581
+ title: string;
2582
+ path: string;
2583
+ }[];
2584
+ routeCount: number;
2585
+ shellServiceId?: string | undefined;
2586
+ shellService?: string | undefined;
2587
+ shellRenderer?: string | undefined;
2588
+ authServiceId?: string | undefined;
2589
+ roleAuthority?: "provider" | "betterportal" | undefined;
2590
+ authRedirects?: {
2591
+ afterLogin?: {
2592
+ serviceId: string;
2593
+ viewId: string;
2594
+ } | undefined;
2595
+ afterLogout?: {
2596
+ serviceId: string;
2597
+ viewId: string;
2598
+ } | undefined;
2599
+ } | undefined;
2600
+ }[];
2601
+ shellServices: {
2602
+ id: string;
2603
+ tenantId: string;
2604
+ title: string;
2605
+ service: string;
2606
+ renderer: string;
2607
+ serviceId?: string | undefined;
2608
+ }[];
2609
+ authServices: {
2610
+ id: string;
2611
+ tenantId: string;
2612
+ title: string;
2613
+ roleAuthorities: ("provider" | "betterportal")[];
2614
+ serviceId?: string | undefined;
2615
+ }[];
2616
+ adminApiBase: string;
2617
+ tenantsPath: string;
2618
+ serviceBaseUrl?: string | undefined;
2619
+ }, unknown, Record<string, unknown>>;
2620
+ PUT: import("@betterportal/framework").RouteHandler<Record<string, string>, Record<string, unknown>, Record<string, string>, Record<string, unknown>, {
2621
+ title: string;
2622
+ tenants: {
2623
+ id: string;
2624
+ slug: string;
2625
+ title: string;
2626
+ active: boolean;
2627
+ serviceCount: number;
2628
+ }[];
2629
+ apps: {
2630
+ id: string;
2631
+ tenantId: string;
2632
+ slug: string;
2633
+ title: string;
2634
+ hostnames: string[];
2635
+ seo: {
2636
+ visibility: "auto" | "public" | "private";
2637
+ serviceFailure: "known-routes" | "omit-service" | "error";
2638
+ serviceCache: "none" | "1h" | "24h" | "7d";
2639
+ canonicalOrigin?: string | undefined;
2640
+ };
2641
+ pageViews: {
2642
+ serviceId: string;
2643
+ serviceTitle: string;
2644
+ viewId: string;
2645
+ title: string;
2646
+ path: string;
2647
+ }[];
2648
+ routeCount: number;
2649
+ shellServiceId?: string | undefined;
2650
+ shellService?: string | undefined;
2651
+ shellRenderer?: string | undefined;
2652
+ authServiceId?: string | undefined;
2653
+ roleAuthority?: "provider" | "betterportal" | undefined;
2654
+ authRedirects?: {
2655
+ afterLogin?: {
2656
+ serviceId: string;
2657
+ viewId: string;
2658
+ } | undefined;
2659
+ afterLogout?: {
2660
+ serviceId: string;
2661
+ viewId: string;
2662
+ } | undefined;
2663
+ } | undefined;
2664
+ }[];
2665
+ shellServices: {
2666
+ id: string;
2667
+ tenantId: string;
2668
+ title: string;
2669
+ service: string;
2670
+ renderer: string;
2671
+ serviceId?: string | undefined;
2672
+ }[];
2673
+ authServices: {
2674
+ id: string;
2675
+ tenantId: string;
2676
+ title: string;
2677
+ roleAuthorities: ("provider" | "betterportal")[];
2678
+ serviceId?: string | undefined;
2679
+ }[];
2680
+ adminApiBase: string;
2681
+ tenantsPath: string;
2682
+ serviceBaseUrl?: string | undefined;
2683
+ }, unknown, Record<string, unknown>>;
2684
+ };
2685
+ title: string;
2686
+ description: string;
2687
+ renderers: {
2688
+ bootstrap5: {
2689
+ pages: ({
2690
+ rendererId: string;
2691
+ type: "page";
2692
+ method: "DELETE";
2693
+ render: typeof tenantsBootstrap5PageDELETE.render;
2694
+ } | {
2695
+ rendererId: string;
2696
+ type: "page";
2697
+ method: "GET";
2698
+ render: typeof tenantsBootstrap5PageDELETE.render;
2699
+ } | {
2700
+ rendererId: string;
2701
+ type: "page";
2702
+ method: "POST";
2703
+ render: typeof tenantsBootstrap5PageDELETE.render;
2704
+ } | {
2705
+ rendererId: string;
2706
+ type: "page";
2707
+ method: "PUT";
2708
+ render: typeof tenantsBootstrap5PageDELETE.render;
2709
+ })[];
2710
+ components: never[];
2711
+ fragments: never[];
2712
+ };
2713
+ embedded?: undefined;
2714
+ };
2715
+ })[];
2716
+ shellFragments: never[];
2717
+ };
3
2718
  //# sourceMappingURL=registry.d.ts.map