oblien 2.3.2 → 2.5.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 (112) hide show
  1. package/README.md +1 -0
  2. package/dist/access.d.ts +79 -0
  3. package/dist/access.d.ts.map +1 -0
  4. package/dist/access.js +42 -0
  5. package/dist/access.js.map +1 -0
  6. package/dist/billing.d.ts +19 -10
  7. package/dist/billing.d.ts.map +1 -1
  8. package/dist/billing.js +22 -9
  9. package/dist/billing.js.map +1 -1
  10. package/dist/cli/commands/desktop.d.ts.map +1 -1
  11. package/dist/cli/commands/desktop.js +6 -2
  12. package/dist/cli/commands/desktop.js.map +1 -1
  13. package/dist/cli/commands/lifecycle.d.ts.map +1 -1
  14. package/dist/cli/commands/lifecycle.js +22 -0
  15. package/dist/cli/commands/lifecycle.js.map +1 -1
  16. package/dist/cli/commands/scp.js +9 -2
  17. package/dist/cli/commands/scp.js.map +1 -1
  18. package/dist/cli/commands/ssh.d.ts.map +1 -1
  19. package/dist/cli/commands/ssh.js +12 -0
  20. package/dist/cli/commands/ssh.js.map +1 -1
  21. package/dist/cli/commands/workloads.d.ts.map +1 -1
  22. package/dist/cli/commands/workloads.js +26 -2
  23. package/dist/cli/commands/workloads.js.map +1 -1
  24. package/dist/cli/commands/workspaces.d.ts.map +1 -1
  25. package/dist/cli/commands/workspaces.js +11 -0
  26. package/dist/cli/commands/workspaces.js.map +1 -1
  27. package/dist/client.d.ts +8 -0
  28. package/dist/client.d.ts.map +1 -1
  29. package/dist/client.js +12 -0
  30. package/dist/client.js.map +1 -1
  31. package/dist/disks.d.ts +49 -0
  32. package/dist/disks.d.ts.map +1 -0
  33. package/dist/disks.js +143 -0
  34. package/dist/disks.js.map +1 -0
  35. package/dist/http.d.ts +2 -0
  36. package/dist/http.d.ts.map +1 -1
  37. package/dist/http.js +12 -0
  38. package/dist/http.js.map +1 -1
  39. package/dist/index.d.ts +7 -2
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +2 -0
  42. package/dist/index.js.map +1 -1
  43. package/dist/namespace.d.ts +14 -11
  44. package/dist/namespace.d.ts.map +1 -1
  45. package/dist/namespace.js +10 -9
  46. package/dist/namespace.js.map +1 -1
  47. package/dist/resources/desktop.d.ts +27 -1
  48. package/dist/resources/desktop.d.ts.map +1 -1
  49. package/dist/resources/desktop.js +22 -1
  50. package/dist/resources/desktop.js.map +1 -1
  51. package/dist/resources/images.d.ts +70 -1
  52. package/dist/resources/images.d.ts.map +1 -1
  53. package/dist/resources/images.js.map +1 -1
  54. package/dist/resources/lifecycle.d.ts +11 -2
  55. package/dist/resources/lifecycle.d.ts.map +1 -1
  56. package/dist/resources/lifecycle.js +7 -2
  57. package/dist/resources/lifecycle.js.map +1 -1
  58. package/dist/resources/ssh.d.ts +3 -0
  59. package/dist/resources/ssh.d.ts.map +1 -1
  60. package/dist/resources/ssh.js +4 -0
  61. package/dist/resources/ssh.js.map +1 -1
  62. package/dist/resources/workloads.d.ts +8 -2
  63. package/dist/resources/workloads.d.ts.map +1 -1
  64. package/dist/resources/workloads.js +13 -2
  65. package/dist/resources/workloads.js.map +1 -1
  66. package/dist/runtime/terminal.d.ts +10 -0
  67. package/dist/runtime/terminal.d.ts.map +1 -1
  68. package/dist/runtime/terminal.js +19 -0
  69. package/dist/runtime/terminal.js.map +1 -1
  70. package/dist/runtime/ws.d.ts.map +1 -1
  71. package/dist/runtime/ws.js +6 -2
  72. package/dist/runtime/ws.js.map +1 -1
  73. package/dist/types/access.d.ts +65 -0
  74. package/dist/types/access.d.ts.map +1 -0
  75. package/dist/types/access.js +2 -0
  76. package/dist/types/access.js.map +1 -0
  77. package/dist/types/billing.d.ts +96 -10
  78. package/dist/types/billing.d.ts.map +1 -1
  79. package/dist/types/billing.js +0 -8
  80. package/dist/types/billing.js.map +1 -1
  81. package/dist/types/client.d.ts +4 -0
  82. package/dist/types/client.d.ts.map +1 -1
  83. package/dist/types/disks.d.ts +153 -0
  84. package/dist/types/disks.d.ts.map +1 -0
  85. package/dist/types/disks.js +2 -0
  86. package/dist/types/disks.js.map +1 -0
  87. package/dist/types/index.d.ts +7 -4
  88. package/dist/types/index.d.ts.map +1 -1
  89. package/dist/types/namespace.d.ts +31 -3
  90. package/dist/types/namespace.d.ts.map +1 -1
  91. package/dist/types/runtime.d.ts +3 -1
  92. package/dist/types/runtime.d.ts.map +1 -1
  93. package/dist/types/workspace-resources.d.ts +33 -0
  94. package/dist/types/workspace-resources.d.ts.map +1 -1
  95. package/dist/types/workspace.d.ts +41 -3
  96. package/dist/types/workspace.d.ts.map +1 -1
  97. package/dist/workspace-handle.d.ts +2 -0
  98. package/dist/workspace-handle.d.ts.map +1 -1
  99. package/dist/workspace-handle.js +2 -0
  100. package/dist/workspace-handle.js.map +1 -1
  101. package/dist/workspace.d.ts +2 -0
  102. package/dist/workspace.d.ts.map +1 -1
  103. package/dist/workspace.js +23 -7
  104. package/dist/workspace.js.map +1 -1
  105. package/docs/billing.md +241 -5
  106. package/docs/desktop.md +32 -0
  107. package/docs/namespaces.md +62 -1
  108. package/docs/on-demand.md +43 -0
  109. package/docs/runtime.md +2 -0
  110. package/docs/webhooks.md +42 -0
  111. package/docs/workspace-limit-report.md +6 -0
  112. package/package.json +1 -1
@@ -1,3 +1,12 @@
1
+ function requireHistoryAcknowledgement(response, id, expectedSize) {
2
+ // Older agents returned history with HTTP 200 even for DELETE or PATCH.
3
+ if (response?.success !== true || response.terminal_id !== id ||
4
+ !Number.isInteger(response.scrollback_size) || response.scrollback_size < 1 || response.scrollback_size > 262144 ||
5
+ (expectedSize !== undefined && response.scrollback_size !== (expectedSize || 65536))) {
6
+ throw new Error('Terminal history controls require an updated workspace runtime agent. The operation was not acknowledged.');
7
+ }
8
+ return response;
9
+ }
1
10
  /**
2
11
  * Terminal sessions inside the workspace runtime.
3
12
  *
@@ -54,5 +63,15 @@ export class TerminalResource {
54
63
  query: params?.bytes ? { bytes: params.bytes } : undefined,
55
64
  });
56
65
  }
66
+ /** Clear retained terminal output; the shell and its processes keep running. */
67
+ async clearScrollback(sessionId) {
68
+ const res = await this._http.request({ method: 'DELETE', path: `/terminals/${encodeURIComponent(sessionId)}/scrollback` });
69
+ return requireHistoryAcknowledgement(res, sessionId);
70
+ }
71
+ /** Retain up to 256 KiB in memory. Zero restores the 64 KiB default. */
72
+ async configureScrollback(sessionId, bytes) {
73
+ const res = await this._http.request({ method: 'PATCH', path: `/terminals/${encodeURIComponent(sessionId)}/scrollback`, body: { scrollback_size: bytes } });
74
+ return requireHistoryAcknowledgement(res, sessionId, bytes);
75
+ }
57
76
  }
58
77
  //# sourceMappingURL=terminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/runtime/terminal.ts"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;IAAG,CAAC;IAEzD,qCAAqC;IACrC,KAAK,CAAC,MAAM,CAAC,SAA+B,EAAE;QAC5C,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,KAAK;YAAE,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,GAAG;YAAE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACtC,IAAI,MAAM,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzC,IAAI,MAAM,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzC,IAAI,MAAM,CAAC,cAAc;YAAE,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;QAExE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAkB;YACzC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,YAAY;YAClB,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,IAAI;QACR,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuB;YACzD,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,YAAY;SACnB,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,gCAAgC;IAChC,KAAK,CAAC,KAAK,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACxB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,cAAc,SAAS,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,MAA2B;QAC7D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAA6B;YACpD,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,cAAc,SAAS,aAAa;YAC1C,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;SAC3D,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/runtime/terminal.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/runtime/ws.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,SAAS,EAGT,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,eAAe,CAA8C;IAIrE,mDAAmD;IACnD,OAAO,CAAC,iBAAiB,CAAyD;IAClF,mDAAmD;IACnD,OAAO,CAAC,eAAe,CAAqD;IAC5E,gDAAgD;IAChD,OAAO,CAAC,eAAe,CAAkD;IACzE,yBAAyB;IACzB,OAAO,CAAC,OAAO,CAA6B;IAC5C,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAyD;IACzE,wBAAwB;IACxB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,8BAA8B;IAC9B,OAAO,CAAC,UAAU,CAA2C;gBAEjD,cAAc,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,SAAS;IAWjE;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAKvE,mDAAmD;IACnD,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAKjE,4EAA4E;IAC5E,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAK9D,6DAA6D;IAC7D,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAKjC,2DAA2D;IAC3D,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAK9D,qCAAqC;IACrC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAKhD,2EAA2E;IAC3E,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,GAAG,IAAI;IAOlD;;;;;;OAMG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAWhF,sCAAsC;IACtC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAUpE,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO5C,qCAAqC;IACrC,OAAO,IAAI,IAAI;IAMf,qDAAqD;IACrD,KAAK,IAAI,IAAI;IAYb,4CAA4C;IAC5C,IAAI,SAAS,IAAI,OAAO,CAEvB;IAID,OAAO,CAAC,UAAU;IAgClB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,kBAAkB;CAe3B"}
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/runtime/ws.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,SAAS,EAGT,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,eAAe,CAA8C;IAIrE,mDAAmD;IACnD,OAAO,CAAC,iBAAiB,CAAyD;IAClF,mDAAmD;IACnD,OAAO,CAAC,eAAe,CAAqD;IAC5E,gDAAgD;IAChD,OAAO,CAAC,eAAe,CAAkD;IACzE,yBAAyB;IACzB,OAAO,CAAC,OAAO,CAA6B;IAC5C,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAyD;IACzE,wBAAwB;IACxB,OAAO,CAAC,QAAQ,CAA2C;IAC3D,8BAA8B;IAC9B,OAAO,CAAC,UAAU,CAA2C;gBAEjD,cAAc,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,SAAS;IAWjE;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAKvE,mDAAmD;IACnD,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAKjE,4EAA4E;IAC5E,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAK9D,6DAA6D;IAC7D,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAKjC,2DAA2D;IAC3D,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAK9D,qCAAqC;IACrC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAKhD,2EAA2E;IAC3E,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,GAAG,IAAI;IAOlD;;;;;;OAMG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAchF,sCAAsC;IACtC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAUpE,oCAAoC;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAO5C,qCAAqC;IACrC,OAAO,IAAI,IAAI;IAMf,qDAAqD;IACrD,KAAK,IAAI,IAAI;IAYb,4CAA4C;IAC5C,IAAI,SAAS,IAAI,OAAO,CAEvB;IAID,OAAO,CAAC,UAAU;IAiClB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,kBAAkB;CAe3B"}
@@ -107,6 +107,9 @@ export class RuntimeWebSocket {
107
107
  return;
108
108
  const id = typeof terminalId === 'string' ? parseInt(terminalId, 10) : terminalId;
109
109
  const payload = typeof data === 'string' ? new TextEncoder().encode(data) : data;
110
+ if (payload.length > 64 * 1024 || this._ws.bufferedAmount + payload.length > 256 * 1024) {
111
+ throw new RangeError('Terminal input exceeds the 64 KiB message or 256 KiB pending input limit');
112
+ }
110
113
  const frame = new Uint8Array(1 + payload.length);
111
114
  frame[0] = id;
112
115
  frame.set(payload, 1);
@@ -153,8 +156,9 @@ export class RuntimeWebSocket {
153
156
  }
154
157
  // ── Internals ─────────────────────────────────────────────────────
155
158
  _doConnect() {
156
- const url = `${this._baseUrl}/ws?token=${encodeURIComponent(this._token)}`;
157
- const ws = new WebSocket(url);
159
+ const shared = /^obs_[A-Za-z0-9_-]{43}$/.test(this._token);
160
+ const url = `${this._baseUrl}/ws${shared ? '' : `?token=${encodeURIComponent(this._token)}`}`;
161
+ const ws = shared ? new WebSocket(url, ['oblien', `oblien-auth.${this._token}`]) : new WebSocket(url);
158
162
  ws.binaryType = 'arraybuffer';
159
163
  this._ws = ws;
160
164
  ws.addEventListener('open', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"ws.js","sourceRoot":"","sources":["../../src/runtime/ws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws.js","sourceRoot":"","sources":["../../src/runtime/ws.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import type { WorkspaceData } from './workspace.js';
2
+ export type AccessRole = 'viewer' | 'developer' | 'manager';
3
+ export type AccountLabel = {
4
+ id: string;
5
+ name: string;
6
+ image?: string | null;
7
+ };
8
+ export interface AccessResource {
9
+ account_id: string;
10
+ resource_type: 'account' | 'namespace' | 'workspace';
11
+ resource_id?: string;
12
+ }
13
+ export interface AccessibleAccount extends AccountLabel {
14
+ personal: boolean;
15
+ role: AccessRole | 'owner';
16
+ permissions: string[];
17
+ membership_id?: string;
18
+ }
19
+ export interface WorkspaceSharing {
20
+ owner_id: string;
21
+ actor_id: string;
22
+ role: AccessRole | 'owner' | 'credential';
23
+ permissions: string[];
24
+ owner?: AccountLabel;
25
+ namespace_access?: boolean;
26
+ namespace_id?: string | null;
27
+ }
28
+ export interface AccessInvitation {
29
+ id: string;
30
+ owner: AccountLabel;
31
+ resource_type: AccessResource['resource_type'];
32
+ resource_id: string;
33
+ resource_name?: string | null;
34
+ role: AccessRole;
35
+ expires_at: string;
36
+ access_expires_at?: string | null;
37
+ }
38
+ export interface AccessMember {
39
+ id: string;
40
+ user: AccountLabel;
41
+ role: AccessRole;
42
+ version: string;
43
+ expires_at?: string | null;
44
+ }
45
+ export interface SharedSshConnection {
46
+ success: true;
47
+ delegated: true;
48
+ expires_at: string;
49
+ ssh: {
50
+ host: string;
51
+ port: number;
52
+ username: string;
53
+ password: string;
54
+ host_key_fingerprint: string;
55
+ };
56
+ }
57
+ export interface SharedWorkspaceList {
58
+ success: true;
59
+ workspaces: (WorkspaceData & {
60
+ owner: AccountLabel;
61
+ sharing: WorkspaceSharing;
62
+ })[];
63
+ next_cursor: string | null;
64
+ }
65
+ //# sourceMappingURL=access.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access.d.ts","sourceRoot":"","sources":["../../src/types/access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAC/E,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AACD,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;IAC1C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AACD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AACD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,IAAI,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAA;KAAE,CAAC;CACvG;AACD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,IAAI,CAAC;IACd,UAAU,EAAE,CAAC,aAAa,GAAG;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,gBAAgB,CAAA;KAAE,CAAC,EAAE,CAAC;IACnF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"access.js","sourceRoot":"","sources":["../../src/types/access.ts"],"names":[],"mappings":""}
@@ -2,10 +2,11 @@
2
2
  * Billing types — namespace-bound subscriptions, credit top-ups and entitlement.
3
3
  *
4
4
  * The namespace is the unit of billing: every subscription, quota, entitlement and
5
- * suspension is per-namespace, and exhausting one never affects a sibling.
5
+ * suspension is per-namespace. The owner's wallet and capacity are shared.
6
6
  *
7
- * Credits are whole numbers on the wire — no scaling.
7
+ * Credits are numbers on the wire; metered usage and refund adjustments may be fractional.
8
8
  */
9
+ import type { NamespaceResourceLimits } from './namespace.js';
9
10
  /** A subscription tier from the catalog. */
10
11
  export interface BillingPlan {
11
12
  /** Pass this as `planTierId` to `checkout()`. */
@@ -36,6 +37,30 @@ export interface CreditPack {
36
37
  export interface BillingCatalog {
37
38
  plans: BillingPlan[];
38
39
  creditPacks: CreditPack[];
40
+ /** Generic offer capabilities of the deployed API. Version 2 adds saved grace and VM caps. */
41
+ reseller?: {
42
+ contractVersion: number;
43
+ offerPolicy: boolean;
44
+ resourceLimits: boolean;
45
+ effectiveResourceLimits?: boolean;
46
+ requiredAccountTier?: 'enterprise';
47
+ };
48
+ promotions?: {
49
+ enabled: boolean;
50
+ issuer: 'oblien_admin';
51
+ customerEntry: 'oblien_hosted';
52
+ firstPaymentOnly: boolean;
53
+ canDisable: boolean;
54
+ preservesCredits: boolean;
55
+ namespaceOptIn: boolean;
56
+ };
57
+ }
58
+ export interface BillingOfferPolicy {
59
+ /** Credits allowed beyond the paid allowance; defaults to zero. */
60
+ overdraft?: number;
61
+ /** Suspension point beyond the allowance; defaults to overdraft and must be >= it. */
62
+ suspendThreshold?: number;
63
+ onOverdraftAction?: 'stop_workspaces' | 'block';
39
64
  }
40
65
  /**
41
66
  * Checkout parameters.
@@ -44,43 +69,95 @@ export interface BillingCatalog {
44
69
  * `kind: 'topup'` adds a credit pack's credits to that namespace's ceiling — the way to
45
70
  * un-block a namespace that has run out mid-cycle, with no plan change.
46
71
  */
72
+ export interface BillingOffer {
73
+ /** Your server-side catalog reference; at most 100 characters. */
74
+ reference?: string;
75
+ /** Customer-facing product name; at most 120 characters. */
76
+ name: string;
77
+ /** Customer-facing description; at most 500 characters. Does not reserve resources. */
78
+ description?: string;
79
+ /** USD cents, from 100 to 1000000. Funds the owner's wallet at Oblien's standard rate. */
80
+ unitAmount: number;
81
+ currency?: 'usd';
82
+ /** Namespace allowance, independent of wallet funding; integer 1..1000000000. */
83
+ credits: number;
84
+ /** Subscription only. Saved and reapplied on each verified paid cycle. */
85
+ policy?: BillingOfferPolicy;
86
+ /** Subscription only. Saved VM caps; Oblien resolves effective account/platform capacity.
87
+ * Configured namespace caps may further restrict them; null means inherit.
88
+ * max_workspaces limits allocated workspace count; CPU/RAM/disk cap each workspace. */
89
+ resourceLimits?: NamespaceResourceLimits;
90
+ }
47
91
  export interface CheckoutParams {
48
92
  /** The namespace being billed. Required — this is what the payment is bound to. */
49
93
  namespace: string;
50
94
  kind: 'subscription' | 'topup';
51
- /** Required for `kind: 'subscription'`. A `tierId` from the catalog. */
95
+ /** Required for catalog subscriptions; mutually exclusive with offer. */
52
96
  planTierId?: string;
53
- /** Required for `kind: 'topup'`. A `packId` from the catalog. */
97
+ /** Required for catalog top-ups; mutually exclusive with offer. */
54
98
  packId?: string;
99
+ /** Reseller price, namespace allowance and customer-facing product text. */
100
+ offer?: BillingOffer;
101
+ /** With offer only: up to 35 string entries. Identity/routing/credit keys are reserved. */
102
+ metadata?: Record<string, string>;
55
103
  /** Subscription only. Defaults to monthly. */
56
104
  billingInterval?: 'monthly' | 'yearly';
57
105
  /**
58
106
  * Where Stripe sends the browser after a successful payment.
59
107
  *
60
108
  * Optional. Its HOST must be on the platform's redirect allowlist (`APP_URL` plus
61
- * `REDIRECT_ALLOWED_HOSTS`); anything else silently falls back to the default
62
- * dashboard URL rather than erroring — an open-redirect mitigation, so do not treat a
63
- * returned `url` as proof your own URL was accepted. Ask the platform operator to
64
- * allowlist your host.
109
+ * `REDIRECT_ALLOWED_HOSTS`). Must use HTTPS; an unapproved host returns
110
+ * `billing_redirect_not_allowed`. Omitted URLs use the platform default.
65
111
  */
66
112
  successUrl?: string;
67
113
  /** Where Stripe sends the browser on cancel. Same allowlist rules as `successUrl`. */
68
114
  cancelUrl?: string;
69
- /** A stable key so a retried request reuses the same checkout instead of creating another. */
115
+ /** Required with offer. Reuse only for an identical request in the same namespace. */
70
116
  idempotencyKey?: string;
71
117
  /** Contact for this namespace's first checkout. Never defaults to the reseller's email. */
72
118
  customer?: {
73
119
  email?: string;
74
120
  name?: string;
75
121
  };
122
+ /** Set true to enable Oblien-hosted promotion entry. Omitted/false preserves direct Stripe checkout. Only Oblien administrators issue codes. */
123
+ allowPromotionCodes?: boolean;
76
124
  }
77
125
  export interface CheckoutResponse {
78
126
  success: boolean;
79
127
  /** Redirect the browser here. */
80
128
  url: string;
81
- /** Stripe checkout session id, for correlating with webhooks. */
129
+ /** Opaque checkout identifier, also used by webhooks. May start with bco_ or cs_; never parse it or assume it is a Stripe session. */
82
130
  checkoutId: string;
83
131
  }
132
+ /** Saved reseller checkout. Catalog checkout status is read through entitlement/subscription. */
133
+ export interface BillingCheckout {
134
+ id: string;
135
+ kind: 'subscription' | 'topup';
136
+ status: 'open' | 'complete' | 'expired';
137
+ paymentStatus: 'paid' | 'unpaid' | 'no_payment_required';
138
+ /** Processing finished; also inspect fulfillmentStatus and net credit amounts for reversals. */
139
+ fulfilled: boolean;
140
+ offer: BillingOffer;
141
+ metadata: Record<string, string>;
142
+ /** Paid can remain pending until local fulfillment commits. Superseded checkouts do not replace a newer plan. */
143
+ fulfillmentStatus: 'pending' | 'completed' | 'partially_refunded' | 'refunded' | 'disputed' | 'expired' | 'failed' | 'superseded' | 'reversed';
144
+ walletCreditsGranted: number;
145
+ namespaceCreditsGranted: number;
146
+ billingInterval: 'monthly' | 'yearly' | null;
147
+ subscriptionId: string | null;
148
+ /** Initial payment price in integer minor units, including an approved first-payment discount. */
149
+ price?: {
150
+ subtotal: number;
151
+ discount: number;
152
+ total: number;
153
+ currency: string;
154
+ };
155
+ }
156
+ export interface BillingCheckoutResponse {
157
+ success: boolean;
158
+ namespace: string;
159
+ checkout: BillingCheckout;
160
+ }
84
161
  export interface PortalParams {
85
162
  /** Required: the authenticated customer's namespace, resolved by your backend. */
86
163
  namespace: string;
@@ -101,6 +178,9 @@ export interface BillingSubscription {
101
178
  /** True means renewal is stopped; paid access continues through periodEnd. */
102
179
  cancelAtPeriodEnd: boolean;
103
180
  canceledAt: string | null;
181
+ /** Present on reseller subscriptions. */
182
+ offer?: BillingOffer;
183
+ metadata?: Record<string, string>;
104
184
  }
105
185
  export interface BillingSubscriptionResponse {
106
186
  success: boolean;
@@ -129,6 +209,8 @@ export interface ResetQuotaResponse {
129
209
  */
130
210
  export type EntitlementStatus = 'active' | 'past_due' | 'canceled' | 'credit_exhausted';
131
211
  export interface EntitlementQuota {
212
+ /** Current namespace warning state; optional for older API deployments. */
213
+ alert?: import('./namespace.js').NamespaceQuotaAlert;
132
214
  /**
133
215
  * The effective CEILING in credits: the plan's allowance plus any purchased top-ups.
134
216
  * `null` = uncapped.
@@ -136,6 +218,9 @@ export interface EntitlementQuota {
136
218
  limit: number | null;
137
219
  /** Credits metered this cycle. Reset on renewal. */
138
220
  used: number;
221
+ /** Configured grace. Already included in balance; never add it a second time. */
222
+ overdraft?: number;
223
+ suspendThreshold?: number | null;
139
224
  /** `limit + overdraft − used`. `null` = uncapped. `<= 0` means blocked. */
140
225
  balance: number | null;
141
226
  }
@@ -148,6 +233,7 @@ export interface Entitlement {
148
233
  quota: EntitlementQuota;
149
234
  }
150
235
  export interface BillingBalance {
236
+ alert?: import('./namespace.js').NamespaceQuotaAlert;
151
237
  namespace: string;
152
238
  /**
153
239
  * `true` when this namespace cannot do work right now — suspended, or out of credits.
@@ -1 +1 @@
1
- {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../src/types/billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../src/types/billing.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,2 @@
1
- /**
2
- * Billing types — namespace-bound subscriptions, credit top-ups and entitlement.
3
- *
4
- * The namespace is the unit of billing: every subscription, quota, entitlement and
5
- * suspension is per-namespace, and exhausting one never affects a sibling.
6
- *
7
- * Credits are whole numbers on the wire — no scaling.
8
- */
9
1
  export {};
10
2
  //# sourceMappingURL=billing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/types/billing.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
1
+ {"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/types/billing.ts"],"names":[],"mappings":""}
@@ -1,5 +1,7 @@
1
1
  export type OblienOptions = OblienApiKeyOptions | OblienTokenOptions;
2
2
  export interface OblienApiKeyOptions {
3
+ /** Account context. The server verifies membership; API keys stay bound to their issuing account. */
4
+ accountId?: string;
3
5
  clientId: string;
4
6
  clientSecret: string;
5
7
  /** @default 'https://api.oblien.com' */
@@ -11,6 +13,8 @@ export interface OblienApiKeyOptions {
11
13
  cdnBaseUrl?: string;
12
14
  }
13
15
  export interface OblienTokenOptions {
16
+ /** Account to manage with your personal login. Omit for your personal account. */
17
+ accountId?: string;
14
18
  token: string;
15
19
  /** @default 'https://api.oblien.com' */
16
20
  baseUrl?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/types/client.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/types/client.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;AAErE,MAAM,WAAW,mBAAmB;IAClC,qGAAqG;IACrG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,153 @@
1
+ /** Persistent block storage, independent of a workspace's lifetime. */
2
+ export type DiskPermission = 'attach' | 'detach' | 'clone' | 'save' | 'move' | 'resize' | 'delete' | 'fork' | 'create_workspace';
3
+ export interface ManagedDisk {
4
+ id: string;
5
+ name: string;
6
+ namespace: string | null;
7
+ kind: 'root' | 'data';
8
+ format: 'ext4' | 'raw';
9
+ size_mb: number;
10
+ allocated_bytes: number;
11
+ state: string;
12
+ immutable: boolean;
13
+ /** System disks belong to Oblien; this ID is your account's attachment reference. */
14
+ ownership: 'user' | 'system';
15
+ permissions: Record<DiskPermission, boolean>;
16
+ /** Shared platform software. Private clones have no library reference and use private capacity. */
17
+ library?: {
18
+ id: string;
19
+ };
20
+ retain: boolean;
21
+ root_image: string | null;
22
+ operation_id: string | null;
23
+ attachments: DiskAttachment[];
24
+ error: string | null;
25
+ created_at: string;
26
+ updated_at: string;
27
+ }
28
+ /** Published software, visible before an account has any disk references. */
29
+ export interface SoftwareDisk {
30
+ id: string;
31
+ name: string;
32
+ label: string;
33
+ description: string;
34
+ logo: string | null;
35
+ ownership: 'system';
36
+ read_only: true;
37
+ kind: 'root' | 'data';
38
+ format: 'ext4' | 'raw';
39
+ size_mb: number;
40
+ compatible_images: string[];
41
+ compatible_os: {
42
+ family: 'linux' | 'macos';
43
+ distribution?: string;
44
+ version?: string;
45
+ }[];
46
+ attachment: {
47
+ role?: 'data' | 'layer';
48
+ target?: string;
49
+ mount_path?: string;
50
+ read_only: true;
51
+ };
52
+ presets: {
53
+ id: string;
54
+ label: string;
55
+ image: string;
56
+ }[];
57
+ }
58
+ export interface SoftwareAttachParams extends DiskMutationParams {
59
+ workspace_id: string;
60
+ }
61
+ export interface DiskAttachment {
62
+ workspace_id: string;
63
+ role: 'root' | 'data' | 'layer';
64
+ read_only: boolean;
65
+ mount_path: string | null;
66
+ device_id: string;
67
+ generation: number;
68
+ target?: string;
69
+ order?: number;
70
+ }
71
+ export interface DiskAttachInput {
72
+ disk_id: string;
73
+ /** Merge a saved compatible Linux root beneath the private writable root. */
74
+ role?: 'data' | 'layer';
75
+ /** Registered guest ID for raw devices; local Linux is the default. */
76
+ target?: string;
77
+ /** Required for saved immutable data; mutable disks are exclusively writable. */
78
+ read_only?: boolean;
79
+ /** Absolute directory in the Linux runtime. Omit for raw block access. */
80
+ mount_path?: string;
81
+ }
82
+ export interface DiskOperation {
83
+ id: string;
84
+ disk_id: string;
85
+ kind: string;
86
+ state: 'queued' | 'running' | 'done' | 'failed';
87
+ phase: string;
88
+ error: {
89
+ code: string;
90
+ message: string;
91
+ } | null;
92
+ created_at: string;
93
+ completed_at: string | null;
94
+ result?: {
95
+ size_mb?: number;
96
+ was_running?: boolean;
97
+ relaunched?: boolean;
98
+ warning?: string;
99
+ };
100
+ }
101
+ export interface DiskOperationResult {
102
+ success: boolean;
103
+ accepted: boolean;
104
+ operation: DiskOperation;
105
+ disk: ManagedDisk | null;
106
+ }
107
+ export interface DiskMutationParams {
108
+ /** Default true in the SDK. False returns the durable operation immediately. */
109
+ wait_ready?: boolean;
110
+ /** Reuse the key when retrying an uncertain response. */
111
+ idempotency_key?: string;
112
+ }
113
+ export interface DiskWaitOptions {
114
+ /** Default 30 minutes. A timeout or abort only stops waiting. */
115
+ timeoutMs?: number;
116
+ signal?: AbortSignal;
117
+ }
118
+ export interface DiskCreateParams extends DiskMutationParams {
119
+ name: string;
120
+ size_mb: number;
121
+ format?: 'ext4' | 'raw';
122
+ namespace?: string;
123
+ }
124
+ export interface DiskCopyParams extends DiskMutationParams {
125
+ name?: string;
126
+ }
127
+ export interface DiskForkParams extends DiskCopyParams {
128
+ size_mb: number;
129
+ }
130
+ export interface DiskResizeParams extends DiskMutationParams {
131
+ size_mb: number;
132
+ }
133
+ export interface DiskAttachParams extends DiskMutationParams {
134
+ workspace_id: string;
135
+ role?: 'data' | 'layer';
136
+ target?: string;
137
+ mount_path?: string;
138
+ read_only?: boolean;
139
+ }
140
+ export interface DiskDetachParams extends DiskMutationParams {
141
+ workspace_id: string;
142
+ }
143
+ export interface DiskMoveParams extends DiskMutationParams {
144
+ source_workspace_id: string;
145
+ target_workspace_id: string;
146
+ mount_path?: string;
147
+ }
148
+ export interface WorkspaceDisksResponse {
149
+ success: boolean;
150
+ disks: ManagedDisk[];
151
+ operation_id: string | null;
152
+ }
153
+ //# sourceMappingURL=disks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disks.d.ts","sourceRoot":"","sources":["../../src/types/disks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=disks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disks.js","sourceRoot":"","sources":["../../src/types/disks.ts"],"names":[],"mappings":""}
@@ -4,8 +4,8 @@ export type { WorkspaceCreateParams, WorkspaceUpdateParams, WorkspaceListParams,
4
4
  export type { NetworkSpec, FirewallRule, PrivateLink } from './network.js';
5
5
  export type { ResourceSpec, LifecycleSpec } from './resources.js';
6
6
  export type { RuntimeOptions, RuntimeInfo, RuntimeBootService, RuntimeTarget, RuntimeDiscovery, FileListParams, FileEntry, FileListResponse, FileReadParams, FileReadResponse, FileWriteParams, FileWriteResponse, FileMkdirParams, FileStatParams, FileStatResponse, FileDeleteParams, ContentSearchParams, SearchMatch, ContentSearchResponse, FileSearchParams, FileSearchResponse, SearchStatusResponse, SearchInitResponse, ExecRunParams, ExecTask, ExecListResponse, ExecStreamEvent, TerminalCreateParams, TerminalSession, TerminalListResponse, TerminalScrollbackResponse, WatcherCreateParams, WatcherInfo, WatcherListResponse, WSOptions, WSMessage, WSTerminalResize, WSTerminalExit, WSTerminalEvent, WSWatcherChange, WSWatcherReady, WSWatcherOverflow, WSWatcherEvent, TransferProgress, TransferDownloadParams, TransferUploadParams, TransferUploadResponse, } from './runtime.js';
7
- export type { TtlAction, LifecycleStatus, MakeTemporaryParams, UpdateTtlParams, SshStatus, SshPasswordParams, SshKeyParams, PublicAccessPort, ExposePortParams, UpdateSlugParams, SnapshotParams, ArchiveCreateParams, ArchiveInfo, WorkloadCreateParams, WorkloadUpdateParams, WorkloadInfo, WorkloadListParams, UsageParams, UpdateResourcesParams, UpdateMetadataParams, ApiAccessStatus, RawTokenResponse, NetworkUpdateParams, NetworkConfig, LogsParams, LogFile, LogStreamEvent, StatsEvent, WorkloadStatsEvent, WorkloadLogEntry, ImagesListParams, DomainInfo, ConnectDomainParams, ConnectDomainResponse, CheckDNSParams, CheckDNSResponse, RenewSSLResponse, CheckSlugParams, CheckSlugResponse, VerifyDomainParams, VerifyDomainResponse, DomainListParams, DomainRoute, DomainRoutesResponse, SslCertificate, SslListResponse, SslAutoRenewResponse, } from './workspace-resources.js';
8
- export type { NamespaceStatus, NamespaceType, NamespaceResourceLimits, NamespaceData, NamespaceCreateParams, NamespaceEnsureParams, NamespaceEnsureResponse, NamespaceUpdateParams, NamespaceListParams, NamespaceListResponse, NamespaceActivity, NamespaceActivityParams, NamespaceUsageParams, NamespaceUsageUnitsParams, NamespaceUsageUnitBucket, NamespaceUsageUnits, NamespaceDeleteParams, OverdraftAction, NamespaceQuota, SetNamespaceQuotaParams, ResetNamespaceQuotaParams, NamespaceListWithQuotasParams, NamespaceDetailsParams, DefaultQuotaConfig, SetDefaultQuotaParams, ToggleDefaultQuotaAutoApplyParams, DeleteDefaultQuotaParams, } from './namespace.js';
7
+ export type { TtlAction, LifecycleStatus, IdlePolicy, MakeTemporaryParams, UpdateTtlParams, SshStatus, SshPasswordParams, SshKeyParams, PublicAccessPort, ExposePortParams, UpdateSlugParams, SnapshotParams, ArchiveCreateParams, ArchiveInfo, WorkloadCreateParams, WorkloadUpdateParams, WorkloadInfo, WorkloadListParams, UsageParams, UpdateResourcesParams, UpdateMetadataParams, ApiAccessStatus, RawTokenResponse, NetworkUpdateParams, NetworkConfig, LogsParams, LogFile, LogStreamEvent, StatsEvent, WorkloadStatsEvent, WorkloadLogEntry, WorkloadLogConfig, ImagesListParams, DomainInfo, ConnectDomainParams, ConnectDomainResponse, CheckDNSParams, CheckDNSResponse, RenewSSLResponse, CheckSlugParams, CheckSlugResponse, VerifyDomainParams, VerifyDomainResponse, DomainListParams, DomainRoute, DomainRoutesResponse, SslCertificate, SslListResponse, SslAutoRenewResponse, } from './workspace-resources.js';
8
+ export type { NamespaceStatus, NamespaceType, NamespaceResourceLimits, NamespaceData, NamespaceCreateParams, NamespaceEnsureParams, NamespaceEnsureResponse, NamespaceUpdateParams, NamespaceListParams, NamespaceListResponse, NamespaceActivity, NamespaceActivityParams, NamespaceUsageParams, NamespaceUsageData, NamespaceUsageUnitsParams, NamespaceUsageUnitBucket, NamespaceUsageUnits, NamespaceDeleteParams, OverdraftAction, NamespaceQuota, SetNamespaceQuotaParams, ResetNamespaceQuotaParams, NamespaceListWithQuotasParams, NamespaceDetailsParams, DefaultQuotaConfig, SetDefaultQuotaParams, ToggleDefaultQuotaAutoApplyParams, DeleteDefaultQuotaParams, } from './namespace.js';
9
9
  export type { PageData, PageCreateParams, PageDeployParams, PageUpdateParams, PageListResponse, PageDomainResponse, PageDNSCheckResponse, PageSSLRenewResponse, RouteMatchType, RouteMatch, RouteProxyAction, RouteRewriteAction, RouteRedirectAction, RouteHeadersAction, RouteAction, RouteRule, PageRoutesInput, PageRouteConfig, PageRoutesResponse, PageRouteVersion, PageRoutesGetResponse, RoutesInput, RoutesResult, RoutesGetResponse, SiteData, SiteCreateParams, SiteDeployParams, SiteUpdateParams, SiteListResponse, } from './pages.js';
10
10
  export type { EdgeProxyData, EdgeProxyCreateParams, EdgeProxyUpdateParams, EdgeProxyListResponse, EdgeProxyVerificationStatus, EdgeProxyVerification, EdgeProxyVerificationChallenge, EdgeProxyVerificationCheckResult, EdgeProxyVerificationListResponse, } from './edge-proxy.js';
11
11
  export type { EdgeTunnelSSLState, EdgeTunnelData, EdgeTunnelCreateParams, EdgeTunnelCheckDomainParams, EdgeTunnelCheckDomainResponse, EdgeTunnelUpdateParams, EdgeTunnelListResponse, EdgeTunnelIssueTokenParams, EdgeTunnelTokenResponse, EdgeTunnelSSLRenewResponse, } from './edge-tunnel.js';
@@ -15,6 +15,9 @@ export type { WebhookEvent, Webhook, WebhookCreateParams, WebhookUpdateParams, W
15
15
  export type { AnalyticsOverview, AnalyticsDomainSummary, AnalyticsHomeSummary, AnalyticsBucket, AnalyticsTimeseriesParams, AnalyticsTimeseriesResponse, AnalyticsGeoEntry, AnalyticsGeoParams, AnalyticsGeoResponse, AnalyticsRequestEntry, AnalyticsRequestsParams, AnalyticsRequestsResponse, AnalyticsStreamTokenResponse, } from './analytics.js';
16
16
  export type { CdnTokenScope, CdnFile, CdnTokenParams, CdnTokenResponse, CdnUploadInput, CdnUploadParams, CdnUploadVariant, CdnUploadResponse, CdnUploadManyResponse, CdnProcessUrlsParams, CdnProcessUrlsResponse, CdnLimitsResponse, CdnVariantOptionsResponse, CdnListParams, CdnPagination, CdnListResponse, CdnStatsParams, CdnStats, CdnStatsResponse, CdnFileResponse, CdnVariantSpec, CdnVariantOptions, CdnUsageParams, CdnUsageResponse, CdnUsageSeriesParams, CdnUsageSeriesResponse, CdnDomainAddParams, CdnDomainListParams, CdnDomainSsl, CdnDomainDns, CdnDomainAddResponse, CdnDomain, CdnDomainListResponse, CdnDomainRemoveResponse, } from './cdn.js';
17
17
  export type { BillingSubscription, BillingSubscriptionResponse, ResetQuotaParams, ResetQuotaResponse } from './billing.js';
18
- export type { BillingPlan, CreditPack, BillingCatalog, CheckoutParams, CheckoutResponse, PortalParams, PortalResponse, EntitlementStatus, EntitlementQuota, Entitlement, BillingBalance, BillingPolicy, BillingPolicyParams, BillingDefaults, BillingDefaultsParams, } from './billing.js';
19
- export type { DesktopSshConnection } from '../resources/desktop.js';
18
+ export type { NamespaceQuotaAlert } from './namespace.js';
19
+ export type { BillingPlan, CreditPack, BillingCatalog, BillingOffer, BillingOfferPolicy, BillingCheckout, BillingCheckoutResponse, CheckoutParams, CheckoutResponse, PortalParams, PortalResponse, EntitlementStatus, EntitlementQuota, Entitlement, BillingBalance, BillingPolicy, BillingPolicyParams, BillingDefaults, BillingDefaultsParams, } from './billing.js';
20
+ export type { DesktopSshConnection, DesktopInstallation } from '../resources/desktop.js';
21
+ export type { ImageCatalogEntry, ImagesListResponse } from '../resources/images.js';
22
+ export type * from './disks.js';
20
23
  //# sourceMappingURL=index.d.ts.map