@topolo/sdk 0.2.1 → 0.2.2
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/README.md +17 -0
- package/dist/index.cjs +1185 -3
- package/dist/index.d.cts +746 -4
- package/dist/index.d.ts +746 -4
- package/dist/index.js +1178 -3
- package/package.json +1 -1
- package/src/application-requirements.ts +468 -0
- package/src/applications.generated.ts +821 -0
- package/src/index.ts +18 -0
- package/src/services.generated.ts +4 -3
- package/src/services.test.ts +152 -0
- package/src/services.ts +24 -0
package/dist/index.d.cts
CHANGED
|
@@ -36,12 +36,14 @@ declare const SERVICES: {
|
|
|
36
36
|
readonly auth: "https://auth.topolo.app";
|
|
37
37
|
readonly bugfix: "https://bugfix.topolo.app";
|
|
38
38
|
readonly bytes: "https://r2-media-manager-worker.topolo.workers.dev";
|
|
39
|
+
readonly calendar: "https://calendar.topolo.app";
|
|
39
40
|
readonly chat: "https://chat.topolo.app";
|
|
40
41
|
readonly commerce: "https://topolo-commerce-api.topolo.workers.dev";
|
|
41
42
|
readonly crm: "https://crm-api.topolo.app";
|
|
42
43
|
readonly forecast: "https://forecast-worker-production.topolo.workers.dev";
|
|
43
44
|
readonly learn: "https://topololearn-api.topolo.workers.dev";
|
|
44
|
-
readonly
|
|
45
|
+
readonly mail: "https://mail.topolo.app";
|
|
46
|
+
readonly mdm: "https://topolo-mdm-api.topolo.app";
|
|
45
47
|
readonly messaging: "https://messages.topolo.app";
|
|
46
48
|
readonly nexus: "https://topolo-nexus-gateway.topolo.workers.dev";
|
|
47
49
|
readonly one: "https://topoloone-worker.topolo.workers.dev";
|
|
@@ -52,12 +54,752 @@ declare const SERVICES: {
|
|
|
52
54
|
readonly social_studio: "https://topolo-social-studio-api.topolo.workers.dev";
|
|
53
55
|
readonly socialize: "https://socialize-prod-api.topolo.workers.dev";
|
|
54
56
|
readonly support: "https://support.topolo.app";
|
|
55
|
-
readonly
|
|
56
|
-
readonly "web.runtime": "https://sites.topolo.app";
|
|
57
|
+
readonly web: "https://web-api.topolo.app";
|
|
57
58
|
};
|
|
58
59
|
type ServiceId = keyof typeof SERVICES;
|
|
59
60
|
declare const PLATFORM_SERVICE_IDS: Partial<Record<ServiceId, string>>;
|
|
60
61
|
|
|
62
|
+
declare const APPLICATIONS: {
|
|
63
|
+
readonly admin: {
|
|
64
|
+
readonly id: "admin";
|
|
65
|
+
readonly appDir: "TopoloAdmin";
|
|
66
|
+
readonly name: "topoloadmin";
|
|
67
|
+
readonly packageName: "topolo-admin";
|
|
68
|
+
readonly productionUrl: "https://admin.topolo.app";
|
|
69
|
+
readonly services: readonly [];
|
|
70
|
+
readonly deployTargets: readonly [{
|
|
71
|
+
readonly name: "topoloadmin";
|
|
72
|
+
readonly kind: "pages";
|
|
73
|
+
readonly apiUrl: null;
|
|
74
|
+
readonly domains: readonly [];
|
|
75
|
+
readonly routes: readonly [];
|
|
76
|
+
readonly serviceId: null;
|
|
77
|
+
}];
|
|
78
|
+
};
|
|
79
|
+
readonly agent: {
|
|
80
|
+
readonly id: "agent";
|
|
81
|
+
readonly appDir: "TopoloAgent";
|
|
82
|
+
readonly name: "topolo-agent";
|
|
83
|
+
readonly packageName: "topolo-agent";
|
|
84
|
+
readonly productionUrl: "https://agent.topolo.app";
|
|
85
|
+
readonly services: readonly ["agent"];
|
|
86
|
+
readonly deployTargets: readonly [{
|
|
87
|
+
readonly name: "topolo-agent";
|
|
88
|
+
readonly kind: "pages";
|
|
89
|
+
readonly apiUrl: null;
|
|
90
|
+
readonly domains: readonly [];
|
|
91
|
+
readonly routes: readonly [];
|
|
92
|
+
readonly serviceId: null;
|
|
93
|
+
}, {
|
|
94
|
+
readonly name: "topolo-agent-worker";
|
|
95
|
+
readonly kind: "worker";
|
|
96
|
+
readonly apiUrl: "https://topolo-agent-worker.topolo.workers.dev";
|
|
97
|
+
readonly domains: readonly [];
|
|
98
|
+
readonly routes: readonly [];
|
|
99
|
+
readonly serviceId: "agent";
|
|
100
|
+
}];
|
|
101
|
+
};
|
|
102
|
+
readonly auth: {
|
|
103
|
+
readonly id: "auth";
|
|
104
|
+
readonly appDir: "TopoloAuth";
|
|
105
|
+
readonly name: "topolo-auth";
|
|
106
|
+
readonly packageName: "topolo-auth";
|
|
107
|
+
readonly productionUrl: "https://auth.topolo.app/login";
|
|
108
|
+
readonly services: readonly ["auth"];
|
|
109
|
+
readonly deployTargets: readonly [{
|
|
110
|
+
readonly name: "topolo-auth";
|
|
111
|
+
readonly kind: "worker";
|
|
112
|
+
readonly apiUrl: "https://auth.topolo.app";
|
|
113
|
+
readonly domains: readonly ["auth.topolo.app"];
|
|
114
|
+
readonly routes: readonly ["auth.topolo.app"];
|
|
115
|
+
readonly serviceId: "auth";
|
|
116
|
+
}];
|
|
117
|
+
};
|
|
118
|
+
readonly bugfix: {
|
|
119
|
+
readonly id: "bugfix";
|
|
120
|
+
readonly appDir: "TopoloBugFix";
|
|
121
|
+
readonly name: "topolo-bugfix";
|
|
122
|
+
readonly packageName: "topolo-bugfix";
|
|
123
|
+
readonly productionUrl: "https://bugfix.topolo.app";
|
|
124
|
+
readonly services: readonly ["bugfix"];
|
|
125
|
+
readonly deployTargets: readonly [{
|
|
126
|
+
readonly name: "topolo-bugfix";
|
|
127
|
+
readonly kind: "worker";
|
|
128
|
+
readonly apiUrl: "https://bugfix.topolo.app";
|
|
129
|
+
readonly domains: readonly ["bugfix.topolo.app"];
|
|
130
|
+
readonly routes: readonly ["bugfix.topolo.app"];
|
|
131
|
+
readonly serviceId: "bugfix";
|
|
132
|
+
}];
|
|
133
|
+
};
|
|
134
|
+
readonly bytes: {
|
|
135
|
+
readonly id: "bytes";
|
|
136
|
+
readonly appDir: "TopoloBytes";
|
|
137
|
+
readonly name: "topolo-bytes";
|
|
138
|
+
readonly packageName: "topolo-bytes";
|
|
139
|
+
readonly productionUrl: "https://bytes.topolo.app";
|
|
140
|
+
readonly services: readonly ["bytes"];
|
|
141
|
+
readonly deployTargets: readonly [{
|
|
142
|
+
readonly name: "bytes";
|
|
143
|
+
readonly kind: "pages";
|
|
144
|
+
readonly apiUrl: null;
|
|
145
|
+
readonly domains: readonly [];
|
|
146
|
+
readonly routes: readonly [];
|
|
147
|
+
readonly serviceId: null;
|
|
148
|
+
}, {
|
|
149
|
+
readonly name: "r2-media-manager-worker";
|
|
150
|
+
readonly kind: "worker";
|
|
151
|
+
readonly apiUrl: "https://r2-media-manager-worker.topolo.workers.dev";
|
|
152
|
+
readonly domains: readonly [];
|
|
153
|
+
readonly routes: readonly [];
|
|
154
|
+
readonly serviceId: "bytes";
|
|
155
|
+
}];
|
|
156
|
+
};
|
|
157
|
+
readonly calendar: {
|
|
158
|
+
readonly id: "calendar";
|
|
159
|
+
readonly appDir: "TopoloCalendar";
|
|
160
|
+
readonly name: "topolo-calendar";
|
|
161
|
+
readonly packageName: "topolo-calendar";
|
|
162
|
+
readonly productionUrl: "https://calendar.topolo.app";
|
|
163
|
+
readonly services: readonly ["calendar"];
|
|
164
|
+
readonly deployTargets: readonly [{
|
|
165
|
+
readonly name: "topolo-calendar";
|
|
166
|
+
readonly kind: "worker";
|
|
167
|
+
readonly apiUrl: "https://calendar.topolo.app";
|
|
168
|
+
readonly domains: readonly ["calendar.topolo.app"];
|
|
169
|
+
readonly routes: readonly ["calendar.topolo.app"];
|
|
170
|
+
readonly serviceId: "calendar";
|
|
171
|
+
}];
|
|
172
|
+
};
|
|
173
|
+
readonly chat: {
|
|
174
|
+
readonly id: "chat";
|
|
175
|
+
readonly appDir: "TopoloChat";
|
|
176
|
+
readonly name: "topolo-chat";
|
|
177
|
+
readonly packageName: "topolo-chat";
|
|
178
|
+
readonly productionUrl: "https://chat.topolo.app";
|
|
179
|
+
readonly services: readonly ["chat"];
|
|
180
|
+
readonly deployTargets: readonly [{
|
|
181
|
+
readonly name: "topolo-chat";
|
|
182
|
+
readonly kind: "worker";
|
|
183
|
+
readonly apiUrl: "https://chat.topolo.app";
|
|
184
|
+
readonly domains: readonly ["chat.topolo.app"];
|
|
185
|
+
readonly routes: readonly ["chat.topolo.app"];
|
|
186
|
+
readonly serviceId: "chat";
|
|
187
|
+
}];
|
|
188
|
+
};
|
|
189
|
+
readonly cli: {
|
|
190
|
+
readonly id: "cli";
|
|
191
|
+
readonly appDir: "TopoloCli";
|
|
192
|
+
readonly name: "@topolo/cli";
|
|
193
|
+
readonly packageName: "@topolo/cli";
|
|
194
|
+
readonly productionUrl: null;
|
|
195
|
+
readonly services: readonly [];
|
|
196
|
+
readonly deployTargets: readonly [];
|
|
197
|
+
};
|
|
198
|
+
readonly cloudcontrol: {
|
|
199
|
+
readonly id: "cloudcontrol";
|
|
200
|
+
readonly appDir: "TopoloCloudControl";
|
|
201
|
+
readonly name: "topolo-cloudcontrol";
|
|
202
|
+
readonly packageName: "topolo-cloudcontrol";
|
|
203
|
+
readonly productionUrl: null;
|
|
204
|
+
readonly services: readonly [];
|
|
205
|
+
readonly deployTargets: readonly [];
|
|
206
|
+
};
|
|
207
|
+
readonly commerce: {
|
|
208
|
+
readonly id: "commerce";
|
|
209
|
+
readonly appDir: "TopoloCommerce";
|
|
210
|
+
readonly name: "topolo-commerce";
|
|
211
|
+
readonly packageName: "topolo-commerce";
|
|
212
|
+
readonly productionUrl: "https://commerce.topolo.app";
|
|
213
|
+
readonly services: readonly ["commerce"];
|
|
214
|
+
readonly deployTargets: readonly [{
|
|
215
|
+
readonly name: "topolo-commerce-api";
|
|
216
|
+
readonly kind: "worker";
|
|
217
|
+
readonly apiUrl: "https://topolo-commerce-api.topolo.workers.dev";
|
|
218
|
+
readonly domains: readonly ["topolo-commerce-api.topolo.workers.dev"];
|
|
219
|
+
readonly routes: readonly [];
|
|
220
|
+
readonly serviceId: "commerce";
|
|
221
|
+
}, {
|
|
222
|
+
readonly name: "topolo-commerce-guest-web";
|
|
223
|
+
readonly kind: "pages";
|
|
224
|
+
readonly apiUrl: null;
|
|
225
|
+
readonly domains: readonly ["guest.topolo.app", "topolo-commerce-guest-web.pages.dev"];
|
|
226
|
+
readonly routes: readonly [];
|
|
227
|
+
readonly serviceId: null;
|
|
228
|
+
}, {
|
|
229
|
+
readonly name: "topolo-commerce-ops-web";
|
|
230
|
+
readonly kind: "pages";
|
|
231
|
+
readonly apiUrl: null;
|
|
232
|
+
readonly domains: readonly ["commerce.topolo.app", "topolo-commerce-ops-web.pages.dev"];
|
|
233
|
+
readonly routes: readonly [];
|
|
234
|
+
readonly serviceId: null;
|
|
235
|
+
}, {
|
|
236
|
+
readonly name: "topolo-commerce-station-web";
|
|
237
|
+
readonly kind: "pages";
|
|
238
|
+
readonly apiUrl: null;
|
|
239
|
+
readonly domains: readonly ["station-commerce.topolo.app", "topolo-commerce-station-web.pages.dev"];
|
|
240
|
+
readonly routes: readonly [];
|
|
241
|
+
readonly serviceId: null;
|
|
242
|
+
}];
|
|
243
|
+
};
|
|
244
|
+
readonly crm: {
|
|
245
|
+
readonly id: "crm";
|
|
246
|
+
readonly appDir: "TopoloCRM";
|
|
247
|
+
readonly name: "topolo-crm";
|
|
248
|
+
readonly packageName: "topolo-crm";
|
|
249
|
+
readonly productionUrl: "https://crm.topolo.app";
|
|
250
|
+
readonly services: readonly ["crm"];
|
|
251
|
+
readonly deployTargets: readonly [{
|
|
252
|
+
readonly name: "topolo-crm-frontend";
|
|
253
|
+
readonly kind: "pages";
|
|
254
|
+
readonly apiUrl: null;
|
|
255
|
+
readonly domains: readonly [];
|
|
256
|
+
readonly routes: readonly [];
|
|
257
|
+
readonly serviceId: null;
|
|
258
|
+
}, {
|
|
259
|
+
readonly name: "topolo-crm-worker";
|
|
260
|
+
readonly kind: "worker";
|
|
261
|
+
readonly apiUrl: "https://crm-api.topolo.app";
|
|
262
|
+
readonly domains: readonly [];
|
|
263
|
+
readonly routes: readonly [];
|
|
264
|
+
readonly serviceId: "crm";
|
|
265
|
+
}];
|
|
266
|
+
};
|
|
267
|
+
readonly developers: {
|
|
268
|
+
readonly id: "developers";
|
|
269
|
+
readonly appDir: "TopoloDevelopers";
|
|
270
|
+
readonly name: "topolo-developers";
|
|
271
|
+
readonly packageName: "topolo-developers";
|
|
272
|
+
readonly productionUrl: "https://developers.topolo.app";
|
|
273
|
+
readonly services: readonly [];
|
|
274
|
+
readonly deployTargets: readonly [{
|
|
275
|
+
readonly name: "topolo-developers";
|
|
276
|
+
readonly kind: "pages";
|
|
277
|
+
readonly apiUrl: null;
|
|
278
|
+
readonly domains: readonly ["developers.topolo.app"];
|
|
279
|
+
readonly routes: readonly [];
|
|
280
|
+
readonly serviceId: null;
|
|
281
|
+
}];
|
|
282
|
+
};
|
|
283
|
+
readonly docs: {
|
|
284
|
+
readonly id: "docs";
|
|
285
|
+
readonly appDir: "TopoloDocs";
|
|
286
|
+
readonly name: "topolo-docs";
|
|
287
|
+
readonly packageName: "topolo-docs";
|
|
288
|
+
readonly productionUrl: "https://docs.topolo.app";
|
|
289
|
+
readonly services: readonly [];
|
|
290
|
+
readonly deployTargets: readonly [{
|
|
291
|
+
readonly name: "topolo-docs";
|
|
292
|
+
readonly kind: "pages";
|
|
293
|
+
readonly apiUrl: null;
|
|
294
|
+
readonly domains: readonly ["docs.topolo.app"];
|
|
295
|
+
readonly routes: readonly [];
|
|
296
|
+
readonly serviceId: null;
|
|
297
|
+
}];
|
|
298
|
+
};
|
|
299
|
+
readonly feed: {
|
|
300
|
+
readonly id: "feed";
|
|
301
|
+
readonly appDir: "TopoloFeed";
|
|
302
|
+
readonly name: "TopoloFeed";
|
|
303
|
+
readonly packageName: null;
|
|
304
|
+
readonly productionUrl: null;
|
|
305
|
+
readonly services: readonly [];
|
|
306
|
+
readonly deployTargets: readonly [{
|
|
307
|
+
readonly name: "topolo-feed-analytics-api";
|
|
308
|
+
readonly kind: "worker";
|
|
309
|
+
readonly apiUrl: null;
|
|
310
|
+
readonly domains: readonly [];
|
|
311
|
+
readonly routes: readonly [];
|
|
312
|
+
readonly serviceId: null;
|
|
313
|
+
}, {
|
|
314
|
+
readonly name: "topolo-feed-api";
|
|
315
|
+
readonly kind: "worker";
|
|
316
|
+
readonly apiUrl: null;
|
|
317
|
+
readonly domains: readonly [];
|
|
318
|
+
readonly routes: readonly [];
|
|
319
|
+
readonly serviceId: null;
|
|
320
|
+
}];
|
|
321
|
+
};
|
|
322
|
+
readonly forecast: {
|
|
323
|
+
readonly id: "forecast";
|
|
324
|
+
readonly appDir: "TopoloForecast";
|
|
325
|
+
readonly name: "forecast-cloud";
|
|
326
|
+
readonly packageName: "topolo-forecast";
|
|
327
|
+
readonly productionUrl: "https://forecast.topolo.app";
|
|
328
|
+
readonly services: readonly ["forecast"];
|
|
329
|
+
readonly deployTargets: readonly [{
|
|
330
|
+
readonly name: "forecast";
|
|
331
|
+
readonly kind: "pages";
|
|
332
|
+
readonly apiUrl: null;
|
|
333
|
+
readonly domains: readonly [];
|
|
334
|
+
readonly routes: readonly [];
|
|
335
|
+
readonly serviceId: null;
|
|
336
|
+
}, {
|
|
337
|
+
readonly name: "forecast-worker-production";
|
|
338
|
+
readonly kind: "worker";
|
|
339
|
+
readonly apiUrl: "https://forecast-worker-production.topolo.workers.dev";
|
|
340
|
+
readonly domains: readonly [];
|
|
341
|
+
readonly routes: readonly [];
|
|
342
|
+
readonly serviceId: "forecast";
|
|
343
|
+
}];
|
|
344
|
+
};
|
|
345
|
+
readonly learn: {
|
|
346
|
+
readonly id: "learn";
|
|
347
|
+
readonly appDir: "TopoloLearn";
|
|
348
|
+
readonly name: "topololearn";
|
|
349
|
+
readonly packageName: "topolo-learn";
|
|
350
|
+
readonly productionUrl: "https://learn.topolo.app";
|
|
351
|
+
readonly services: readonly ["learn"];
|
|
352
|
+
readonly deployTargets: readonly [{
|
|
353
|
+
readonly name: "topololearn";
|
|
354
|
+
readonly kind: "pages";
|
|
355
|
+
readonly apiUrl: null;
|
|
356
|
+
readonly domains: readonly ["learn.topolo.app"];
|
|
357
|
+
readonly routes: readonly [];
|
|
358
|
+
readonly serviceId: null;
|
|
359
|
+
}, {
|
|
360
|
+
readonly name: "topololearn-api";
|
|
361
|
+
readonly kind: "worker";
|
|
362
|
+
readonly apiUrl: "https://topololearn-api.topolo.workers.dev";
|
|
363
|
+
readonly domains: readonly ["topololearn-api.topolo.workers.dev"];
|
|
364
|
+
readonly routes: readonly [];
|
|
365
|
+
readonly serviceId: "learn";
|
|
366
|
+
}];
|
|
367
|
+
};
|
|
368
|
+
readonly mail: {
|
|
369
|
+
readonly id: "mail";
|
|
370
|
+
readonly appDir: "TopoloMail";
|
|
371
|
+
readonly name: "topolo-mail";
|
|
372
|
+
readonly packageName: "topolo-mail";
|
|
373
|
+
readonly productionUrl: "https://mail.topolo.app";
|
|
374
|
+
readonly services: readonly ["mail"];
|
|
375
|
+
readonly deployTargets: readonly [{
|
|
376
|
+
readonly name: "topolo-mail";
|
|
377
|
+
readonly kind: "workers";
|
|
378
|
+
readonly apiUrl: "https://mail.topolo.app";
|
|
379
|
+
readonly domains: readonly ["mail.topolo.app"];
|
|
380
|
+
readonly routes: readonly ["mail.topolo.app"];
|
|
381
|
+
readonly serviceId: "mail";
|
|
382
|
+
}];
|
|
383
|
+
};
|
|
384
|
+
readonly mcp: {
|
|
385
|
+
readonly id: "mcp";
|
|
386
|
+
readonly appDir: "TopoloMCP";
|
|
387
|
+
readonly name: "@topolo/mcp";
|
|
388
|
+
readonly packageName: "@topolo/mcp";
|
|
389
|
+
readonly productionUrl: null;
|
|
390
|
+
readonly services: readonly [];
|
|
391
|
+
readonly deployTargets: readonly [];
|
|
392
|
+
};
|
|
393
|
+
readonly mdm: {
|
|
394
|
+
readonly id: "mdm";
|
|
395
|
+
readonly appDir: "TopoloMDM";
|
|
396
|
+
readonly name: "TopoloMDM";
|
|
397
|
+
readonly packageName: null;
|
|
398
|
+
readonly productionUrl: "https://mdm.topolo.app";
|
|
399
|
+
readonly services: readonly ["mdm"];
|
|
400
|
+
readonly deployTargets: readonly [{
|
|
401
|
+
readonly name: "topolo-mdm-api";
|
|
402
|
+
readonly kind: "worker";
|
|
403
|
+
readonly apiUrl: "https://topolo-mdm-api.topolo.app";
|
|
404
|
+
readonly domains: readonly ["topolo-mdm-api.topolo.app"];
|
|
405
|
+
readonly routes: readonly ["topolo-mdm-api.topolo.app"];
|
|
406
|
+
readonly serviceId: "mdm";
|
|
407
|
+
}, {
|
|
408
|
+
readonly name: "topolo-mdm-console";
|
|
409
|
+
readonly kind: "pages";
|
|
410
|
+
readonly apiUrl: null;
|
|
411
|
+
readonly domains: readonly ["mdm.topolo.app", "topolo-mdm-console.pages.dev"];
|
|
412
|
+
readonly routes: readonly ["mdm.topolo.app"];
|
|
413
|
+
readonly serviceId: null;
|
|
414
|
+
}];
|
|
415
|
+
};
|
|
416
|
+
readonly messaging: {
|
|
417
|
+
readonly id: "messaging";
|
|
418
|
+
readonly appDir: "TopoloMessaging";
|
|
419
|
+
readonly name: "topolo-messaging";
|
|
420
|
+
readonly packageName: "topolo-messaging";
|
|
421
|
+
readonly productionUrl: "https://messages.topolo.app";
|
|
422
|
+
readonly services: readonly ["messaging"];
|
|
423
|
+
readonly deployTargets: readonly [{
|
|
424
|
+
readonly name: "topolo-messaging";
|
|
425
|
+
readonly kind: "workers";
|
|
426
|
+
readonly apiUrl: "https://messages.topolo.app";
|
|
427
|
+
readonly domains: readonly ["messages.topolo.app"];
|
|
428
|
+
readonly routes: readonly [];
|
|
429
|
+
readonly serviceId: "messaging";
|
|
430
|
+
}, {
|
|
431
|
+
readonly name: "topolo-messaging-dispatch";
|
|
432
|
+
readonly kind: "workers";
|
|
433
|
+
readonly apiUrl: null;
|
|
434
|
+
readonly domains: readonly [];
|
|
435
|
+
readonly routes: readonly [];
|
|
436
|
+
readonly serviceId: null;
|
|
437
|
+
}];
|
|
438
|
+
};
|
|
439
|
+
readonly nexus: {
|
|
440
|
+
readonly id: "nexus";
|
|
441
|
+
readonly appDir: "TopoloNexus";
|
|
442
|
+
readonly name: "topolo-nexus";
|
|
443
|
+
readonly packageName: "topolo-nexus";
|
|
444
|
+
readonly productionUrl: "https://nexus.topolo.app";
|
|
445
|
+
readonly services: readonly ["nexus"];
|
|
446
|
+
readonly deployTargets: readonly [{
|
|
447
|
+
readonly name: "topolo-nexus-dashboard";
|
|
448
|
+
readonly kind: "pages";
|
|
449
|
+
readonly apiUrl: null;
|
|
450
|
+
readonly domains: readonly ["nexus.topolo.app", "topolo-nexus-dashboard.pages.dev"];
|
|
451
|
+
readonly routes: readonly [];
|
|
452
|
+
readonly serviceId: null;
|
|
453
|
+
}, {
|
|
454
|
+
readonly name: "topolo-nexus-gateway";
|
|
455
|
+
readonly kind: "worker";
|
|
456
|
+
readonly apiUrl: "https://topolo-nexus-gateway.topolo.workers.dev";
|
|
457
|
+
readonly domains: readonly ["topolo-nexus-gateway.topolo.workers.dev"];
|
|
458
|
+
readonly routes: readonly [];
|
|
459
|
+
readonly serviceId: "nexus";
|
|
460
|
+
}];
|
|
461
|
+
};
|
|
462
|
+
readonly one: {
|
|
463
|
+
readonly id: "one";
|
|
464
|
+
readonly appDir: "TopoloOne";
|
|
465
|
+
readonly name: "topolo-oneclick-sso";
|
|
466
|
+
readonly packageName: "topolo-oneclick-sso";
|
|
467
|
+
readonly productionUrl: "https://one.topolo.app";
|
|
468
|
+
readonly services: readonly ["one"];
|
|
469
|
+
readonly deployTargets: readonly [{
|
|
470
|
+
readonly name: "ai-chat-rag";
|
|
471
|
+
readonly kind: "worker";
|
|
472
|
+
readonly apiUrl: null;
|
|
473
|
+
readonly domains: readonly ["ai-chat-rag.topolo.workers.dev"];
|
|
474
|
+
readonly routes: readonly [];
|
|
475
|
+
readonly serviceId: null;
|
|
476
|
+
}, {
|
|
477
|
+
readonly name: "topoloone";
|
|
478
|
+
readonly kind: "pages";
|
|
479
|
+
readonly apiUrl: null;
|
|
480
|
+
readonly domains: readonly ["oneclick-dashboard.pages.dev"];
|
|
481
|
+
readonly routes: readonly [];
|
|
482
|
+
readonly serviceId: null;
|
|
483
|
+
}, {
|
|
484
|
+
readonly name: "topoloone-website";
|
|
485
|
+
readonly kind: "worker";
|
|
486
|
+
readonly apiUrl: null;
|
|
487
|
+
readonly domains: readonly ["one.topolo.io"];
|
|
488
|
+
readonly routes: readonly [];
|
|
489
|
+
readonly serviceId: null;
|
|
490
|
+
}, {
|
|
491
|
+
readonly name: "topoloone-worker";
|
|
492
|
+
readonly kind: "worker";
|
|
493
|
+
readonly apiUrl: "https://topoloone-worker.topolo.workers.dev";
|
|
494
|
+
readonly domains: readonly [];
|
|
495
|
+
readonly routes: readonly ["one.topolo.app/*"];
|
|
496
|
+
readonly serviceId: "one";
|
|
497
|
+
}];
|
|
498
|
+
};
|
|
499
|
+
readonly pay: {
|
|
500
|
+
readonly id: "pay";
|
|
501
|
+
readonly appDir: "TopoloPay";
|
|
502
|
+
readonly name: "topolo-pay";
|
|
503
|
+
readonly packageName: "topolo-pay";
|
|
504
|
+
readonly productionUrl: "https://pay.topolo.app";
|
|
505
|
+
readonly services: readonly ["pay"];
|
|
506
|
+
readonly deployTargets: readonly [{
|
|
507
|
+
readonly name: "topolo-pay";
|
|
508
|
+
readonly kind: "worker";
|
|
509
|
+
readonly apiUrl: "https://topolo-pay.topolo.workers.dev";
|
|
510
|
+
readonly domains: readonly [];
|
|
511
|
+
readonly routes: readonly [];
|
|
512
|
+
readonly serviceId: "pay";
|
|
513
|
+
}];
|
|
514
|
+
};
|
|
515
|
+
readonly quro: {
|
|
516
|
+
readonly id: "quro";
|
|
517
|
+
readonly appDir: "TopoloQuro";
|
|
518
|
+
readonly name: "TopoloQuro";
|
|
519
|
+
readonly packageName: null;
|
|
520
|
+
readonly productionUrl: "https://quro.topolo.app";
|
|
521
|
+
readonly services: readonly ["quro.api", "quro.redirect"];
|
|
522
|
+
readonly deployTargets: readonly [{
|
|
523
|
+
readonly name: "quro-api";
|
|
524
|
+
readonly kind: "worker";
|
|
525
|
+
readonly apiUrl: "https://api.ol0.me";
|
|
526
|
+
readonly domains: readonly [];
|
|
527
|
+
readonly routes: readonly [];
|
|
528
|
+
readonly serviceId: "quro.api";
|
|
529
|
+
}, {
|
|
530
|
+
readonly name: "quro-redirect-system";
|
|
531
|
+
readonly kind: "worker";
|
|
532
|
+
readonly apiUrl: "https://ol0.me";
|
|
533
|
+
readonly domains: readonly [];
|
|
534
|
+
readonly routes: readonly ["ol0.me/*"];
|
|
535
|
+
readonly serviceId: "quro.redirect";
|
|
536
|
+
}, {
|
|
537
|
+
readonly name: "quro-ui";
|
|
538
|
+
readonly kind: "pages";
|
|
539
|
+
readonly apiUrl: null;
|
|
540
|
+
readonly domains: readonly [];
|
|
541
|
+
readonly routes: readonly [];
|
|
542
|
+
readonly serviceId: null;
|
|
543
|
+
}];
|
|
544
|
+
};
|
|
545
|
+
readonly roadmapper: {
|
|
546
|
+
readonly id: "roadmapper";
|
|
547
|
+
readonly appDir: "TopoloRoadmapper";
|
|
548
|
+
readonly name: "topolo-roadmapper";
|
|
549
|
+
readonly packageName: "topolo-roadmapper";
|
|
550
|
+
readonly productionUrl: "https://roadmapper.topolo.app";
|
|
551
|
+
readonly services: readonly ["roadmapper"];
|
|
552
|
+
readonly deployTargets: readonly [{
|
|
553
|
+
readonly name: "roadmapper";
|
|
554
|
+
readonly kind: "pages";
|
|
555
|
+
readonly apiUrl: null;
|
|
556
|
+
readonly domains: readonly ["roadmapper.topolo.app"];
|
|
557
|
+
readonly routes: readonly [];
|
|
558
|
+
readonly serviceId: null;
|
|
559
|
+
}, {
|
|
560
|
+
readonly name: "topolo-production-roadmapper";
|
|
561
|
+
readonly kind: "worker";
|
|
562
|
+
readonly apiUrl: "https://roadmapper-api.topolo.app";
|
|
563
|
+
readonly domains: readonly ["roadmapper-api.topolo.app"];
|
|
564
|
+
readonly routes: readonly [];
|
|
565
|
+
readonly serviceId: "roadmapper";
|
|
566
|
+
}];
|
|
567
|
+
};
|
|
568
|
+
readonly social_studio: {
|
|
569
|
+
readonly id: "social_studio";
|
|
570
|
+
readonly appDir: "TopoloSocialStudio";
|
|
571
|
+
readonly name: "topolo-social-studio";
|
|
572
|
+
readonly packageName: "topolo-social-studio";
|
|
573
|
+
readonly productionUrl: "https://studio.topolo.app";
|
|
574
|
+
readonly services: readonly ["social_studio"];
|
|
575
|
+
readonly deployTargets: readonly [{
|
|
576
|
+
readonly name: "topolo-social-studio";
|
|
577
|
+
readonly kind: "pages";
|
|
578
|
+
readonly apiUrl: null;
|
|
579
|
+
readonly domains: readonly [];
|
|
580
|
+
readonly routes: readonly [];
|
|
581
|
+
readonly serviceId: null;
|
|
582
|
+
}, {
|
|
583
|
+
readonly name: "topolo-social-studio-api";
|
|
584
|
+
readonly kind: "worker";
|
|
585
|
+
readonly apiUrl: "https://topolo-social-studio-api.topolo.workers.dev";
|
|
586
|
+
readonly domains: readonly [];
|
|
587
|
+
readonly routes: readonly [];
|
|
588
|
+
readonly serviceId: "social_studio";
|
|
589
|
+
}, {
|
|
590
|
+
readonly name: "topolo-social-studio-queue";
|
|
591
|
+
readonly kind: "worker";
|
|
592
|
+
readonly apiUrl: null;
|
|
593
|
+
readonly domains: readonly [];
|
|
594
|
+
readonly routes: readonly [];
|
|
595
|
+
readonly serviceId: null;
|
|
596
|
+
}];
|
|
597
|
+
};
|
|
598
|
+
readonly socialize: {
|
|
599
|
+
readonly id: "socialize";
|
|
600
|
+
readonly appDir: "TopoloSocialize";
|
|
601
|
+
readonly name: "socialize";
|
|
602
|
+
readonly packageName: "topolo-socialize";
|
|
603
|
+
readonly productionUrl: "https://socialize.topolo.app";
|
|
604
|
+
readonly services: readonly ["socialize"];
|
|
605
|
+
readonly deployTargets: readonly [{
|
|
606
|
+
readonly name: "socialize";
|
|
607
|
+
readonly kind: "pages";
|
|
608
|
+
readonly apiUrl: null;
|
|
609
|
+
readonly domains: readonly [];
|
|
610
|
+
readonly routes: readonly [];
|
|
611
|
+
readonly serviceId: null;
|
|
612
|
+
}, {
|
|
613
|
+
readonly name: "socialize-prod-api";
|
|
614
|
+
readonly kind: "worker";
|
|
615
|
+
readonly apiUrl: "https://socialize-prod-api.topolo.workers.dev";
|
|
616
|
+
readonly domains: readonly [];
|
|
617
|
+
readonly routes: readonly [];
|
|
618
|
+
readonly serviceId: "socialize";
|
|
619
|
+
}, {
|
|
620
|
+
readonly name: "socialize-prod-scheduler";
|
|
621
|
+
readonly kind: "worker";
|
|
622
|
+
readonly apiUrl: null;
|
|
623
|
+
readonly domains: readonly [];
|
|
624
|
+
readonly routes: readonly [];
|
|
625
|
+
readonly serviceId: null;
|
|
626
|
+
}];
|
|
627
|
+
};
|
|
628
|
+
readonly support: {
|
|
629
|
+
readonly id: "support";
|
|
630
|
+
readonly appDir: "TopoloSupport";
|
|
631
|
+
readonly name: "topolo-support";
|
|
632
|
+
readonly packageName: "topolo-support";
|
|
633
|
+
readonly productionUrl: "https://support.topolo.app";
|
|
634
|
+
readonly services: readonly ["support"];
|
|
635
|
+
readonly deployTargets: readonly [{
|
|
636
|
+
readonly name: "topolo-support";
|
|
637
|
+
readonly kind: "workers";
|
|
638
|
+
readonly apiUrl: "https://support.topolo.app";
|
|
639
|
+
readonly domains: readonly ["support.topolo.app"];
|
|
640
|
+
readonly routes: readonly ["support.topolo.app/*"];
|
|
641
|
+
readonly serviceId: "support";
|
|
642
|
+
}];
|
|
643
|
+
};
|
|
644
|
+
readonly web: {
|
|
645
|
+
readonly id: "web";
|
|
646
|
+
readonly appDir: "TopoloWeb";
|
|
647
|
+
readonly name: "topoloweb";
|
|
648
|
+
readonly packageName: "topolo-web";
|
|
649
|
+
readonly productionUrl: "https://web.topolo.app";
|
|
650
|
+
readonly services: readonly ["web"];
|
|
651
|
+
readonly deployTargets: readonly [{
|
|
652
|
+
readonly name: "topoloweb-api";
|
|
653
|
+
readonly kind: "worker";
|
|
654
|
+
readonly apiUrl: "https://web-api.topolo.app";
|
|
655
|
+
readonly domains: readonly ["web-api.topolo.app"];
|
|
656
|
+
readonly routes: readonly [];
|
|
657
|
+
readonly serviceId: "web";
|
|
658
|
+
}, {
|
|
659
|
+
readonly name: "topoloweb-runtime";
|
|
660
|
+
readonly kind: "worker";
|
|
661
|
+
readonly apiUrl: "https://sites.topolo.app";
|
|
662
|
+
readonly domains: readonly ["sites.topolo.app"];
|
|
663
|
+
readonly routes: readonly [];
|
|
664
|
+
readonly serviceId: null;
|
|
665
|
+
}, {
|
|
666
|
+
readonly name: "topoloweb-studio";
|
|
667
|
+
readonly kind: "pages";
|
|
668
|
+
readonly apiUrl: null;
|
|
669
|
+
readonly domains: readonly ["web.topolo.app"];
|
|
670
|
+
readonly routes: readonly [];
|
|
671
|
+
readonly serviceId: null;
|
|
672
|
+
}];
|
|
673
|
+
};
|
|
674
|
+
};
|
|
675
|
+
type ApplicationId = keyof typeof APPLICATIONS;
|
|
676
|
+
type ApplicationCatalogEntry = (typeof APPLICATIONS)[ApplicationId];
|
|
677
|
+
type ApplicationDeployTarget = ApplicationCatalogEntry['deployTargets'][number];
|
|
678
|
+
|
|
679
|
+
declare const APPLICATION_REQUIREMENTS_VERSION = "2026-04-22.1";
|
|
680
|
+
type ApplicationRequirementScope = 'all' | 'browser' | 'api' | 'tooling' | 'agent_surface';
|
|
681
|
+
interface ApplicationRequirement {
|
|
682
|
+
id: string;
|
|
683
|
+
title: string;
|
|
684
|
+
summary: string;
|
|
685
|
+
appliesTo: readonly ApplicationRequirementScope[];
|
|
686
|
+
evidence: readonly string[];
|
|
687
|
+
implementation: readonly string[];
|
|
688
|
+
}
|
|
689
|
+
type ApplicationRequirementStatus = 'met' | 'partial' | 'missing' | 'needs_review';
|
|
690
|
+
interface ApplicationRequirementFinding {
|
|
691
|
+
requirementId: string;
|
|
692
|
+
title: string;
|
|
693
|
+
status: ApplicationRequirementStatus;
|
|
694
|
+
reason: string;
|
|
695
|
+
evidence: readonly string[];
|
|
696
|
+
nextActions: readonly string[];
|
|
697
|
+
}
|
|
698
|
+
interface ApplicationRequirementScore {
|
|
699
|
+
met: number;
|
|
700
|
+
partial: number;
|
|
701
|
+
missing: number;
|
|
702
|
+
needsReview: number;
|
|
703
|
+
total: number;
|
|
704
|
+
percent: number;
|
|
705
|
+
}
|
|
706
|
+
interface ApplicationRequirementAudit {
|
|
707
|
+
version: string;
|
|
708
|
+
application: ApplicationCatalogEntry;
|
|
709
|
+
scopes: ApplicationRequirementScope[];
|
|
710
|
+
score: ApplicationRequirementScore;
|
|
711
|
+
findings: ApplicationRequirementFinding[];
|
|
712
|
+
}
|
|
713
|
+
interface ApplicationRequirementMigrationItem {
|
|
714
|
+
applicationId: ApplicationId;
|
|
715
|
+
applicationName: string;
|
|
716
|
+
requirementId: string;
|
|
717
|
+
title: string;
|
|
718
|
+
status: Exclude<ApplicationRequirementStatus, 'met'>;
|
|
719
|
+
reason: string;
|
|
720
|
+
nextActions: readonly string[];
|
|
721
|
+
}
|
|
722
|
+
interface ApplicationRequirementsAuditReport {
|
|
723
|
+
version: string;
|
|
724
|
+
applications: ApplicationRequirementAudit[];
|
|
725
|
+
migrationQueue: ApplicationRequirementMigrationItem[];
|
|
726
|
+
}
|
|
727
|
+
declare const APPLICATION_REQUIREMENTS: readonly [{
|
|
728
|
+
readonly id: "platform-metadata";
|
|
729
|
+
readonly title: "Register the application in platform metadata";
|
|
730
|
+
readonly summary: "Every app must have a stable application ID, CloudControl metadata for deployed surfaces, and package metadata where code is shipped.";
|
|
731
|
+
readonly appliesTo: readonly ["all"];
|
|
732
|
+
readonly evidence: readonly ["topolo.cloudcontrol.json exists for every deployed app surface", "package.json names the package or app when the repo ships code", "The SDK application catalog exposes the app through topolo apps and MCP discovery"];
|
|
733
|
+
readonly implementation: readonly ["Add the app to the SDK application catalog generator before exposing it to agents", "Keep production URLs, Worker names, Pages projects, routes, domains, and bindings current in CloudControl metadata", "Do not leave a new Topolo* app directory without an explicit application ID"];
|
|
734
|
+
}, {
|
|
735
|
+
readonly id: "canonical-docs";
|
|
736
|
+
readonly title: "Update canonical docs with the code change";
|
|
737
|
+
readonly summary: "TopoloDocs is the source of truth for application behavior, ownership, deployment shape, auth boundaries, and operations.";
|
|
738
|
+
readonly appliesTo: readonly ["all"];
|
|
739
|
+
readonly evidence: readonly ["Matching system registry entry exists in TopoloDocs", "Internal handbook coverage exists for the system", "npm run validate passes in TopoloDocs when docs are touched"];
|
|
740
|
+
readonly implementation: readonly ["Read the matching TopoloDocs system entry before coding", "Update docs in the same change when behavior, API, auth, data ownership, deployment, or operations change", "Update last_verified dates on touched canonical pages"];
|
|
741
|
+
}, {
|
|
742
|
+
readonly id: "shared-auth-boundary";
|
|
743
|
+
readonly title: "Use the shared Topolo auth boundary";
|
|
744
|
+
readonly summary: "Applications must derive identity, organization, scopes, and service entitlement from TopoloAuth rather than inventing parallel auth state.";
|
|
745
|
+
readonly appliesTo: readonly ["browser", "api", "tooling", "agent_surface"];
|
|
746
|
+
readonly evidence: readonly ["@topolo/auth-client or @topolo/auth-middleware is used where applicable", "No public command, tool, or SDK method accepts orgId", "Service slug and Auth service registration are documented for protected services"];
|
|
747
|
+
readonly implementation: readonly ["Use shared auth packages instead of copying token parsing or browser storage flows", "Derive organization from the credential on every request", "Route OAuth, refresh, logout, and SSO paths according to the shared Auth contract"];
|
|
748
|
+
}, {
|
|
749
|
+
readonly id: "shared-shell-and-launcher";
|
|
750
|
+
readonly title: "Use the shared shell, launcher, and account menu";
|
|
751
|
+
readonly summary: "Browser applications should feel like one platform and should not create isolated navigation or account surfaces.";
|
|
752
|
+
readonly appliesTo: readonly ["browser"];
|
|
753
|
+
readonly evidence: readonly ["@topolo/ui-kit is used for the platform shell where the app has authenticated UI", "The shared launcher/app switcher is reachable from authenticated app chrome", "Account menu and sign-out behavior use the shared platform affordance"];
|
|
754
|
+
readonly implementation: readonly ["Use TopoloShell or the current shared shell contract for authenticated app layouts", "Use shared design tokens and platform UI primitives before creating local equivalents", "Keep mobile and desktop shell behavior aligned with the platform UI kit"];
|
|
755
|
+
}, {
|
|
756
|
+
readonly id: "service-registration-and-scopes";
|
|
757
|
+
readonly title: "Register protected APIs as platform services";
|
|
758
|
+
readonly summary: "Callable app APIs need a stable service ID, service slug, permissions, role bundles, and API-key scopes before agents or users rely on them.";
|
|
759
|
+
readonly appliesTo: readonly ["api"];
|
|
760
|
+
readonly evidence: readonly ["Auth service catalog contains the service ID and slug", "Permissions, role bundles, and API-key scopes exist for the service", "SDK, CLI, and MCP service discovery include the callable production API"];
|
|
761
|
+
readonly implementation: readonly ["Add production Worker api_url metadata before adding an SDK service ID", "Expose stable service IDs through DEFAULT_SERVICE_URLS", "Keep typed SDK/CLI/MCP surfaces in sync when an API contract stabilizes"];
|
|
762
|
+
}, {
|
|
763
|
+
readonly id: "organization-scoped-data";
|
|
764
|
+
readonly title: "Keep application data organization-scoped";
|
|
765
|
+
readonly summary: "Protected data access must be scoped by the authenticated organization at the backend boundary, not by client-provided hints.";
|
|
766
|
+
readonly appliesTo: readonly ["api"];
|
|
767
|
+
readonly evidence: readonly ["Backend request handlers derive org membership from credential validation", "Queries and Durable Object keys include the authenticated organization boundary where data is tenant-owned", "MCP and CLI inputs do not include orgId overrides"];
|
|
768
|
+
readonly implementation: readonly ["Reject or ignore organization hints supplied by clients", "Bind SQL, KV, R2, queue, and Durable Object access to the authenticated organization", "Document service-local exceptions explicitly in the system security assurance record"];
|
|
769
|
+
}, {
|
|
770
|
+
readonly id: "cloudflare-deployment-contract";
|
|
771
|
+
readonly title: "Keep Cloudflare deployment metadata complete";
|
|
772
|
+
readonly summary: "Workers, Pages, bindings, routes, env vars, queues, cron triggers, and deployment commands must be discoverable through CloudControl metadata.";
|
|
773
|
+
readonly appliesTo: readonly ["browser", "api"];
|
|
774
|
+
readonly evidence: readonly ["topolo.cloudcontrol.json lists production deploy targets and URLs", "Wrangler/Pages configuration matches CloudControl metadata", "Secrets and environment variables are not committed"];
|
|
775
|
+
readonly implementation: readonly ["Update CloudControl metadata whenever deployment topology changes", "Prefer Cloudflare-native runtime surfaces for new Topolo app infrastructure", "Keep Worker bindings and Pages domains explicit enough for agents to inspect before deploying"];
|
|
776
|
+
}, {
|
|
777
|
+
readonly id: "agent-and-operator-surfaces";
|
|
778
|
+
readonly title: "Expose agent-safe operations through SDK, CLI, and MCP";
|
|
779
|
+
readonly summary: "Agent-accessible functionality should be discoverable, scope-gated, and write-confirmed instead of hidden behind ad hoc HTTP calls.";
|
|
780
|
+
readonly appliesTo: readonly ["api", "tooling", "agent_surface"];
|
|
781
|
+
readonly evidence: readonly ["Read operations have typed SDK/CLI/MCP surfaces once their contract stabilizes", "Mutating generic calls require --confirm or confirm:true", "MCP tools never accept orgId and advertise only appropriate scope-gated tools"];
|
|
782
|
+
readonly implementation: readonly ["Add SDK types first, then CLI commands and MCP tools for durable workflows", "Use generic API passthrough only as a temporary escape hatch", "Keep command output JSON-stable for agents and human-readable with --no-json"];
|
|
783
|
+
}, {
|
|
784
|
+
readonly id: "observability-and-audit";
|
|
785
|
+
readonly title: "Emit platform audit and debugging signals";
|
|
786
|
+
readonly summary: "Requests, agent actions, and operational workflows need traceable IDs, client labels, and useful failure evidence.";
|
|
787
|
+
readonly appliesTo: readonly ["api", "tooling", "agent_surface"];
|
|
788
|
+
readonly evidence: readonly ["Requests carry X-Topolo-Client and X-Topolo-Request-Id where the SDK is involved", "Agent-originated calls can include X-Topolo-Agent", "Failure modes are documented with request IDs or deployment/log lookup paths"];
|
|
789
|
+
readonly implementation: readonly ["Use TopoloClient for platform API calls rather than raw fetch where practical", "Keep logs free of secrets and tokens", "Document live smoke commands and request-id correlation in canonical docs"];
|
|
790
|
+
}, {
|
|
791
|
+
readonly id: "verification-gates";
|
|
792
|
+
readonly title: "Ship with build, test, docs, and smoke verification";
|
|
793
|
+
readonly summary: "A Topolo app change is not complete until the relevant code checks and docs checks have been run or explicitly reported as blocked.";
|
|
794
|
+
readonly appliesTo: readonly ["all"];
|
|
795
|
+
readonly evidence: readonly ["Relevant package build/typecheck/test commands pass", "TopoloDocs validation passes when docs are touched", "Live or local smoke evidence is captured for user-visible or API behavior"];
|
|
796
|
+
readonly implementation: readonly ["Prefer existing package scripts before adding new tooling", "Run app-specific checks and shared docs validation for behavior changes", "Report any skipped verification with the blocker and residual risk"];
|
|
797
|
+
}];
|
|
798
|
+
declare function applicationRequirementScopes(application: ApplicationCatalogEntry): ApplicationRequirementScope[];
|
|
799
|
+
declare function requirementsForApplication(applicationOrId: ApplicationCatalogEntry | ApplicationId): ApplicationRequirement[];
|
|
800
|
+
declare function auditApplicationRequirements(applicationOrId: ApplicationCatalogEntry | ApplicationId): ApplicationRequirementAudit;
|
|
801
|
+
declare function auditAllApplicationRequirements(applicationIds?: readonly ApplicationId[]): ApplicationRequirementsAuditReport;
|
|
802
|
+
|
|
61
803
|
/**
|
|
62
804
|
* Service registry — base URLs for every Topolo platform service.
|
|
63
805
|
*
|
|
@@ -336,4 +1078,4 @@ declare function createTopolo(options: TopoloClientOptions): {
|
|
|
336
1078
|
};
|
|
337
1079
|
type Topolo = ReturnType<typeof createTopolo>;
|
|
338
1080
|
|
|
339
|
-
export { type AgentIdentity, type CredentialIntrospection, type CrmContactSummary, CrmModule, DEFAULT_SERVICE_URLS, type DeviceAuthorizationResponse, IdentityModule, type ListContactsOptions, type ListContactsResult, type OAuthHelperOptions, PLATFORM_SERVICE_IDS, type RequestOptions, type ServiceId, type TokenResponse, type Topolo, TopoloAuthError, TopoloClient, type TopoloClientOptions, type TopoloCredential, type TopoloDebugEvent, TopoloHttpError, TopoloOAuth, TopoloPermissionError, TopoloSdkError, createTopolo, resolveServiceUrl };
|
|
1081
|
+
export { APPLICATIONS, APPLICATION_REQUIREMENTS, APPLICATION_REQUIREMENTS_VERSION, type AgentIdentity, type ApplicationCatalogEntry, type ApplicationDeployTarget, type ApplicationId, type ApplicationRequirement, type ApplicationRequirementAudit, type ApplicationRequirementFinding, type ApplicationRequirementMigrationItem, type ApplicationRequirementScope, type ApplicationRequirementScore, type ApplicationRequirementStatus, type ApplicationRequirementsAuditReport, type CredentialIntrospection, type CrmContactSummary, CrmModule, DEFAULT_SERVICE_URLS, type DeviceAuthorizationResponse, IdentityModule, type ListContactsOptions, type ListContactsResult, type OAuthHelperOptions, PLATFORM_SERVICE_IDS, type RequestOptions, type ServiceId, type TokenResponse, type Topolo, TopoloAuthError, TopoloClient, type TopoloClientOptions, type TopoloCredential, type TopoloDebugEvent, TopoloHttpError, TopoloOAuth, TopoloPermissionError, TopoloSdkError, applicationRequirementScopes, auditAllApplicationRequirements, auditApplicationRequirements, createTopolo, requirementsForApplication, resolveServiceUrl };
|