@aexhq/sdk 0.51.0 → 0.53.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.
Files changed (37) hide show
  1. package/README.md +99 -41
  2. package/dist/client/aex.d.ts +6 -1
  3. package/dist/client/aex.js +51 -10
  4. package/dist/client/aex.js.map +1 -1
  5. package/dist/client/credentials.d.ts +3 -3
  6. package/dist/client/credentials.js +8 -8
  7. package/dist/client/credentials.js.map +1 -1
  8. package/dist/client/routing.d.ts +1 -1
  9. package/dist/client/routing.js +2 -5
  10. package/dist/client/routing.js.map +1 -1
  11. package/dist/files/workspace-files.d.ts +55 -0
  12. package/dist/files/workspace-files.js +150 -0
  13. package/dist/files/workspace-files.js.map +1 -0
  14. package/dist/generated/errors.js +2 -18
  15. package/dist/generated/errors.js.map +1 -1
  16. package/dist/generated/models.d.ts +248 -796
  17. package/dist/generated/models.js +4 -4
  18. package/dist/generated/models.js.map +1 -1
  19. package/dist/generated/resources.d.ts +72 -519
  20. package/dist/generated/resources.js +49 -428
  21. package/dist/generated/resources.js.map +1 -1
  22. package/dist/generated/routes.d.ts +4 -4
  23. package/dist/generated/routes.js +190 -1600
  24. package/dist/generated/routes.js.map +1 -1
  25. package/dist/index.d.ts +4 -2
  26. package/dist/index.js +2 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/transport/transport.d.ts +9 -1
  29. package/dist/transport/transport.js +79 -1
  30. package/dist/transport/transport.js.map +1 -1
  31. package/package.json +1 -5
  32. package/dist/node/session-file-limits.d.ts +0 -4
  33. package/dist/node/session-file-limits.js +0 -7
  34. package/dist/node/session-file-limits.js.map +0 -1
  35. package/dist/node/session-files.d.ts +0 -80
  36. package/dist/node/session-files.js +0 -254
  37. package/dist/node/session-files.js.map +0 -1
@@ -11,6 +11,7 @@ import type { RouteId } from "./routes.js";
11
11
  /** The one client capability every generated resource method needs. */
12
12
  export interface ResourceExecutor {
13
13
  execute<T>(routeId: RouteId, bindings?: Readonly<Record<string, string>>, options?: ExecuteOptions): Promise<T>;
14
+ stream<T>(routeId: RouteId, bindings?: Readonly<Record<string, string>>, options?: ExecuteOptions): AsyncIterable<T>;
14
15
  }
15
16
  /** Everything beyond the path a single call can carry. */
16
17
  export interface ExecuteOptions {
@@ -55,394 +56,82 @@ export declare class AuthClient {
55
56
  }): Promise<Models.DashboardSessionCredential>;
56
57
  /** `DELETE /api/auth/sessions/current` — Close the browser session the caller presented. */
57
58
  dashboardSessionDelete(): Promise<void>;
58
- /** `POST /api/auth/device/authorizations` — Begin the CLI device-authorization flow. */
59
- deviceAuthorizationCreate(params: {
60
- readonly body: Models.DeviceAuthorizationRequest;
61
- readonly idempotencyKey: string;
62
- }): Promise<Models.DeviceAuthorization>;
63
- /** `POST /api/auth/device/decisions` — Approve or deny a pending device authorization. */
64
- deviceDecisionCreate(params: {
65
- readonly body: Models.DeviceDecisionRequest;
66
- }): Promise<Models.DeviceDecisionResult>;
67
- /** `POST /api/auth/device/tokens` — Exchange an approved device code for an account token. */
68
- deviceTokenCreate(params: {
69
- readonly body: Models.DeviceTokenRequest;
70
- }): Promise<Models.DeviceToken>;
71
59
  }
72
60
  /** The `billing` operations. */
73
61
  export declare class BillingClient {
74
62
  #private;
75
63
  constructor(executor: ResourceExecutor);
76
- /** `GET /api/organizations/{organizationId}/billing/auto-topup-policy` — Read the automatic top-up policy. */
77
- billingAutoTopupPolicyGet(params: {
78
- readonly organizationId: Models.Id<"organization">;
79
- }): Promise<Models.AutoTopupPolicy>;
80
- /** `PUT /api/organizations/{organizationId}/billing/auto-topup-policy` — Replace the automatic top-up policy. */
81
- billingAutoTopupPolicyPut(params: {
82
- readonly organizationId: Models.Id<"organization">;
83
- readonly body: Models.AutoTopupPolicyRequest;
64
+ /** `GET /api/billing/balance` — Read the caller's prepaid balance and active reservations. */
65
+ billingBalanceGet(): Promise<Models.BillingBalance>;
66
+ /** `DELETE /api/billing/payment-methods/{paymentMethodId}` — Detach a card owned by the caller's account. */
67
+ billingPaymentMethodDelete(params: {
68
+ readonly paymentMethodId: Models.Id<"payment_method">;
84
69
  readonly idempotencyKey: string;
85
- }): Promise<Models.AutoTopupPolicy>;
86
- /** `GET /api/billing/balance` — Read the prepaid balance of an organization. */
87
- billingBalanceGet(params?: {
88
- readonly query?: {
89
- readonly organizationId?: string;
90
- };
91
- }): Promise<Models.BillingBalance>;
92
- /** `POST /api/organizations/{organizationId}/billing/portal-sessions` — Create a hosted billing portal session. */
93
- billingPortalSessionCreate(params: {
94
- readonly organizationId: Models.Id<"organization">;
95
- readonly body: Models.PortalSessionRequest;
70
+ }): Promise<void>;
71
+ /** `POST /api/billing/payment-method-sessions` — Create a Stripe-hosted card setup session with explicit consent. */
72
+ billingPaymentMethodSessionCreate(params: {
73
+ readonly body: Models.PaymentMethodSessionRequest;
96
74
  readonly idempotencyKey: string;
97
75
  }): Promise<Models.HostedSession>;
98
- /** `POST /api/organizations/{organizationId}/billing/statements/{statementId}/downloads` — Mint a download grant for an issued statement. */
99
- billingStatementDownloadCreate(params: {
100
- readonly organizationId: Models.Id<"organization">;
101
- readonly statementId: Models.Id<"statement">;
102
- readonly body: Models.EmptyRequest;
103
- readonly idempotencyKey: string;
104
- }): Promise<Models.DownloadGrant>;
105
- /** `GET /api/organizations/{organizationId}/billing/statements/{statementId}` — Read one immutable issued statement. */
106
- billingStatementGet(params: {
107
- readonly organizationId: Models.Id<"organization">;
108
- readonly statementId: Models.Id<"statement">;
109
- }): Promise<Models.Statement>;
110
- /** `GET /api/organizations/{organizationId}/billing/statements` — List issued statements, newest first. */
111
- billingStatementsList(params: {
112
- readonly organizationId: Models.Id<"organization">;
113
- readonly query?: {
114
- readonly cursor?: string;
115
- readonly limit?: string;
116
- };
117
- }): Promise<Models.StatementSummaryPage>;
118
- /** `POST /api/organizations/{organizationId}/billing/top-up-checkouts` — Create a hosted top-up checkout. */
76
+ /** `GET /api/billing/payment-methods` — List card display metadata for the caller's account. */
77
+ billingPaymentMethodsList(): Promise<Models.PaymentMethodPage>;
78
+ /** `POST /api/billing/top-up-checkouts` — Create a one-time Stripe-hosted prepaid top-up checkout. */
119
79
  billingTopUpCheckoutCreate(params: {
120
- readonly organizationId: Models.Id<"organization">;
121
80
  readonly body: Models.TopUpCheckoutRequest;
122
81
  readonly idempotencyKey: string;
123
82
  }): Promise<Models.HostedSession>;
124
- }
125
- /** The `bootstrap` operations. */
126
- export declare class BootstrapClient {
127
- #private;
128
- constructor(executor: ResourceExecutor);
129
- /** `GET /api/bootstrap` — One bounded read that fills the dashboard shell. */
130
- dashboardBootstrapGet(): Promise<Models.DashboardBootstrap>;
131
- }
132
- /** The `files` operations. */
133
- export declare class FilesClient {
134
- #private;
135
- constructor(executor: ResourceExecutor);
136
- /** `POST /api/sessions/{sessionId}/files/live/downloads/{fileDownloadId}/completion` — Re-stat, re-hash, and close an exact live-file download after SDK verification. */
137
- sessionFilesLiveDownloadComplete(params: {
138
- readonly sessionId: Models.Id<"session">;
139
- readonly fileDownloadId: Models.Id<"file_download">;
140
- readonly body: Models.LiveFileDownloadCompleteRequest;
141
- readonly idempotencyKey: string;
142
- }): Promise<Models.LiveFileDownload>;
143
- /** `POST /api/sessions/{sessionId}/files/live/downloads` — Open one exact-version live file directly from the retained generation, auto-resuming it. */
144
- sessionFilesLiveDownloadCreate(params: {
145
- readonly sessionId: Models.Id<"session">;
146
- readonly body: Models.LiveFileDownloadRequest;
147
- readonly idempotencyKey: string;
148
- }): Promise<Models.LiveFileDownload>;
149
- /** `DELETE /api/sessions/{sessionId}/files/live/downloads/{fileDownloadId}` — Close an abandoned live-file descriptor, auto-resuming the same generation. */
150
- sessionFilesLiveDownloadDelete(params: {
151
- readonly sessionId: Models.Id<"session">;
152
- readonly fileDownloadId: Models.Id<"file_download">;
153
- }): Promise<void>;
154
- /** `GET /api/sessions/{sessionId}/files/live/downloads/{fileDownloadId}/parts/{partNumber}` — Read one raw exact-version range directly from the retained generation. */
155
- sessionFilesLiveDownloadPartGet(params: {
156
- readonly sessionId: Models.Id<"session">;
157
- readonly fileDownloadId: Models.Id<"file_download">;
158
- readonly partNumber: number;
159
- readonly query: {
160
- readonly version: string;
161
- };
162
- }): Promise<Uint8Array>;
163
- /** `POST /api/sessions/{sessionId}/files/live/list` — List the exact live generation, auto-resuming that same generation when suspended. */
164
- sessionFilesLiveList(params: {
165
- readonly sessionId: Models.Id<"session">;
166
- readonly body: Models.LiveFileListRequest;
167
- }): Promise<Models.LiveFileEntryPage>;
168
- /** `POST /api/sessions/{sessionId}/files/live/stat` — Stat one live path without following a symlink, auto-resuming the same generation. */
169
- sessionFilesLiveStat(params: {
170
- readonly sessionId: Models.Id<"session">;
171
- readonly body: Models.LiveFileStatRequest;
172
- }): Promise<Models.LiveFileEntry>;
173
- /** `POST /api/sessions/{sessionId}/files/live/uploads/{fileUploadId}/completion` — Verify every part and atomically publish one live file in the same generation. */
174
- sessionFilesLiveUploadComplete(params: {
175
- readonly sessionId: Models.Id<"session">;
176
- readonly fileUploadId: Models.Id<"file_upload">;
177
- readonly idempotencyKey: string;
178
- }): Promise<Models.LiveFileUpload>;
179
- /** `POST /api/sessions/{sessionId}/files/live/uploads` — Create a resumable upload in the exact live generation, auto-resuming it when suspended. */
180
- sessionFilesLiveUploadCreate(params: {
181
- readonly sessionId: Models.Id<"session">;
182
- readonly body: Models.LiveFileUploadCreateRequest;
183
- readonly idempotencyKey: string;
184
- }): Promise<Models.LiveFileUpload>;
185
- /** `DELETE /api/sessions/{sessionId}/files/live/uploads/{fileUploadId}` — Abort a partial upload, auto-resuming the same generation to remove its temporary bytes. */
186
- sessionFilesLiveUploadDelete(params: {
187
- readonly sessionId: Models.Id<"session">;
188
- readonly fileUploadId: Models.Id<"file_upload">;
189
- }): Promise<void>;
190
- /** `GET /api/sessions/{sessionId}/files/live/uploads/{fileUploadId}` — Read resumable live-upload state, auto-resuming the same generation. */
191
- sessionFilesLiveUploadGet(params: {
192
- readonly sessionId: Models.Id<"session">;
193
- readonly fileUploadId: Models.Id<"file_upload">;
194
- }): Promise<Models.LiveFileUpload>;
195
- /** `PUT /api/sessions/{sessionId}/files/live/uploads/{fileUploadId}/parts/{partNumber}` — Put one exact logical part directly into the retained generation. */
196
- sessionFilesLiveUploadPartPut(params: {
197
- readonly sessionId: Models.Id<"session">;
198
- readonly fileUploadId: Models.Id<"file_upload">;
199
- readonly partNumber: number;
200
- readonly query: {
201
- readonly sha256: string;
202
- };
203
- readonly body: Uint8Array;
204
- }): Promise<Models.LiveFileUpload>;
205
- }
206
- /** The `identity` operations. */
207
- export declare class IdentityClient {
208
- #private;
209
- constructor(executor: ResourceExecutor);
210
- /** `GET /api/account` — Read the account and its operational state. */
211
- accountGet(params: {
212
- readonly query: {
213
- readonly organizationId: string;
214
- };
215
- }): Promise<Models.AccountOperationalState>;
216
- }
217
- /** The `observations` operations. */
218
- export declare class ObservationsClient {
219
- #private;
220
- constructor(executor: ResourceExecutor);
221
- /** `POST /api/observations/events/query` — Query workspace events observations. */
222
- observationsEventsQuery(params: {
223
- readonly body: Models.ObservationQuery;
224
- }): Promise<Models.ObservationPage>;
225
- /** `POST /api/observations/logs/query` — Query workspace logs observations. */
226
- observationsLogsQuery(params: {
227
- readonly body: Models.ObservationQuery;
228
- }): Promise<Models.ObservationPage>;
229
- /** `POST /api/observations/metrics/aggregate` — Aggregate workspace metric observations. */
230
- observationsMetricsAggregate(params: {
231
- readonly body: Models.MetricAggregationRequest;
232
- }): Promise<Models.MetricAggregationPage>;
233
- /** `POST /api/observations/metrics/query` — Query workspace metrics observations. */
234
- observationsMetricsQuery(params: {
235
- readonly body: Models.ObservationQuery;
236
- }): Promise<Models.ObservationPage>;
237
- /** `POST /api/observations/spans/query` — Query workspace spans observations. */
238
- observationsSpansQuery(params: {
239
- readonly body: Models.ObservationQuery;
240
- }): Promise<Models.ObservationPage>;
241
- /** `POST /api/observations/telemetry/query` — Query workspace telemetry observations. */
242
- observationsTelemetryQuery(params: {
243
- readonly body: Models.ObservationQuery;
244
- }): Promise<Models.ObservationPage>;
245
- /** `POST /api/observations/traces/query` — Query workspace traces observations. */
246
- observationsTracesQuery(params: {
247
- readonly body: Models.ObservationQuery;
248
- }): Promise<Models.ObservationPage>;
249
- /** `POST /api/observations/{sessionId}/events/query` — Query session events observations. */
250
- sessionObservationsEventsQuery(params: {
251
- readonly sessionId: Models.Id<"session">;
252
- readonly body: Models.ObservationQuery;
253
- }): Promise<Models.ObservationPage>;
254
- /** `POST /api/observations/{sessionId}/logs/query` — Query session logs observations. */
255
- sessionObservationsLogsQuery(params: {
256
- readonly sessionId: Models.Id<"session">;
257
- readonly body: Models.ObservationQuery;
258
- }): Promise<Models.ObservationPage>;
259
- /** `POST /api/observations/{sessionId}/metrics/aggregate` — Aggregate session metric observations. */
260
- sessionObservationsMetricsAggregate(params: {
261
- readonly sessionId: Models.Id<"session">;
262
- readonly body: Models.MetricAggregationRequest;
263
- }): Promise<Models.MetricAggregationPage>;
264
- /** `POST /api/observations/{sessionId}/metrics/query` — Query session metrics observations. */
265
- sessionObservationsMetricsQuery(params: {
266
- readonly sessionId: Models.Id<"session">;
267
- readonly body: Models.ObservationQuery;
268
- }): Promise<Models.ObservationPage>;
269
- /** `POST /api/observations/{sessionId}/spans/query` — Query session spans observations. */
270
- sessionObservationsSpansQuery(params: {
271
- readonly sessionId: Models.Id<"session">;
272
- readonly body: Models.ObservationQuery;
273
- }): Promise<Models.ObservationPage>;
274
- /** `POST /api/observations/{sessionId}/telemetry/query` — Query session telemetry observations. */
275
- sessionObservationsTelemetryQuery(params: {
276
- readonly sessionId: Models.Id<"session">;
277
- readonly body: Models.ObservationQuery;
278
- }): Promise<Models.ObservationPage>;
279
- /** `GET /api/observations/{sessionId}/traces/{traceId}` — Read one assembled trace by its W3C identifier. */
280
- sessionObservationsTraceGet(params: {
281
- readonly sessionId: Models.Id<"session">;
282
- readonly traceId: string;
283
- }): Promise<Models.TraceDetail>;
284
- /** `POST /api/observations/{sessionId}/traces/query` — Query session traces observations. */
285
- sessionObservationsTracesQuery(params: {
286
- readonly sessionId: Models.Id<"session">;
287
- readonly body: Models.ObservationQuery;
288
- }): Promise<Models.ObservationPage>;
289
- }
290
- /** The `operations` operations. */
291
- export declare class OperationsClient {
292
- #private;
293
- constructor(executor: ResourceExecutor);
294
- /** `POST /api/operations/{operationId}/cancellations` — Request cancellation of a central operation. */
295
- centralOperationCancel(params: {
296
- readonly operationId: Models.Id<"operation">;
297
- readonly body: Models.EmptyRequest;
298
- }): Promise<Models.Operation>;
299
- /** `GET /api/operations/{operationId}` — Read one central durable operation. */
300
- centralOperationGet(params: {
301
- readonly operationId: Models.Id<"operation">;
302
- }): Promise<Models.Operation>;
303
- /** `GET /api/operations` — List central durable operations for one organization. */
304
- centralOperationsList(params: {
305
- readonly query: {
306
- readonly cursor?: string;
307
- readonly kind?: string;
308
- readonly limit?: string;
309
- readonly organizationId: string;
310
- readonly status?: string;
311
- };
312
- }): Promise<Models.OperationPage>;
313
- /** `POST /api/operations/{operationId}/cancellations` — Request cancellation of a regional operation. */
314
- regionalOperationCancel(params: {
315
- readonly operationId: Models.Id<"operation">;
316
- readonly body: Models.EmptyRequest;
317
- }): Promise<Models.Operation>;
318
- /** `GET /api/operations/{operationId}` — Read one regional durable operation. */
319
- regionalOperationGet(params: {
320
- readonly operationId: Models.Id<"operation">;
321
- }): Promise<Models.Operation>;
322
- /** `GET /api/operations` — List regional durable operations. */
323
- regionalOperationsList(params?: {
324
- readonly query?: {
325
- readonly cursor?: string;
326
- readonly kind?: string;
327
- readonly limit?: string;
328
- readonly sessionId?: string;
329
- readonly status?: string;
330
- };
331
- }): Promise<Models.OperationPage>;
332
- }
333
- /** The `organizations` operations. */
334
- export declare class OrganizationsClient {
335
- #private;
336
- constructor(executor: ResourceExecutor);
337
- /** `POST /api/invitations/acceptances` — Redeem every pending invitation addressed to the caller's verified email. */
338
- invitationAccept(params: {
339
- readonly body: Models.EmptyRequest;
340
- }): Promise<Models.InvitationAcceptResult>;
341
- /** `POST /api/organizations/{organizationId}/invitations` — Invite a person to the organization. */
342
- invitationCreate(params: {
343
- readonly organizationId: Models.Id<"organization">;
344
- readonly body: Models.InvitationCreateRequest;
345
- readonly idempotencyKey: string;
346
- }): Promise<Models.Invitation>;
347
- /** `GET /api/organizations/{organizationId}/memberships` — List the memberships of an organization. */
348
- membershipsList(params: {
349
- readonly organizationId: Models.Id<"organization">;
83
+ /** `GET /api/billing/transactions` — List immutable prepaid ledger transactions, newest first. */
84
+ billingTransactionsList(params?: {
350
85
  readonly query?: {
351
86
  readonly cursor?: string;
352
87
  readonly limit?: string;
353
88
  };
354
- }): Promise<Models.MembershipPage>;
355
- /** `POST /api/organizations` — Create an organization whose creator becomes owner. */
356
- organizationCreate(params: {
357
- readonly body: Models.OrganizationCreateRequest;
358
- readonly idempotencyKey: string;
359
- }): Promise<Models.Organization>;
360
- /** `GET /api/organizations/{organizationId}` — Read one organization. */
361
- organizationGet(params: {
362
- readonly organizationId: Models.Id<"organization">;
363
- }): Promise<Models.Organization>;
364
- /** `GET /api/organizations` — List organizations the caller belongs to. */
365
- organizationsList(params?: {
89
+ }): Promise<Models.BillingTransactionPage>;
90
+ /** `GET /api/billing/usage` — Read bounded rated usage and its settlement coverage. */
91
+ billingUsageGet(params?: {
366
92
  readonly query?: {
93
+ readonly category?: string;
367
94
  readonly cursor?: string;
95
+ readonly from?: string;
368
96
  readonly limit?: string;
97
+ readonly sessionId?: string;
98
+ readonly to?: string;
369
99
  };
370
- }): Promise<Models.OrganizationPage>;
371
- }
372
- /** The `otlp` operations. */
373
- export declare class OtlpClient {
374
- #private;
375
- constructor(executor: ResourceExecutor);
376
- /** `POST /api/otlp/v1/logs` — Admit an OTLP logs batch. */
377
- otlpLogsIngest(params: {
378
- readonly body: unknown;
379
- readonly idempotencyKey: string;
380
- }): Promise<Models.TelemetryAdmissionReceipt>;
381
- /** `POST /api/otlp/v1/metrics` — Admit an OTLP metrics batch. */
382
- otlpMetricsIngest(params: {
383
- readonly body: unknown;
384
- readonly idempotencyKey: string;
385
- }): Promise<Models.TelemetryAdmissionReceipt>;
386
- /** `POST /api/otlp/v1/traces` — Admit an OTLP traces batch. */
387
- otlpTracesIngest(params: {
388
- readonly body: unknown;
389
- readonly idempotencyKey: string;
390
- }): Promise<Models.TelemetryAdmissionReceipt>;
100
+ }): Promise<Models.BillingUsagePage>;
391
101
  }
392
- /** The `provider-credentials` operations. */
393
- export declare class ProviderCredentialsClient {
102
+ /** The `bootstrap` operations. */
103
+ export declare class BootstrapClient {
394
104
  #private;
395
105
  constructor(executor: ResourceExecutor);
396
- /** `GET /api/workspace/provider-credentials/{providerCredentialId}` — Read one BYOK provider-credential binding. */
397
- providerCredentialGet(params: {
398
- readonly providerCredentialId: Models.Id<"provider_credential">;
399
- }): Promise<Models.ProviderCredential>;
400
- /** `POST /api/workspace/provider-credentials` — Register a dedicated BYOK provider credential; carries plaintext once. */
401
- providerCredentialRegister(params: {
402
- readonly body: Models.ProviderCredentialRegisterRequest;
403
- readonly idempotencyKey: string;
404
- }): Promise<Models.ProviderCredential>;
405
- /** `POST /api/workspace/provider-credentials/{providerCredentialId}/revocations` — Revoke a BYOK provider-credential binding. */
406
- providerCredentialRevoke(params: {
407
- readonly providerCredentialId: Models.Id<"provider_credential">;
408
- readonly body: Models.EmptyRequest;
409
- readonly idempotencyKey: string;
410
- }): Promise<Models.ProviderCredential>;
411
- /** `GET /api/workspace/provider-credentials` — List BYOK provider-credential binding metadata. */
412
- providerCredentialsList(params?: {
413
- readonly query?: {
414
- readonly cursor?: string;
415
- readonly limit?: string;
416
- readonly provider?: string;
417
- };
418
- }): Promise<Models.ProviderCredentialPage>;
106
+ /** `GET /api/bootstrap` — One bounded read that fills the dashboard shell. */
107
+ dashboardBootstrapGet(): Promise<Models.DashboardBootstrap>;
419
108
  }
420
109
  /** The `registry` operations. */
421
110
  export declare class RegistryClient {
422
111
  #private;
423
112
  constructor(executor: ResourceExecutor);
424
- /** `DELETE /api/workspace/files/{name}` — Delete one registered workspace file. */
113
+ /** `DELETE /api/files/{name}` — Delete one current workspace file. */
425
114
  registryFilesDelete(params: {
426
115
  readonly name: string;
427
116
  }): Promise<void>;
428
- /** `POST /api/workspace/files/{name}/downloads` — Mint a download grant for a registered workspace file. */
117
+ /** `POST /api/files/{name}/downloads` — Mint a download grant for a ready current workspace file. */
429
118
  registryFilesDownloadCreate(params: {
430
119
  readonly name: string;
431
120
  readonly body: Models.RegistryDownloadRequest;
432
121
  readonly idempotencyKey: string;
433
122
  }): Promise<Models.DownloadGrant>;
434
- /** `GET /api/workspace/files/{name}` — Read one registered workspace file. */
123
+ /** `GET /api/files/{name}` — Read one current workspace file. */
435
124
  registryFilesGet(params: {
436
125
  readonly name: string;
437
126
  }): Promise<Models.RegisteredFile>;
438
- /** `GET /api/workspace/files` — List registered workspace files. */
127
+ /** `GET /api/files` — List current workspace files. */
439
128
  registryFilesList(params?: {
440
129
  readonly query?: {
441
130
  readonly cursor?: string;
442
131
  readonly limit?: string;
443
132
  };
444
133
  }): Promise<Models.RegisteredFilePage>;
445
- /** `PUT /api/workspace/files/{name}` — Replace one registered workspace file. */
134
+ /** `PUT /api/files/{name}` — Replace one current workspace file from inline bytes or an HTTPS URL. */
446
135
  registryFilesPut(params: {
447
136
  readonly name: string;
448
137
  readonly body: Models.RegisteredFileValue;
@@ -458,29 +147,29 @@ export declare class SessionsClient {
458
147
  readonly sessionId: Models.Id<"session">;
459
148
  readonly body: Models.EmptyRequest;
460
149
  readonly operationId: Models.Id<"operation">;
461
- }): Promise<Models.Operation>;
462
- /** `POST /api/sessions` — Create an eight-hour multi-turn session. */
150
+ }): Promise<Models.SessionCommandReceipt>;
151
+ /** `POST /api/sessions` — Create a durable session and eagerly prepare its default-on sandbox in the background. */
463
152
  sessionCreate(params: {
464
153
  readonly body: Models.SessionCreateRequest;
465
154
  readonly idempotencyKey: string;
466
155
  }): Promise<Models.Session>;
467
- /** `POST /api/sessions/{sessionId}/deletions` — Irreversibly delete the session and session-scoped user content, observations, telemetry, and export objects. Independent registered workspace files remain. */
156
+ /** `POST /api/sessions/{sessionId}/deletions` — Irreversibly delete session-scoped user content; independent workspace files remain. */
468
157
  sessionDelete(params: {
469
158
  readonly sessionId: Models.Id<"session">;
470
159
  readonly body: Models.EmptyRequest;
471
160
  readonly operationId: Models.Id<"operation">;
472
- }): Promise<Models.Operation>;
473
- /** `GET /api/sessions/{sessionId}` — Read session metadata, including automatic lifecycle state, or its minimal deletion tombstone. */
161
+ }): Promise<Models.SessionCommandReceipt>;
162
+ /** `GET /api/sessions/{sessionId}` — Read durable session metadata and sandbox preparation state. */
474
163
  sessionGet(params: {
475
164
  readonly sessionId: Models.Id<"session">;
476
165
  }): Promise<Models.Session>;
477
- /** `POST /api/sessions/{sessionId}/messages` — Send text and start the session's next work, automatically resuming the same suspended generation. */
166
+ /** `POST /api/sessions/{sessionId}/messages` — Admit one text message; file paths are referenced in text, never attached. */
478
167
  sessionMessageSend(params: {
479
168
  readonly sessionId: Models.Id<"session">;
480
169
  readonly body: Models.MessageSendRequest;
481
170
  readonly idempotencyKey: string;
482
171
  }): Promise<Models.MessageSendResult>;
483
- /** `GET /api/sessions/{sessionId}/messages` — List complete sealed messages in immutable seal-visibility order. */
172
+ /** `GET /api/sessions/{sessionId}/messages` — List complete committed messages in immutable seal order. */
484
173
  sessionMessagesList(params: {
485
174
  readonly sessionId: Models.Id<"session">;
486
175
  readonly query?: {
@@ -488,24 +177,40 @@ export declare class SessionsClient {
488
177
  readonly limit?: string;
489
178
  };
490
179
  }): Promise<Models.MessagePage>;
491
- /** `POST /api/sessions/{sessionId}/resumptions` — Resume the same retained generation to idle. */
492
- sessionResume(params: {
180
+ /** `GET /api/sessions/{sessionId}/messages/stream` — Stream bounded assistant previews plus commit/reconcile/gap frames. */
181
+ sessionMessagesStream(params: {
493
182
  readonly sessionId: Models.Id<"session">;
494
- readonly body: Models.EmptyRequest;
495
- readonly operationId: Models.Id<"operation">;
496
- }): Promise<Models.Operation>;
497
- /** `POST /api/sessions/{sessionId}/suspensions` — Suspend an idle session while retaining its exact generation; cancel active work first. */
498
- sessionSuspend(params: {
183
+ readonly query?: {
184
+ readonly after?: string;
185
+ };
186
+ }): AsyncIterable<Models.MessageStreamFrame>;
187
+ /** `POST /api/sessions/{sessionId}/telemetry/downloads` — Mint a short-lived download for a bounded retained telemetry export. */
188
+ sessionTelemetryDownloadCreate(params: {
499
189
  readonly sessionId: Models.Id<"session">;
500
- readonly body: Models.EmptyRequest;
501
- readonly operationId: Models.Id<"operation">;
502
- }): Promise<Models.Operation>;
503
- /** `POST /api/sessions/{sessionId}/terminations` — Permanently destroy compute and live files while retaining metadata and sealed messages. */
190
+ readonly body: Models.TelemetryDownloadRequest;
191
+ readonly idempotencyKey: string;
192
+ }): Promise<Models.TelemetryDownloadGrant>;
193
+ /** `GET /api/sessions/{sessionId}/telemetry/replay` — Replay retained telemetry from compressed immutable S3 segments. */
194
+ sessionTelemetryReplay(params: {
195
+ readonly sessionId: Models.Id<"session">;
196
+ readonly query?: {
197
+ readonly after?: string;
198
+ readonly limit?: string;
199
+ };
200
+ }): AsyncIterable<Models.TelemetryFrame>;
201
+ /** `GET /api/sessions/{sessionId}/telemetry/stream` — Stream live trusted assistant, tool, runtime, Logs and Traces telemetry with bounded previews. */
202
+ sessionTelemetryStream(params: {
203
+ readonly sessionId: Models.Id<"session">;
204
+ readonly query?: {
205
+ readonly after?: string;
206
+ };
207
+ }): AsyncIterable<Models.TelemetryFrame>;
208
+ /** `POST /api/sessions/{sessionId}/terminations` — Destroy sandbox compute while retaining session metadata and messages. */
504
209
  sessionTerminate(params: {
505
210
  readonly sessionId: Models.Id<"session">;
506
211
  readonly body: Models.EmptyRequest;
507
212
  readonly operationId: Models.Id<"operation">;
508
- }): Promise<Models.Operation>;
213
+ }): Promise<Models.SessionCommandReceipt>;
509
214
  /** `GET /api/sessions` — List sessions in the workspace. */
510
215
  sessionsList(params?: {
511
216
  readonly query?: {
@@ -515,152 +220,21 @@ export declare class SessionsClient {
515
220
  };
516
221
  }): Promise<Models.SessionListPage>;
517
222
  }
518
- /** The `telemetry-lifecycle` operations. */
519
- export declare class TelemetryLifecycleClient {
520
- #private;
521
- constructor(executor: ResourceExecutor);
522
- /** `POST /api/observations/{sessionId}/telemetry/exports` — Admit the durable session telemetry-export operation. */
523
- sessionTelemetryExportCreate(params: {
524
- readonly sessionId: Models.Id<"session">;
525
- readonly body: Models.TelemetryExportRequest;
526
- readonly operationId: Models.Id<"operation">;
527
- }): Promise<Models.Operation>;
528
- /** `POST /api/observations/{sessionId}/telemetry/exports/{exportId}/downloads` — Mint a download grant for a ready session telemetry export. */
529
- sessionTelemetryExportDownloadCreate(params: {
530
- readonly sessionId: Models.Id<"session">;
531
- readonly exportId: Models.Id<"export">;
532
- readonly body: Models.EmptyRequest;
533
- readonly idempotencyKey: string;
534
- }): Promise<Models.DownloadGrant>;
535
- /** `GET /api/observations/{sessionId}/telemetry/exports/{exportId}` — Read one session telemetry export record. */
536
- sessionTelemetryExportGet(params: {
537
- readonly sessionId: Models.Id<"session">;
538
- readonly exportId: Models.Id<"export">;
539
- }): Promise<Models.TelemetryExport>;
540
- /** `POST /api/observations/{sessionId}/telemetry/exports/{exportId}/revocations` — Revoke a session telemetry export and its outstanding grants. */
541
- sessionTelemetryExportRevoke(params: {
542
- readonly sessionId: Models.Id<"session">;
543
- readonly exportId: Models.Id<"export">;
544
- readonly body: Models.EmptyRequest;
545
- readonly idempotencyKey: string;
546
- }): Promise<Models.TelemetryExport>;
547
- /** `GET /api/observations/{sessionId}/telemetry/gaps/{gapId}` — Read one recorded session telemetry gap. */
548
- sessionTelemetryGapGet(params: {
549
- readonly sessionId: Models.Id<"session">;
550
- readonly gapId: Models.Id<"telemetry_gap">;
551
- }): Promise<Models.TelemetryGap>;
552
- /** `POST /api/observations/{sessionId}/telemetry/gaps/query` — Query recorded session telemetry gaps. */
553
- sessionTelemetryGapsQuery(params: {
554
- readonly sessionId: Models.Id<"session">;
555
- readonly body: Models.TelemetryGapQuery;
556
- }): Promise<Models.TelemetryGapPage>;
557
- /** `POST /api/observations/telemetry/exports` — Admit the durable workspace telemetry-export operation. */
558
- telemetryExportCreate(params: {
559
- readonly body: Models.TelemetryExportRequest;
560
- readonly operationId: Models.Id<"operation">;
561
- }): Promise<Models.Operation>;
562
- /** `POST /api/observations/telemetry/exports/{exportId}/downloads` — Mint a download grant for a ready telemetry export. */
563
- telemetryExportDownloadCreate(params: {
564
- readonly exportId: Models.Id<"export">;
565
- readonly body: Models.EmptyRequest;
566
- readonly idempotencyKey: string;
567
- }): Promise<Models.DownloadGrant>;
568
- /** `GET /api/observations/telemetry/exports/{exportId}` — Read one telemetry export record. */
569
- telemetryExportGet(params: {
570
- readonly exportId: Models.Id<"export">;
571
- }): Promise<Models.TelemetryExport>;
572
- /** `POST /api/observations/telemetry/exports/{exportId}/revocations` — Revoke a telemetry export and its outstanding grants. */
573
- telemetryExportRevoke(params: {
574
- readonly exportId: Models.Id<"export">;
575
- readonly body: Models.EmptyRequest;
576
- readonly idempotencyKey: string;
577
- }): Promise<Models.TelemetryExport>;
578
- /** `GET /api/observations/telemetry/gaps/{gapId}` — Read one recorded telemetry gap. */
579
- telemetryGapGet(params: {
580
- readonly gapId: Models.Id<"telemetry_gap">;
581
- }): Promise<Models.TelemetryGap>;
582
- /** `POST /api/observations/telemetry/gaps/query` — Query recorded workspace telemetry gaps. */
583
- telemetryGapsQuery(params: {
584
- readonly body: Models.TelemetryGapQuery;
585
- }): Promise<Models.TelemetryGapPage>;
586
- }
587
223
  /** The `uploads` operations. */
588
224
  export declare class UploadsClient {
589
225
  #private;
590
226
  constructor(executor: ResourceExecutor);
591
- /** `DELETE /api/workspace/uploads/{uploadId}` — Abort a staged upload. */
592
- uploadAbort(params: {
593
- readonly uploadId: Models.Id<"upload">;
594
- }): Promise<void>;
595
- /** `POST /api/workspace/uploads/{uploadId}/completion` — Complete a staged upload. */
227
+ /** `POST /api/uploads/{uploadId}/completions` — Verify an admitted upload and publish it only if its private overwrite intent is still current. */
596
228
  uploadComplete(params: {
597
229
  readonly uploadId: Models.Id<"upload">;
598
230
  readonly body: Models.UploadCompleteRequest;
599
231
  readonly idempotencyKey: string;
600
- }): Promise<Models.Upload>;
601
- /** `POST /api/workspace/uploads` — Stage a large registered-resource value. */
232
+ }): Promise<Models.RegisteredFile>;
233
+ /** `POST /api/uploads` — Admit a direct upload for one current workspace-file name and return every bounded part grant. */
602
234
  uploadCreate(params: {
603
235
  readonly body: Models.UploadCreateRequest;
604
236
  readonly idempotencyKey: string;
605
- }): Promise<Models.Upload>;
606
- /** `POST /api/workspace/uploads/{uploadId}/parts` — Mint presigned PUT grants for the named parts. */
607
- uploadPartsGrant(params: {
608
- readonly uploadId: Models.Id<"upload">;
609
- readonly body: Models.UploadPartsRequest;
610
- }): Promise<Models.UploadPartGrants>;
611
- }
612
- /** The `usage` operations. */
613
- export declare class UsageClient {
614
- #private;
615
- constructor(executor: ResourceExecutor);
616
- /** `POST /api/billing/usage/query` — Query rated usage for this workspace. */
617
- usageQuery(params: {
618
- readonly query?: {
619
- readonly workspaceId?: string;
620
- };
621
- readonly body: Models.UsageQuery;
622
- }): Promise<Models.UsagePage>;
623
- }
624
- /** The `workspace` operations. */
625
- export declare class WorkspaceClient {
626
- #private;
627
- constructor(executor: ResourceExecutor);
628
- /** `GET /api/workspace` — Read the workspace this credential is pinned to. */
629
- workspaceCurrentGet(): Promise<Models.Workspace>;
630
- /** `GET /api/workspace/limits/{limitId}` — Read one effective workspace safety limit. */
631
- workspaceLimitGet(params: {
632
- readonly limitId: "context.tool_result_bytes" | "session.materialized_agents" | "session.initial_files_bytes" | "session.initial_files_count" | "session.agent_execution" | "session.run_budget" | "api.json_body" | "telemetry.batch" | "telemetry.ingest_rate" | "telemetry.metric_series" | "query.filter" | "query.page" | "stream.frame" | "metric.aggregate" | "registry.entries" | "registry.value_bytes" | "telemetry.export";
633
- }): Promise<Models.EffectiveWorkspaceLimit>;
634
- /** `GET /api/workspace/limits` — List the effective workspace safety limits. The registry is closed and complete, so the whole set is one page and no continuation is ever minted. */
635
- workspaceLimitsList(): Promise<Models.EffectiveWorkspaceLimitPage>;
636
- }
637
- /** The `workspaces` operations. */
638
- export declare class WorkspacesClient {
639
- #private;
640
- constructor(executor: ResourceExecutor);
641
- /** `POST /api/workspaces` — Create a region-pinned workspace. */
642
- workspaceCreate(params: {
643
- readonly body: Models.WorkspaceCreateRequest;
644
- readonly idempotencyKey: string;
645
- }): Promise<Models.Workspace>;
646
- /** `POST /api/workspaces/{workspaceId}/deletions` — Admit the global workspace-deletion operation. */
647
- workspaceDelete(params: {
648
- readonly workspaceId: Models.Id<"workspace">;
649
- readonly body: Models.WorkspaceDeleteRequest;
650
- readonly operationId: Models.Id<"operation">;
651
- }): Promise<Models.Operation>;
652
- /** `GET /api/workspaces/{workspaceId}` — Read one workspace. */
653
- workspaceGet(params: {
654
- readonly workspaceId: Models.Id<"workspace">;
655
- }): Promise<Models.Workspace>;
656
- /** `GET /api/workspaces` — List workspaces the caller can reach. */
657
- workspacesList(params?: {
658
- readonly query?: {
659
- readonly cursor?: string;
660
- readonly limit?: string;
661
- readonly organizationId?: string;
662
- };
663
- }): Promise<Models.WorkspacePage>;
237
+ }): Promise<Models.UploadAdmission>;
664
238
  }
665
239
  /**
666
240
  * The resource namespaces the client exposes.
@@ -671,6 +245,7 @@ export declare class WorkspacesClient {
671
245
  */
672
246
  export declare abstract class GeneratedResources implements ResourceExecutor {
673
247
  abstract execute<T>(routeId: RouteId, bindings?: Readonly<Record<string, string>>, options?: ExecuteOptions): Promise<T>;
248
+ abstract stream<T>(routeId: RouteId, bindings?: Readonly<Record<string, string>>, options?: ExecuteOptions): AsyncIterable<T>;
674
249
  /** The `api-keys` operations. */
675
250
  readonly apiKeys: ApiKeysClient;
676
251
  /** The `auth` operations. */
@@ -679,32 +254,10 @@ export declare abstract class GeneratedResources implements ResourceExecutor {
679
254
  readonly billing: BillingClient;
680
255
  /** The `bootstrap` operations. */
681
256
  readonly bootstrap: BootstrapClient;
682
- /** The `files` operations. */
683
- readonly files: FilesClient;
684
- /** The `identity` operations. */
685
- readonly identity: IdentityClient;
686
- /** The `observations` operations. */
687
- readonly observations: ObservationsClient;
688
- /** The `operations` operations. */
689
- readonly operations: OperationsClient;
690
- /** The `organizations` operations. */
691
- readonly organizations: OrganizationsClient;
692
- /** The `otlp` operations. */
693
- readonly otlp: OtlpClient;
694
- /** The `provider-credentials` operations. */
695
- readonly providerCredentials: ProviderCredentialsClient;
696
257
  /** The `registry` operations. */
697
258
  readonly registry: RegistryClient;
698
259
  /** The `sessions` operations. */
699
260
  readonly sessions: SessionsClient;
700
- /** The `telemetry-lifecycle` operations. */
701
- readonly telemetryLifecycle: TelemetryLifecycleClient;
702
261
  /** The `uploads` operations. */
703
262
  readonly uploads: UploadsClient;
704
- /** The `usage` operations. */
705
- readonly usage: UsageClient;
706
- /** The `workspace` operations. */
707
- readonly workspace: WorkspaceClient;
708
- /** The `workspaces` operations. */
709
- readonly workspaces: WorkspacesClient;
710
263
  }