@vertracloud/api-types 0.3.6 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,389 @@
1
+ import { ISODateString, RESTAPIWorkspaceQuery, APIPayload, SnowFlake } from '../../common/v1.js';
2
+ import { BlobVisibility, BlobContentDisposition, APIBlobRule, APIBlobDeleteResult, APIBlobRules, APIBlobCustomDomain, APIBlobDownload, APIBlobObject, APIBlobObjectList, APIBlobS3Credentials, APIBlobSharePublic, APIBlobShare, APIBlobStats, APIBlobUpload, APIBlobBatchResult, APIBlobUploadPart, APIBlobUploadToken } from '../../payloads/v1/blob.js';
3
+ import '../../payloads/v1/api-error.js';
4
+
5
+ /**
6
+ * Options shared by both ways of uploading. Defaults: `visibility: "private"`, `overwrite: false`,
7
+ * `random_suffix: false` (always `true` for an upload token without a fixed `path`).
8
+ */
9
+ interface RESTBlobObjectWriteOptions {
10
+ visibility?: BlobVisibility;
11
+ /** Replace an existing object at `path`. Without it a taken path returns `BLOB_OBJECT_ALREADY_EXISTS`. */
12
+ overwrite?: boolean;
13
+ /** Insert `-<10 random characters>` before the extension. */
14
+ random_suffix?: boolean;
15
+ cache_control?: string;
16
+ content_disposition?: BlobContentDisposition;
17
+ filename?: string;
18
+ expires_at?: ISODateString;
19
+ /**
20
+ * Hex SHA-256 of the file; a mismatch returns `BLOB_CHECKSUM_MISMATCH`. Only valid for the
21
+ * single-request upload and for a direct upload sent in one part: a multipart upload refuses it
22
+ * (`VALIDATION_ERROR`), because a SHA-256 of the whole object cannot be verified from separate parts.
23
+ */
24
+ checksum_sha256?: string;
25
+ }
26
+ /**
27
+ * `POST /v1/objects` — single-request upload (up to the plan's `max_simple_upload_bytes`). The
28
+ * body is `multipart/form-data` with one `file` field; options go in the query. Accepts an upload token.
29
+ *
30
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/upload
31
+ */
32
+ interface RESTPostAPIBlobObjectQuery extends RESTAPIWorkspaceQuery, RESTBlobObjectWriteOptions {
33
+ path: string;
34
+ /** JSON object, URL-encoded. */
35
+ metadata?: string;
36
+ }
37
+ /**
38
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/upload
39
+ */
40
+ type RESTPostAPIBlobObjectResponse = APIPayload<APIBlobObject>;
41
+ /**
42
+ * `POST /v1/uploads` — starts a direct upload (single or multipart, chosen by `size`). Accepts an upload token.
43
+ *
44
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/create
45
+ */
46
+ interface RESTPostAPIBlobUploadBody extends RESTBlobObjectWriteOptions {
47
+ path: string;
48
+ size: number;
49
+ metadata?: Record<string, string>;
50
+ }
51
+ type RESTPostAPIBlobUploadQuery = RESTAPIWorkspaceQuery;
52
+ /**
53
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/create
54
+ */
55
+ type RESTPostAPIBlobUploadResponse = APIPayload<APIBlobUpload>;
56
+ /** `GET /v1/uploads` — uploads still in progress. */
57
+ type RESTGetAPIBlobUploadsQuery = RESTAPIWorkspaceQuery;
58
+ /**
59
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/list
60
+ */
61
+ type RESTGetAPIBlobUploadsResponse = APIPayload<APIBlobUpload[]>;
62
+ /** `GET /v1/uploads/:upload_id` — status of one upload, to resume it. Accepts an upload token. */
63
+ type RESTGetAPIBlobUploadQuery = RESTAPIWorkspaceQuery;
64
+ /**
65
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/get
66
+ */
67
+ type RESTGetAPIBlobUploadResponse = APIPayload<APIBlobUpload>;
68
+ /**
69
+ * `POST /v1/uploads/:upload_id/parts` — URLs for up to 100 parts. Accepts an upload token.
70
+ *
71
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/parts
72
+ */
73
+ interface RESTPostAPIBlobUploadPartsBody {
74
+ part_numbers: number[];
75
+ }
76
+ type RESTPostAPIBlobUploadPartsQuery = RESTAPIWorkspaceQuery;
77
+ /**
78
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/parts
79
+ */
80
+ type RESTPostAPIBlobUploadPartsResponse = APIPayload<APIBlobUploadPart[]>;
81
+ /** `POST /v1/uploads/:upload_id/complete` — checks the parts and creates the object. Accepts an upload token. */
82
+ type RESTPostAPIBlobUploadCompleteQuery = RESTAPIWorkspaceQuery;
83
+ /**
84
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/complete
85
+ */
86
+ type RESTPostAPIBlobUploadCompleteResponse = APIPayload<APIBlobObject>;
87
+ /** `DELETE /v1/uploads/:upload_id` — aborts an upload; repeating it is not an error. Accepts an upload token. */
88
+ type RESTDeleteAPIBlobUploadQuery = RESTAPIWorkspaceQuery;
89
+ /**
90
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/abort
91
+ */
92
+ type RESTDeleteAPIBlobUploadResponse = APIPayload<null>;
93
+ /**
94
+ * `GET /v1/objects`.
95
+ *
96
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/list
97
+ */
98
+ interface RESTGetAPIBlobObjectsQuery extends RESTAPIWorkspaceQuery {
99
+ prefix?: string;
100
+ /** Group paths into folders at `/`. Omit it for a flat list. */
101
+ delimiter?: "/";
102
+ visibility?: BlobVisibility;
103
+ cursor?: string;
104
+ /** 1–1000. Default 100. */
105
+ limit?: number;
106
+ }
107
+ /**
108
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/list
109
+ */
110
+ type RESTGetAPIBlobObjectsResponse = APIPayload<APIBlobObjectList>;
111
+ /** `GET /v1/objects/:object_id`. */
112
+ type RESTGetAPIBlobObjectQuery = RESTAPIWorkspaceQuery;
113
+ /**
114
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/get
115
+ */
116
+ type RESTGetAPIBlobObjectResponse = APIPayload<APIBlobObject>;
117
+ /**
118
+ * Fields of an object that can change. `null` restores the default; a `null` metadata value removes that key.
119
+ *
120
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update
121
+ */
122
+ interface RESTPatchAPIBlobObjectBody {
123
+ visibility?: BlobVisibility;
124
+ cache_control?: string | null;
125
+ content_disposition?: BlobContentDisposition | null;
126
+ filename?: string | null;
127
+ expires_at?: ISODateString | null;
128
+ metadata?: Record<string, string | null>;
129
+ }
130
+ /** `PATCH /v1/objects/:object_id`. */
131
+ type RESTPatchAPIBlobObjectQuery = RESTAPIWorkspaceQuery;
132
+ /**
133
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update
134
+ */
135
+ type RESTPatchAPIBlobObjectResponse = APIPayload<APIBlobObject>;
136
+ /**
137
+ * `PATCH /v1/objects` — applies the same changes to up to 100 objects.
138
+ *
139
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update-many
140
+ */
141
+ interface RESTPatchAPIBlobObjectsBody {
142
+ ids: SnowFlake[];
143
+ changes: RESTPatchAPIBlobObjectBody;
144
+ }
145
+ type RESTPatchAPIBlobObjectsQuery = RESTAPIWorkspaceQuery;
146
+ /**
147
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update-many
148
+ */
149
+ type RESTPatchAPIBlobObjectsResponse = APIPayload<APIBlobBatchResult[]>;
150
+ /**
151
+ * `POST /v1/objects/copy` — copies or moves an object. A move keeps the `id`; a copy creates
152
+ * another object that counts toward storage.
153
+ *
154
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/copy
155
+ */
156
+ interface RESTPostAPIBlobObjectCopyBody {
157
+ source: SnowFlake;
158
+ path: string;
159
+ move?: boolean;
160
+ overwrite?: boolean;
161
+ random_suffix?: boolean;
162
+ visibility?: BlobVisibility;
163
+ }
164
+ type RESTPostAPIBlobObjectCopyQuery = RESTAPIWorkspaceQuery;
165
+ /**
166
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/copy
167
+ */
168
+ type RESTPostAPIBlobObjectCopyResponse = APIPayload<APIBlobObject>;
169
+ /** `DELETE /v1/objects/:object_id`. */
170
+ type RESTDeleteAPIBlobObjectQuery = RESTAPIWorkspaceQuery;
171
+ /**
172
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete
173
+ */
174
+ type RESTDeleteAPIBlobObjectResponse = APIPayload<null>;
175
+ /**
176
+ * `DELETE /v1/objects` — up to 1000 objects per call, by `ids` or by folder `prefix` (send one of them).
177
+ *
178
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete-many
179
+ */
180
+ type RESTDeleteAPIBlobObjectsBody = {
181
+ ids: SnowFlake[];
182
+ prefix?: never;
183
+ } | {
184
+ prefix: string;
185
+ ids?: never;
186
+ };
187
+ type RESTDeleteAPIBlobObjectsQuery = RESTAPIWorkspaceQuery;
188
+ /**
189
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete-many
190
+ */
191
+ type RESTDeleteAPIBlobObjectsResponse = APIPayload<APIBlobDeleteResult>;
192
+ /**
193
+ * `GET /v1/objects/:object_id/download` — temporary download link; it cannot be revoked. With
194
+ * `redirect` true (default) the response is a `302` to the link; with `false` it is `RESTGetAPIBlobObjectDownloadResponse`.
195
+ *
196
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/download
197
+ */
198
+ interface RESTGetAPIBlobObjectDownloadQuery extends RESTAPIWorkspaceQuery {
199
+ /** Seconds, 60–86400. Default 3600. */
200
+ expires_in?: number;
201
+ disposition?: BlobContentDisposition;
202
+ filename?: string;
203
+ redirect?: boolean;
204
+ }
205
+ /**
206
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/download
207
+ */
208
+ type RESTGetAPIBlobObjectDownloadResponse = APIPayload<APIBlobDownload>;
209
+ /**
210
+ * `POST /v1/shares` — responds `201`.
211
+ *
212
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/create
213
+ */
214
+ interface RESTPostAPIBlobShareBody {
215
+ object_id: SnowFlake;
216
+ /** Seconds, 60 to 30 days. Default 24 hours. */
217
+ expires_in?: number;
218
+ /** 1–10000. */
219
+ max_downloads?: number;
220
+ /** 8–128 characters; plan-dependent. */
221
+ password?: string;
222
+ }
223
+ type RESTPostAPIBlobShareQuery = RESTAPIWorkspaceQuery;
224
+ /**
225
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/create
226
+ */
227
+ type RESTPostAPIBlobShareResponse = APIPayload<APIBlobShare>;
228
+ /**
229
+ * `GET /v1/shares`.
230
+ *
231
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/list
232
+ */
233
+ interface RESTGetAPIBlobSharesQuery extends RESTAPIWorkspaceQuery {
234
+ object_id?: SnowFlake;
235
+ }
236
+ /**
237
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/list
238
+ */
239
+ type RESTGetAPIBlobSharesResponse = APIPayload<APIBlobShare[]>;
240
+ /** `DELETE /v1/shares/:share_id` — revokes the share. */
241
+ type RESTDeleteAPIBlobShareQuery = RESTAPIWorkspaceQuery;
242
+ /**
243
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/revoke
244
+ */
245
+ type RESTDeleteAPIBlobShareResponse = APIPayload<null>;
246
+ /** `GET /v1/shares/public/:token` — no authentication; used by the share page. `BLOB_SHARE_NOT_FOUND` / `BLOB_SHARE_EXHAUSTED`. */
247
+ type RESTGetAPIBlobSharePublicResponse = APIPayload<APIBlobSharePublic>;
248
+ /** `POST /v1/shares/public/:token/download` — no authentication. Counts one download and returns a temporary link. A wrong password returns `BLOB_SHARE_PASSWORD_INVALID` (rate limited). */
249
+ interface RESTPostAPIBlobSharePublicDownloadBody {
250
+ password?: string;
251
+ }
252
+ type RESTPostAPIBlobSharePublicDownloadResponse = APIPayload<APIBlobDownload>;
253
+ /** Rule fields a client sends; `prefix` and `created_at` are not part of the body, `active_from` is set by the platform. */
254
+ type RESTBlobRuleInput = Omit<APIBlobRule, "prefix" | "created_at" | "active_from">;
255
+ /** `GET /v1/rules`. */
256
+ type RESTGetAPIBlobRulesQuery = RESTAPIWorkspaceQuery;
257
+ /**
258
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/get
259
+ */
260
+ type RESTGetAPIBlobRulesResponse = APIPayload<APIBlobRules>;
261
+ /**
262
+ * `PUT /v1/rules` — replaces the whole list. Requires the `If-Match` header with the `etag` of the list you read. Returns the saved list and its new `etag`.
263
+ *
264
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace
265
+ */
266
+ interface RESTPutAPIBlobRulesBody {
267
+ rules: (RESTBlobRuleInput & {
268
+ prefix: string;
269
+ })[];
270
+ }
271
+ type RESTPutAPIBlobRulesQuery = RESTAPIWorkspaceQuery;
272
+ /**
273
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace
274
+ */
275
+ interface RESTPutAPIBlobRulesHeaders {
276
+ "If-Match": string;
277
+ }
278
+ /**
279
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace
280
+ */
281
+ type RESTPutAPIBlobRulesResponse = APIPayload<APIBlobRules>;
282
+ /**
283
+ * `PUT /v1/rules/:prefix` — creates or changes one rule (URL-encode the prefix). Returns the whole list and its new `etag`.
284
+ *
285
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/put
286
+ */
287
+ type RESTPutAPIBlobRuleBody = RESTBlobRuleInput;
288
+ type RESTPutAPIBlobRuleQuery = RESTAPIWorkspaceQuery;
289
+ /**
290
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/put
291
+ */
292
+ type RESTPutAPIBlobRuleResponse = APIPayload<APIBlobRules>;
293
+ /** `DELETE /v1/rules/:prefix` (URL-encode the prefix). Returns the remaining list and its new `etag`. */
294
+ type RESTDeleteAPIBlobRuleQuery = RESTAPIWorkspaceQuery;
295
+ /**
296
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/delete
297
+ */
298
+ type RESTDeleteAPIBlobRuleResponse = APIPayload<APIBlobRules>;
299
+ /** `GET /v1/stats`. */
300
+ type RESTGetAPIBlobStatsQuery = RESTAPIWorkspaceQuery;
301
+ /**
302
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/stats
303
+ */
304
+ type RESTGetAPIBlobStatsResponse = APIPayload<APIBlobStats>;
305
+ /**
306
+ * `POST /v1/upload-tokens` — creates a token that fixes every constraint below. Send `path` (one
307
+ * file) or `prefix` (any file under a folder, random suffix forced). It stops working when the
308
+ * API key that created it is revoked.
309
+ *
310
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/upload-tokens
311
+ */
312
+ interface RESTPostAPIBlobUploadTokenBody {
313
+ path?: string;
314
+ prefix?: string;
315
+ visibility?: BlobVisibility;
316
+ max_size?: number;
317
+ /** 1–20 extensions, lowercase, without the dot. */
318
+ allowed_extensions?: string[];
319
+ cache_control?: string;
320
+ content_disposition?: BlobContentDisposition;
321
+ expires_at?: ISODateString;
322
+ metadata?: Record<string, string>;
323
+ /**
324
+ * Allow the token to replace an existing object. Default `false`: a token without `overwrite: true`
325
+ * never replaces an object, even if the upload asks for `overwrite`.
326
+ */
327
+ overwrite?: boolean;
328
+ /** Seconds the token stays valid, 60–3600. Default 900. */
329
+ expires_in?: number;
330
+ /** 1–100. Default 1. */
331
+ max_uses?: number;
332
+ }
333
+ type RESTPostAPIBlobUploadTokenQuery = RESTAPIWorkspaceQuery;
334
+ /**
335
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/upload-tokens
336
+ */
337
+ type RESTPostAPIBlobUploadTokenResponse = APIPayload<APIBlobUploadToken>;
338
+ /** `GET /v1/s3/credentials` — read-only access when the API key only has `blob:read`. Limited to 10 calls per hour. */
339
+ type RESTGetAPIBlobS3CredentialsQuery = RESTAPIWorkspaceQuery;
340
+ /**
341
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/s3-credentials
342
+ */
343
+ type RESTGetAPIBlobS3CredentialsResponse = APIPayload<APIBlobS3Credentials>;
344
+ /** `GET /v1/domains`. */
345
+ type RESTGetAPIBlobDomainsQuery = RESTAPIWorkspaceQuery;
346
+ /**
347
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/list
348
+ */
349
+ type RESTGetAPIBlobDomainsResponse = APIPayload<APIBlobCustomDomain[]>;
350
+ /**
351
+ * `POST /v1/domains` — responds `201`. Plan-dependent.
352
+ *
353
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/add
354
+ */
355
+ interface RESTPostAPIBlobDomainBody {
356
+ hostname: string;
357
+ prefix?: string;
358
+ /** Defaults to `false`. See {@link APIBlobCustomDomain.web_content}. */
359
+ web_content?: boolean;
360
+ }
361
+ type RESTPostAPIBlobDomainQuery = RESTAPIWorkspaceQuery;
362
+ /**
363
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/add
364
+ */
365
+ type RESTPostAPIBlobDomainResponse = APIPayload<APIBlobCustomDomain>;
366
+ /** `POST /v1/domains/:domain_id/verify` — checks the ownership record, the CNAME and the certificate again. */
367
+ type RESTPostAPIBlobDomainVerifyQuery = RESTAPIWorkspaceQuery;
368
+ /**
369
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/verify
370
+ */
371
+ type RESTPostAPIBlobDomainVerifyResponse = APIPayload<APIBlobCustomDomain>;
372
+ /** `PATCH /v1/domains/:domain_id`. */
373
+ interface RESTPatchAPIBlobDomainBody {
374
+ /** See {@link APIBlobCustomDomain.web_content}. Takes effect within about a minute. */
375
+ web_content?: boolean;
376
+ }
377
+ type RESTPatchAPIBlobDomainQuery = RESTAPIWorkspaceQuery;
378
+ /**
379
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/update
380
+ */
381
+ type RESTPatchAPIBlobDomainResponse = APIPayload<APIBlobCustomDomain>;
382
+ /** `DELETE /v1/domains/:domain_id`. */
383
+ type RESTDeleteAPIBlobDomainQuery = RESTAPIWorkspaceQuery;
384
+ /**
385
+ * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/delete
386
+ */
387
+ type RESTDeleteAPIBlobDomainResponse = APIPayload<null>;
388
+
389
+ export type { RESTBlobObjectWriteOptions, RESTBlobRuleInput, RESTDeleteAPIBlobDomainQuery, RESTDeleteAPIBlobDomainResponse, RESTDeleteAPIBlobObjectQuery, RESTDeleteAPIBlobObjectResponse, RESTDeleteAPIBlobObjectsBody, RESTDeleteAPIBlobObjectsQuery, RESTDeleteAPIBlobObjectsResponse, RESTDeleteAPIBlobRuleQuery, RESTDeleteAPIBlobRuleResponse, RESTDeleteAPIBlobShareQuery, RESTDeleteAPIBlobShareResponse, RESTDeleteAPIBlobUploadQuery, RESTDeleteAPIBlobUploadResponse, RESTGetAPIBlobDomainsQuery, RESTGetAPIBlobDomainsResponse, RESTGetAPIBlobObjectDownloadQuery, RESTGetAPIBlobObjectDownloadResponse, RESTGetAPIBlobObjectQuery, RESTGetAPIBlobObjectResponse, RESTGetAPIBlobObjectsQuery, RESTGetAPIBlobObjectsResponse, RESTGetAPIBlobRulesQuery, RESTGetAPIBlobRulesResponse, RESTGetAPIBlobS3CredentialsQuery, RESTGetAPIBlobS3CredentialsResponse, RESTGetAPIBlobSharePublicResponse, RESTGetAPIBlobSharesQuery, RESTGetAPIBlobSharesResponse, RESTGetAPIBlobStatsQuery, RESTGetAPIBlobStatsResponse, RESTGetAPIBlobUploadQuery, RESTGetAPIBlobUploadResponse, RESTGetAPIBlobUploadsQuery, RESTGetAPIBlobUploadsResponse, RESTPatchAPIBlobDomainBody, RESTPatchAPIBlobDomainQuery, RESTPatchAPIBlobDomainResponse, RESTPatchAPIBlobObjectBody, RESTPatchAPIBlobObjectQuery, RESTPatchAPIBlobObjectResponse, RESTPatchAPIBlobObjectsBody, RESTPatchAPIBlobObjectsQuery, RESTPatchAPIBlobObjectsResponse, RESTPostAPIBlobDomainBody, RESTPostAPIBlobDomainQuery, RESTPostAPIBlobDomainResponse, RESTPostAPIBlobDomainVerifyQuery, RESTPostAPIBlobDomainVerifyResponse, RESTPostAPIBlobObjectCopyBody, RESTPostAPIBlobObjectCopyQuery, RESTPostAPIBlobObjectCopyResponse, RESTPostAPIBlobObjectQuery, RESTPostAPIBlobObjectResponse, RESTPostAPIBlobShareBody, RESTPostAPIBlobSharePublicDownloadBody, RESTPostAPIBlobSharePublicDownloadResponse, RESTPostAPIBlobShareQuery, RESTPostAPIBlobShareResponse, RESTPostAPIBlobUploadBody, RESTPostAPIBlobUploadCompleteQuery, RESTPostAPIBlobUploadCompleteResponse, RESTPostAPIBlobUploadPartsBody, RESTPostAPIBlobUploadPartsQuery, RESTPostAPIBlobUploadPartsResponse, RESTPostAPIBlobUploadQuery, RESTPostAPIBlobUploadResponse, RESTPostAPIBlobUploadTokenBody, RESTPostAPIBlobUploadTokenQuery, RESTPostAPIBlobUploadTokenResponse, RESTPutAPIBlobRuleBody, RESTPutAPIBlobRuleQuery, RESTPutAPIBlobRuleResponse, RESTPutAPIBlobRulesBody, RESTPutAPIBlobRulesHeaders, RESTPutAPIBlobRulesQuery, RESTPutAPIBlobRulesResponse };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // rest/v1/blob.ts
17
+ var blob_exports = {};
18
+ module.exports = __toCommonJS(blob_exports);
19
+ //# sourceMappingURL=blob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["blob.ts"],"sourcesContent":["import type {\n\tAPIBlobBatchResult,\n\tAPIBlobCustomDomain,\n\tAPIBlobDeleteResult,\n\tAPIBlobDownload,\n\tAPIBlobObject,\n\tAPIBlobObjectList,\n\tAPIBlobRule,\n\tAPIBlobRules,\n\tAPIBlobS3Credentials,\n\tAPIBlobShare,\n\tAPIBlobSharePublic,\n\tAPIBlobStats,\n\tAPIBlobUpload,\n\tAPIBlobUploadPart,\n\tAPIBlobUploadToken,\n\tAPIPayload,\n\tBlobContentDisposition,\n\tBlobVisibility,\n\tISODateString,\n\tRESTAPIWorkspaceQuery,\n\tSnowFlake,\n} from \"../../v1\";\n\n// Blob Storage routes are served at `https://blob.vertracloud.app/v1/...`. Every route accepts\n// `workspace_id` (query) to act on the blob of a workspace owner. Authenticate with a dashboard\n// session, an API key (`blob:read` / `blob:write`) or, on the upload routes only, an upload token.\n\n/**\n * Options shared by both ways of uploading. Defaults: `visibility: \"private\"`, `overwrite: false`,\n * `random_suffix: false` (always `true` for an upload token without a fixed `path`).\n */\nexport interface RESTBlobObjectWriteOptions {\n\tvisibility?: BlobVisibility;\n\t/** Replace an existing object at `path`. Without it a taken path returns `BLOB_OBJECT_ALREADY_EXISTS`. */\n\toverwrite?: boolean;\n\t/** Insert `-<10 random characters>` before the extension. */\n\trandom_suffix?: boolean;\n\tcache_control?: string;\n\tcontent_disposition?: BlobContentDisposition;\n\tfilename?: string;\n\texpires_at?: ISODateString;\n\t/**\n\t * Hex SHA-256 of the file; a mismatch returns `BLOB_CHECKSUM_MISMATCH`. Only valid for the\n\t * single-request upload and for a direct upload sent in one part: a multipart upload refuses it\n\t * (`VALIDATION_ERROR`), because a SHA-256 of the whole object cannot be verified from separate parts.\n\t */\n\tchecksum_sha256?: string;\n}\n\n// ---------------------------------------------------------------------------\n// Upload\n// ---------------------------------------------------------------------------\n\n/**\n * `POST /v1/objects` — single-request upload (up to the plan's `max_simple_upload_bytes`). The\n * body is `multipart/form-data` with one `file` field; options go in the query. Accepts an upload token.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/upload\n */\nexport interface RESTPostAPIBlobObjectQuery extends RESTAPIWorkspaceQuery, RESTBlobObjectWriteOptions {\n\tpath: string;\n\t/** JSON object, URL-encoded. */\n\tmetadata?: string;\n}\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/upload\n */\nexport type RESTPostAPIBlobObjectResponse = APIPayload<APIBlobObject>;\n\n/**\n * `POST /v1/uploads` — starts a direct upload (single or multipart, chosen by `size`). Accepts an upload token.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/create\n */\nexport interface RESTPostAPIBlobUploadBody extends RESTBlobObjectWriteOptions {\n\tpath: string;\n\tsize: number;\n\tmetadata?: Record<string, string>;\n}\nexport type RESTPostAPIBlobUploadQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/create\n */\nexport type RESTPostAPIBlobUploadResponse = APIPayload<APIBlobUpload>;\n\n/** `GET /v1/uploads` — uploads still in progress. */\nexport type RESTGetAPIBlobUploadsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/list\n */\nexport type RESTGetAPIBlobUploadsResponse = APIPayload<APIBlobUpload[]>;\n\n/** `GET /v1/uploads/:upload_id` — status of one upload, to resume it. Accepts an upload token. */\nexport type RESTGetAPIBlobUploadQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/get\n */\nexport type RESTGetAPIBlobUploadResponse = APIPayload<APIBlobUpload>;\n\n/**\n * `POST /v1/uploads/:upload_id/parts` — URLs for up to 100 parts. Accepts an upload token.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/parts\n */\nexport interface RESTPostAPIBlobUploadPartsBody {\n\tpart_numbers: number[];\n}\nexport type RESTPostAPIBlobUploadPartsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/parts\n */\nexport type RESTPostAPIBlobUploadPartsResponse = APIPayload<APIBlobUploadPart[]>;\n\n/** `POST /v1/uploads/:upload_id/complete` — checks the parts and creates the object. Accepts an upload token. */\nexport type RESTPostAPIBlobUploadCompleteQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/complete\n */\nexport type RESTPostAPIBlobUploadCompleteResponse = APIPayload<APIBlobObject>;\n\n/** `DELETE /v1/uploads/:upload_id` — aborts an upload; repeating it is not an error. Accepts an upload token. */\nexport type RESTDeleteAPIBlobUploadQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/uploads/abort\n */\nexport type RESTDeleteAPIBlobUploadResponse = APIPayload<null>;\n\n// ---------------------------------------------------------------------------\n// Objects\n// ---------------------------------------------------------------------------\n\n/**\n * `GET /v1/objects`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/list\n */\nexport interface RESTGetAPIBlobObjectsQuery extends RESTAPIWorkspaceQuery {\n\tprefix?: string;\n\t/** Group paths into folders at `/`. Omit it for a flat list. */\n\tdelimiter?: \"/\";\n\tvisibility?: BlobVisibility;\n\tcursor?: string;\n\t/** 1–1000. Default 100. */\n\tlimit?: number;\n}\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/list\n */\nexport type RESTGetAPIBlobObjectsResponse = APIPayload<APIBlobObjectList>;\n\n/** `GET /v1/objects/:object_id`. */\nexport type RESTGetAPIBlobObjectQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/get\n */\nexport type RESTGetAPIBlobObjectResponse = APIPayload<APIBlobObject>;\n\n/**\n * Fields of an object that can change. `null` restores the default; a `null` metadata value removes that key.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update\n */\nexport interface RESTPatchAPIBlobObjectBody {\n\tvisibility?: BlobVisibility;\n\tcache_control?: string | null;\n\tcontent_disposition?: BlobContentDisposition | null;\n\tfilename?: string | null;\n\texpires_at?: ISODateString | null;\n\tmetadata?: Record<string, string | null>;\n}\n\n/** `PATCH /v1/objects/:object_id`. */\nexport type RESTPatchAPIBlobObjectQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update\n */\nexport type RESTPatchAPIBlobObjectResponse = APIPayload<APIBlobObject>;\n\n/**\n * `PATCH /v1/objects` — applies the same changes to up to 100 objects.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update-many\n */\nexport interface RESTPatchAPIBlobObjectsBody {\n\tids: SnowFlake[];\n\tchanges: RESTPatchAPIBlobObjectBody;\n}\nexport type RESTPatchAPIBlobObjectsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/update-many\n */\nexport type RESTPatchAPIBlobObjectsResponse = APIPayload<APIBlobBatchResult[]>;\n\n/**\n * `POST /v1/objects/copy` — copies or moves an object. A move keeps the `id`; a copy creates\n * another object that counts toward storage.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/copy\n */\nexport interface RESTPostAPIBlobObjectCopyBody {\n\tsource: SnowFlake;\n\tpath: string;\n\tmove?: boolean;\n\toverwrite?: boolean;\n\trandom_suffix?: boolean;\n\tvisibility?: BlobVisibility;\n}\nexport type RESTPostAPIBlobObjectCopyQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/copy\n */\nexport type RESTPostAPIBlobObjectCopyResponse = APIPayload<APIBlobObject>;\n\n/** `DELETE /v1/objects/:object_id`. */\nexport type RESTDeleteAPIBlobObjectQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete\n */\nexport type RESTDeleteAPIBlobObjectResponse = APIPayload<null>;\n\n/**\n * `DELETE /v1/objects` — up to 1000 objects per call, by `ids` or by folder `prefix` (send one of them).\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete-many\n */\nexport type RESTDeleteAPIBlobObjectsBody = { ids: SnowFlake[]; prefix?: never } | { prefix: string; ids?: never };\nexport type RESTDeleteAPIBlobObjectsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/delete-many\n */\nexport type RESTDeleteAPIBlobObjectsResponse = APIPayload<APIBlobDeleteResult>;\n\n/**\n * `GET /v1/objects/:object_id/download` — temporary download link; it cannot be revoked. With\n * `redirect` true (default) the response is a `302` to the link; with `false` it is `RESTGetAPIBlobObjectDownloadResponse`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/download\n */\nexport interface RESTGetAPIBlobObjectDownloadQuery extends RESTAPIWorkspaceQuery {\n\t/** Seconds, 60–86400. Default 3600. */\n\texpires_in?: number;\n\tdisposition?: BlobContentDisposition;\n\tfilename?: string;\n\tredirect?: boolean;\n}\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/objects/download\n */\nexport type RESTGetAPIBlobObjectDownloadResponse = APIPayload<APIBlobDownload>;\n\n// ---------------------------------------------------------------------------\n// Shares\n// ---------------------------------------------------------------------------\n\n/**\n * `POST /v1/shares` — responds `201`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/create\n */\nexport interface RESTPostAPIBlobShareBody {\n\tobject_id: SnowFlake;\n\t/** Seconds, 60 to 30 days. Default 24 hours. */\n\texpires_in?: number;\n\t/** 1–10000. */\n\tmax_downloads?: number;\n\t/** 8–128 characters; plan-dependent. */\n\tpassword?: string;\n}\nexport type RESTPostAPIBlobShareQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/create\n */\nexport type RESTPostAPIBlobShareResponse = APIPayload<APIBlobShare>;\n\n/**\n * `GET /v1/shares`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/list\n */\nexport interface RESTGetAPIBlobSharesQuery extends RESTAPIWorkspaceQuery {\n\tobject_id?: SnowFlake;\n}\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/list\n */\nexport type RESTGetAPIBlobSharesResponse = APIPayload<APIBlobShare[]>;\n\n/** `DELETE /v1/shares/:share_id` — revokes the share. */\nexport type RESTDeleteAPIBlobShareQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/shares/revoke\n */\nexport type RESTDeleteAPIBlobShareResponse = APIPayload<null>;\n\n/** `GET /v1/shares/public/:token` — no authentication; used by the share page. `BLOB_SHARE_NOT_FOUND` / `BLOB_SHARE_EXHAUSTED`. */\nexport type RESTGetAPIBlobSharePublicResponse = APIPayload<APIBlobSharePublic>;\n\n/** `POST /v1/shares/public/:token/download` — no authentication. Counts one download and returns a temporary link. A wrong password returns `BLOB_SHARE_PASSWORD_INVALID` (rate limited). */\nexport interface RESTPostAPIBlobSharePublicDownloadBody {\n\tpassword?: string;\n}\nexport type RESTPostAPIBlobSharePublicDownloadResponse = APIPayload<APIBlobDownload>;\n\n// ---------------------------------------------------------------------------\n// Folder rules\n// ---------------------------------------------------------------------------\n\n/** Rule fields a client sends; `prefix` and `created_at` are not part of the body, `active_from` is set by the platform. */\nexport type RESTBlobRuleInput = Omit<APIBlobRule, \"prefix\" | \"created_at\" | \"active_from\">;\n\n/** `GET /v1/rules`. */\nexport type RESTGetAPIBlobRulesQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/get\n */\nexport type RESTGetAPIBlobRulesResponse = APIPayload<APIBlobRules>;\n\n/**\n * `PUT /v1/rules` — replaces the whole list. Requires the `If-Match` header with the `etag` of the list you read. Returns the saved list and its new `etag`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace\n */\nexport interface RESTPutAPIBlobRulesBody {\n\trules: (RESTBlobRuleInput & { prefix: string })[];\n}\nexport type RESTPutAPIBlobRulesQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace\n */\nexport interface RESTPutAPIBlobRulesHeaders {\n\t\"If-Match\": string;\n}\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/replace\n */\nexport type RESTPutAPIBlobRulesResponse = APIPayload<APIBlobRules>;\n\n/**\n * `PUT /v1/rules/:prefix` — creates or changes one rule (URL-encode the prefix). Returns the whole list and its new `etag`.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/put\n */\nexport type RESTPutAPIBlobRuleBody = RESTBlobRuleInput;\nexport type RESTPutAPIBlobRuleQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/put\n */\nexport type RESTPutAPIBlobRuleResponse = APIPayload<APIBlobRules>;\n\n/** `DELETE /v1/rules/:prefix` (URL-encode the prefix). Returns the remaining list and its new `etag`. */\nexport type RESTDeleteAPIBlobRuleQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/rules/delete\n */\nexport type RESTDeleteAPIBlobRuleResponse = APIPayload<APIBlobRules>;\n\n// ---------------------------------------------------------------------------\n// Account, upload tokens, S3 and custom domains\n// ---------------------------------------------------------------------------\n\n/** `GET /v1/stats`. */\nexport type RESTGetAPIBlobStatsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/stats\n */\nexport type RESTGetAPIBlobStatsResponse = APIPayload<APIBlobStats>;\n\n/**\n * `POST /v1/upload-tokens` — creates a token that fixes every constraint below. Send `path` (one\n * file) or `prefix` (any file under a folder, random suffix forced). It stops working when the\n * API key that created it is revoked.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/upload-tokens\n */\nexport interface RESTPostAPIBlobUploadTokenBody {\n\tpath?: string;\n\tprefix?: string;\n\tvisibility?: BlobVisibility;\n\tmax_size?: number;\n\t/** 1–20 extensions, lowercase, without the dot. */\n\tallowed_extensions?: string[];\n\tcache_control?: string;\n\tcontent_disposition?: BlobContentDisposition;\n\texpires_at?: ISODateString;\n\tmetadata?: Record<string, string>;\n\t/**\n\t * Allow the token to replace an existing object. Default `false`: a token without `overwrite: true`\n\t * never replaces an object, even if the upload asks for `overwrite`.\n\t */\n\toverwrite?: boolean;\n\t/** Seconds the token stays valid, 60–3600. Default 900. */\n\texpires_in?: number;\n\t/** 1–100. Default 1. */\n\tmax_uses?: number;\n}\nexport type RESTPostAPIBlobUploadTokenQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/upload-tokens\n */\nexport type RESTPostAPIBlobUploadTokenResponse = APIPayload<APIBlobUploadToken>;\n\n/** `GET /v1/s3/credentials` — read-only access when the API key only has `blob:read`. Limited to 10 calls per hour. */\nexport type RESTGetAPIBlobS3CredentialsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/account/s3-credentials\n */\nexport type RESTGetAPIBlobS3CredentialsResponse = APIPayload<APIBlobS3Credentials>;\n\n/** `GET /v1/domains`. */\nexport type RESTGetAPIBlobDomainsQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/list\n */\nexport type RESTGetAPIBlobDomainsResponse = APIPayload<APIBlobCustomDomain[]>;\n\n/**\n * `POST /v1/domains` — responds `201`. Plan-dependent.\n *\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/add\n */\nexport interface RESTPostAPIBlobDomainBody {\n\thostname: string;\n\tprefix?: string;\n\t/** Defaults to `false`. See {@link APIBlobCustomDomain.web_content}. */\n\tweb_content?: boolean;\n}\nexport type RESTPostAPIBlobDomainQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/add\n */\nexport type RESTPostAPIBlobDomainResponse = APIPayload<APIBlobCustomDomain>;\n\n/** `POST /v1/domains/:domain_id/verify` — checks the ownership record, the CNAME and the certificate again. */\nexport type RESTPostAPIBlobDomainVerifyQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/verify\n */\nexport type RESTPostAPIBlobDomainVerifyResponse = APIPayload<APIBlobCustomDomain>;\n\n/** `PATCH /v1/domains/:domain_id`. */\nexport interface RESTPatchAPIBlobDomainBody {\n\t/** See {@link APIBlobCustomDomain.web_content}. Takes effect within about a minute. */\n\tweb_content?: boolean;\n}\nexport type RESTPatchAPIBlobDomainQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/update\n */\nexport type RESTPatchAPIBlobDomainResponse = APIPayload<APIBlobCustomDomain>;\n\n/** `DELETE /v1/domains/:domain_id`. */\nexport type RESTDeleteAPIBlobDomainQuery = RESTAPIWorkspaceQuery;\n\n/**\n * @see https://docs.vertracloud.app/api-reference/endpoint/blob/domains/delete\n */\nexport type RESTDeleteAPIBlobDomainResponse = APIPayload<null>;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=blob.mjs.map
@@ -2,6 +2,7 @@ export { RESTGetAPIActivitiesQuery, RESTGetAPIActivitiesResponse } from './activ
2
2
  export { RESTDeleteAPIUserApiKeyResponse, RESTGetAPIUserApiKeysResponse, RESTPatchAPIUserApiKeyBody, RESTPatchAPIUserApiKeyResponse, RESTPostAPIUserApiKeyCreateBody, RESTPostAPIUserApiKeyCreateResponse, RESTPostAPIUserApiKeyRotateResponse } from './api-key.js';
3
3
  export { RESTDeleteAPIApplicationCustomDomainResponse, RESTDeleteAPIApplicationEnvironmentResponse, RESTDeleteAPIApplicationFileBody, RESTDeleteAPIApplicationFileResponse, RESTDeleteAPIApplicationResponse, RESTDeleteAPIApplicationWebPublishResponse, RESTDeleteAPIApplicationWebhookResponse, RESTGetAPIApplicationCustomDomainResponse, RESTGetAPIApplicationDeploymentsResponse, RESTGetAPIApplicationDnsRecordsResponse, RESTGetAPIApplicationDownloadResponse, RESTGetAPIApplicationEnvironmentResponse, RESTGetAPIApplicationFileContentQuery, RESTGetAPIApplicationFileContentResponse, RESTGetAPIApplicationFileTreeResponse, RESTGetAPIApplicationFilesQuery, RESTGetAPIApplicationFilesResponse, RESTGetAPIApplicationLogsResponse, RESTGetAPIApplicationMetricsQuery, RESTGetAPIApplicationMetricsResponse, RESTGetAPIApplicationRealtimeQuery, RESTGetAPIApplicationRealtimeResponse, RESTGetAPIApplicationReleaseLogResponse, RESTGetAPIApplicationReleasesQuery, RESTGetAPIApplicationReleasesResponse, RESTGetAPIApplicationResponse, RESTGetAPIApplicationRollbackPreviewResponse, RESTGetAPIApplicationRuntimesResponse, RESTGetAPIApplicationStatusResponse, RESTGetAPIApplicationStatusShortResponse, RESTGetAPIApplicationWebhookUrlResponse, RESTPatchAPIApplicationFileMoveBody, RESTPatchAPIApplicationFileMoveResponse, RESTPatchAPIApplicationSubdomainBody, RESTPatchAPIApplicationSubdomainResponse, RESTPatchAPIApplicationUpdateConfigBody, RESTPatchAPIApplicationUpdateConfigResponse, RESTPostAPIApplicationCreateBody, RESTPostAPIApplicationCreateResponse, RESTPostAPIApplicationCustomDomainBody, RESTPostAPIApplicationCustomDomainResponse, RESTPostAPIApplicationEnvironmentBody, RESTPostAPIApplicationEnvironmentResponse, RESTPostAPIApplicationEnvironmentVariableBody, RESTPostAPIApplicationFileUploadBody, RESTPostAPIApplicationFileUploadQuery, RESTPostAPIApplicationFileUploadResponse, RESTPostAPIApplicationPurgeCacheBody, RESTPostAPIApplicationPurgeCacheResponse, RESTPostAPIApplicationRestartBody, RESTPostAPIApplicationRestartResponse, RESTPostAPIApplicationRollbackBody, RESTPostAPIApplicationRollbackResponse, RESTPostAPIApplicationScanBody, RESTPostAPIApplicationScanResponse, RESTPostAPIApplicationStartResponse, RESTPostAPIApplicationStopResponse, RESTPostAPIApplicationWebPublishBody, RESTPostAPIApplicationWebPublishResponse, RESTPostAPIApplicationWebhookCreateBody, RESTPostAPIApplicationWebhookCreateResponse, RESTPutAPIApplicationFileBody, RESTPutAPIApplicationFileResponse } from './application.js';
4
4
  export { RESTDeleteAPIBillingCardResponse, RESTGetAPIBillingCardsResponse, RESTGetAPIBillingDetailsResponse, RESTGetAPIBillingRenewalResponse, RESTPatchAPIBillingRenewalBody, RESTPatchAPIBillingRenewalResponse, RESTPostAPIBillingCardDefaultResponse, RESTPostAPIBillingCardSetupResponse, RESTPutAPIBillingDetailsBody, RESTPutAPIBillingDetailsResponse } from './billing.js';
5
+ export { RESTBlobObjectWriteOptions, RESTBlobRuleInput, RESTDeleteAPIBlobDomainQuery, RESTDeleteAPIBlobDomainResponse, RESTDeleteAPIBlobObjectQuery, RESTDeleteAPIBlobObjectResponse, RESTDeleteAPIBlobObjectsBody, RESTDeleteAPIBlobObjectsQuery, RESTDeleteAPIBlobObjectsResponse, RESTDeleteAPIBlobRuleQuery, RESTDeleteAPIBlobRuleResponse, RESTDeleteAPIBlobShareQuery, RESTDeleteAPIBlobShareResponse, RESTDeleteAPIBlobUploadQuery, RESTDeleteAPIBlobUploadResponse, RESTGetAPIBlobDomainsQuery, RESTGetAPIBlobDomainsResponse, RESTGetAPIBlobObjectDownloadQuery, RESTGetAPIBlobObjectDownloadResponse, RESTGetAPIBlobObjectQuery, RESTGetAPIBlobObjectResponse, RESTGetAPIBlobObjectsQuery, RESTGetAPIBlobObjectsResponse, RESTGetAPIBlobRulesQuery, RESTGetAPIBlobRulesResponse, RESTGetAPIBlobS3CredentialsQuery, RESTGetAPIBlobS3CredentialsResponse, RESTGetAPIBlobSharePublicResponse, RESTGetAPIBlobSharesQuery, RESTGetAPIBlobSharesResponse, RESTGetAPIBlobStatsQuery, RESTGetAPIBlobStatsResponse, RESTGetAPIBlobUploadQuery, RESTGetAPIBlobUploadResponse, RESTGetAPIBlobUploadsQuery, RESTGetAPIBlobUploadsResponse, RESTPatchAPIBlobDomainBody, RESTPatchAPIBlobDomainQuery, RESTPatchAPIBlobDomainResponse, RESTPatchAPIBlobObjectBody, RESTPatchAPIBlobObjectQuery, RESTPatchAPIBlobObjectResponse, RESTPatchAPIBlobObjectsBody, RESTPatchAPIBlobObjectsQuery, RESTPatchAPIBlobObjectsResponse, RESTPostAPIBlobDomainBody, RESTPostAPIBlobDomainQuery, RESTPostAPIBlobDomainResponse, RESTPostAPIBlobDomainVerifyQuery, RESTPostAPIBlobDomainVerifyResponse, RESTPostAPIBlobObjectCopyBody, RESTPostAPIBlobObjectCopyQuery, RESTPostAPIBlobObjectCopyResponse, RESTPostAPIBlobObjectQuery, RESTPostAPIBlobObjectResponse, RESTPostAPIBlobShareBody, RESTPostAPIBlobSharePublicDownloadBody, RESTPostAPIBlobSharePublicDownloadResponse, RESTPostAPIBlobShareQuery, RESTPostAPIBlobShareResponse, RESTPostAPIBlobUploadBody, RESTPostAPIBlobUploadCompleteQuery, RESTPostAPIBlobUploadCompleteResponse, RESTPostAPIBlobUploadPartsBody, RESTPostAPIBlobUploadPartsQuery, RESTPostAPIBlobUploadPartsResponse, RESTPostAPIBlobUploadQuery, RESTPostAPIBlobUploadResponse, RESTPostAPIBlobUploadTokenBody, RESTPostAPIBlobUploadTokenQuery, RESTPostAPIBlobUploadTokenResponse, RESTPutAPIBlobRuleBody, RESTPutAPIBlobRuleQuery, RESTPutAPIBlobRuleResponse, RESTPutAPIBlobRulesBody, RESTPutAPIBlobRulesHeaders, RESTPutAPIBlobRulesQuery, RESTPutAPIBlobRulesResponse } from './blob.js';
5
6
  export { RESTDeleteAPIDatabaseResponse, RESTGetAPIDatabaseCertificateResponse, RESTGetAPIDatabaseMetricsResponse, RESTGetAPIDatabaseResponse, RESTGetAPIDatabaseStatusResponse, RESTGetAPIDatabaseStatusShortResponse, RESTPostAPIDatabaseCreateBody, RESTPostAPIDatabaseCreateResponse, RESTPostAPIDatabaseResetCertificateResponse, RESTPostAPIDatabaseResetPasswordResponse, RESTPostAPIDatabaseResetResponse, RESTPostAPIDatabaseStartResponse, RESTPostAPIDatabaseStopResponse, RESTPutAPIDatabaseUpdateBody, RESTPutAPIDatabaseUpdateResponse } from './database.js';
6
7
  export { RESTDeleteAPIDatabaseDocumentsBody, RESTDeleteAPIDatabaseRedisKeysBody, RESTDeleteAPIDatabaseRowsBody, RESTGetAPIDatabaseCollectionIndexesResult, RESTGetAPIDatabaseCollectionsResult, RESTGetAPIDatabaseDataOverviewResult, RESTGetAPIDatabaseDocumentsResult, RESTGetAPIDatabaseRedisInfoResult, RESTGetAPIDatabaseRedisKeyValueResult, RESTGetAPIDatabaseRedisKeysResult, RESTGetAPIDatabaseSchemasResult, RESTGetAPIDatabaseTableColumnsResult, RESTGetAPIDatabaseTableRowsResult, RESTGetAPIDatabaseTablesResult, RESTMutateAPIDatabaseDocumentsResult, RESTMutateAPIDatabaseRedisKeysResult, RESTMutateAPIDatabaseRowsResult, RESTPostAPIDatabaseDocumentCreateBody, RESTPostAPIDatabaseQueryBody, RESTPostAPIDatabaseQueryResult, RESTPostAPIDatabaseRowCreateBody, RESTPutAPIDatabaseDocumentUpdateBody, RESTPutAPIDatabaseRedisKeyBody, RESTPutAPIDatabaseRedisKeyExpireBody, RESTPutAPIDatabaseRowUpdateBody } from './database-data.js';
7
8
  export { RESTGetAPINotificationsResponse } from './notification.js';
@@ -19,6 +20,7 @@ import '../../payloads/v1/notification.js';
19
20
  import '../../payloads/v1/api-key.js';
20
21
  import '../../payloads/v1/application.js';
21
22
  import '../../payloads/v1/billing.js';
23
+ import '../../payloads/v1/blob.js';
22
24
  import '../../payloads/v1/database.js';
23
25
  import '../../payloads/v1/database-data.js';
24
26
  import '../../payloads/v1/oauth.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"sourcesContent":["export * from \"./activity\";\nexport * from \"./api-key\";\nexport * from \"./application\";\nexport * from \"./billing\";\nexport * from \"./database\";\nexport * from \"./database-data\";\nexport * from \"./notification\";\nexport * from \"./oauth\";\nexport * from \"./orders\";\nexport * from \"./redeem\";\nexport * from \"./snapshot\";\nexport * from \"./status\";\nexport * from \"./user\";\nexport * from \"./workspace\";\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["index.ts"],"sourcesContent":["export * from \"./activity\";\nexport * from \"./api-key\";\nexport * from \"./application\";\nexport * from \"./billing\";\nexport * from \"./blob\";\nexport * from \"./database\";\nexport * from \"./database-data\";\nexport * from \"./notification\";\nexport * from \"./oauth\";\nexport * from \"./orders\";\nexport * from \"./redeem\";\nexport * from \"./snapshot\";\nexport * from \"./status\";\nexport * from \"./user\";\nexport * from \"./workspace\";\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
package/v1.d.ts CHANGED
@@ -4,6 +4,7 @@ export { APIApiKey, APIApiKeyCreated, APIApiKeyPreset, APIApiKeyRoute, APIApiKey
4
4
  export { APIErrorCode, API_ERROR_CODES } from './payloads/v1/api-error.js';
5
5
  export { APIApplication, APIApplicationConfig, APIApplicationCustomDomain, APIApplicationDeploySettings, APIApplicationDeployment, APIApplicationDnsRecord, APIApplicationEnvironment, APIApplicationFile, APIApplicationFileContent, APIApplicationFileTree, APIApplicationFileUpload, APIApplicationGithub, APIApplicationMetric, APIApplicationNetwork, APIApplicationOperationResponse, APIApplicationRealtimeEvent, APIApplicationRelease, APIApplicationReleaseLog, APIApplicationRollbackPreview, APIApplicationRuntime, APIApplicationRuntimes, APIApplicationScanSuggestions, APIApplicationShieldCooldown, APIApplicationStatus, APIApplicationStatusShort, APIApplicationSubdomain, APIApplicationWebPublish, APIApplicationWebhook, APIApplicationWebhookUrl, ApplicationCluster, ApplicationDnsRecordStatus, ApplicationDnsRecordType, ApplicationEnvironmentChange, ApplicationFileContentType, ApplicationFileType, ApplicationLanguage, ApplicationRealtimeEventType, ApplicationReleaseSource, ApplicationReleaseStatus, ApplicationStatus, ApplicationType, ApplicationVersion, ApplicationZeroDowntime, ShieldIncidentDirection, ShieldIncidentReason } from './payloads/v1/application.js';
6
6
  export { APIBillingAddress, APIBillingCard, APIBillingDetails, APIBillingRenewal, APIBillingTaxId, BillingTaxIdType } from './payloads/v1/billing.js';
7
+ export { APIBlobBatchResult, APIBlobCustomDomain, APIBlobDeleteResult, APIBlobDownload, APIBlobLimits, APIBlobObject, APIBlobObjectList, APIBlobRule, APIBlobRules, APIBlobS3Credentials, APIBlobShare, APIBlobSharePublic, APIBlobStats, APIBlobUpload, APIBlobUploadPart, APIBlobUploadToken, BlobContentDisposition, BlobCustomDomainStatus, BlobUploadMode, BlobUploadStatus, BlobVisibility } from './payloads/v1/blob.js';
7
8
  export { APIDatabase, APIDatabaseCertificate, APIDatabaseMetrics, APIDatabaseNetwork, APIDatabaseOperationResponse, APIDatabasePasswordReset, APIDatabaseStatus, APIDatabaseStatusShort, DatabaseCluster, DatabaseStatus, DatabaseType } from './payloads/v1/database.js';
8
9
  export { APIDatabaseCollection, APIDatabaseColumn, APIDatabaseColumnReference, APIDatabaseDataError, APIDatabaseDataOverview, APIDatabaseDocumentListParams, APIDatabaseDocumentsPage, APIDatabaseIndex, APIDatabaseListParams, APIDatabaseMongoIndex, APIDatabaseQueryResult, APIDatabaseRedisInfo, APIDatabaseRedisKey, APIDatabaseRedisKeyValue, APIDatabaseRedisKeysPage, APIDatabaseRedisScanParams, APIDatabaseRedisZSetMember, APIDatabaseRowFilter, APIDatabaseRowsPage, APIDatabaseSchema, APIDatabaseTable, DatabaseFilterOperator, DatabaseRedisKeyType, DatabaseSortDirection, DatabaseTableKind } from './payloads/v1/database-data.js';
9
10
  export { APINotification, LocalizedContent, NotificationImportance, NotificationType } from './payloads/v1/notification.js';
@@ -18,6 +19,7 @@ export { RESTGetAPIActivitiesQuery, RESTGetAPIActivitiesResponse } from './rest/
18
19
  export { RESTDeleteAPIUserApiKeyResponse, RESTGetAPIUserApiKeysResponse, RESTPatchAPIUserApiKeyBody, RESTPatchAPIUserApiKeyResponse, RESTPostAPIUserApiKeyCreateBody, RESTPostAPIUserApiKeyCreateResponse, RESTPostAPIUserApiKeyRotateResponse } from './rest/v1/api-key.js';
19
20
  export { RESTDeleteAPIApplicationCustomDomainResponse, RESTDeleteAPIApplicationEnvironmentResponse, RESTDeleteAPIApplicationFileBody, RESTDeleteAPIApplicationFileResponse, RESTDeleteAPIApplicationResponse, RESTDeleteAPIApplicationWebPublishResponse, RESTDeleteAPIApplicationWebhookResponse, RESTGetAPIApplicationCustomDomainResponse, RESTGetAPIApplicationDeploymentsResponse, RESTGetAPIApplicationDnsRecordsResponse, RESTGetAPIApplicationDownloadResponse, RESTGetAPIApplicationEnvironmentResponse, RESTGetAPIApplicationFileContentQuery, RESTGetAPIApplicationFileContentResponse, RESTGetAPIApplicationFileTreeResponse, RESTGetAPIApplicationFilesQuery, RESTGetAPIApplicationFilesResponse, RESTGetAPIApplicationLogsResponse, RESTGetAPIApplicationMetricsQuery, RESTGetAPIApplicationMetricsResponse, RESTGetAPIApplicationRealtimeQuery, RESTGetAPIApplicationRealtimeResponse, RESTGetAPIApplicationReleaseLogResponse, RESTGetAPIApplicationReleasesQuery, RESTGetAPIApplicationReleasesResponse, RESTGetAPIApplicationResponse, RESTGetAPIApplicationRollbackPreviewResponse, RESTGetAPIApplicationRuntimesResponse, RESTGetAPIApplicationStatusResponse, RESTGetAPIApplicationStatusShortResponse, RESTGetAPIApplicationWebhookUrlResponse, RESTPatchAPIApplicationFileMoveBody, RESTPatchAPIApplicationFileMoveResponse, RESTPatchAPIApplicationSubdomainBody, RESTPatchAPIApplicationSubdomainResponse, RESTPatchAPIApplicationUpdateConfigBody, RESTPatchAPIApplicationUpdateConfigResponse, RESTPostAPIApplicationCreateBody, RESTPostAPIApplicationCreateResponse, RESTPostAPIApplicationCustomDomainBody, RESTPostAPIApplicationCustomDomainResponse, RESTPostAPIApplicationEnvironmentBody, RESTPostAPIApplicationEnvironmentResponse, RESTPostAPIApplicationEnvironmentVariableBody, RESTPostAPIApplicationFileUploadBody, RESTPostAPIApplicationFileUploadQuery, RESTPostAPIApplicationFileUploadResponse, RESTPostAPIApplicationPurgeCacheBody, RESTPostAPIApplicationPurgeCacheResponse, RESTPostAPIApplicationRestartBody, RESTPostAPIApplicationRestartResponse, RESTPostAPIApplicationRollbackBody, RESTPostAPIApplicationRollbackResponse, RESTPostAPIApplicationScanBody, RESTPostAPIApplicationScanResponse, RESTPostAPIApplicationStartResponse, RESTPostAPIApplicationStopResponse, RESTPostAPIApplicationWebPublishBody, RESTPostAPIApplicationWebPublishResponse, RESTPostAPIApplicationWebhookCreateBody, RESTPostAPIApplicationWebhookCreateResponse, RESTPutAPIApplicationFileBody, RESTPutAPIApplicationFileResponse } from './rest/v1/application.js';
20
21
  export { RESTDeleteAPIBillingCardResponse, RESTGetAPIBillingCardsResponse, RESTGetAPIBillingDetailsResponse, RESTGetAPIBillingRenewalResponse, RESTPatchAPIBillingRenewalBody, RESTPatchAPIBillingRenewalResponse, RESTPostAPIBillingCardDefaultResponse, RESTPostAPIBillingCardSetupResponse, RESTPutAPIBillingDetailsBody, RESTPutAPIBillingDetailsResponse } from './rest/v1/billing.js';
22
+ export { RESTBlobObjectWriteOptions, RESTBlobRuleInput, RESTDeleteAPIBlobDomainQuery, RESTDeleteAPIBlobDomainResponse, RESTDeleteAPIBlobObjectQuery, RESTDeleteAPIBlobObjectResponse, RESTDeleteAPIBlobObjectsBody, RESTDeleteAPIBlobObjectsQuery, RESTDeleteAPIBlobObjectsResponse, RESTDeleteAPIBlobRuleQuery, RESTDeleteAPIBlobRuleResponse, RESTDeleteAPIBlobShareQuery, RESTDeleteAPIBlobShareResponse, RESTDeleteAPIBlobUploadQuery, RESTDeleteAPIBlobUploadResponse, RESTGetAPIBlobDomainsQuery, RESTGetAPIBlobDomainsResponse, RESTGetAPIBlobObjectDownloadQuery, RESTGetAPIBlobObjectDownloadResponse, RESTGetAPIBlobObjectQuery, RESTGetAPIBlobObjectResponse, RESTGetAPIBlobObjectsQuery, RESTGetAPIBlobObjectsResponse, RESTGetAPIBlobRulesQuery, RESTGetAPIBlobRulesResponse, RESTGetAPIBlobS3CredentialsQuery, RESTGetAPIBlobS3CredentialsResponse, RESTGetAPIBlobSharePublicResponse, RESTGetAPIBlobSharesQuery, RESTGetAPIBlobSharesResponse, RESTGetAPIBlobStatsQuery, RESTGetAPIBlobStatsResponse, RESTGetAPIBlobUploadQuery, RESTGetAPIBlobUploadResponse, RESTGetAPIBlobUploadsQuery, RESTGetAPIBlobUploadsResponse, RESTPatchAPIBlobDomainBody, RESTPatchAPIBlobDomainQuery, RESTPatchAPIBlobDomainResponse, RESTPatchAPIBlobObjectBody, RESTPatchAPIBlobObjectQuery, RESTPatchAPIBlobObjectResponse, RESTPatchAPIBlobObjectsBody, RESTPatchAPIBlobObjectsQuery, RESTPatchAPIBlobObjectsResponse, RESTPostAPIBlobDomainBody, RESTPostAPIBlobDomainQuery, RESTPostAPIBlobDomainResponse, RESTPostAPIBlobDomainVerifyQuery, RESTPostAPIBlobDomainVerifyResponse, RESTPostAPIBlobObjectCopyBody, RESTPostAPIBlobObjectCopyQuery, RESTPostAPIBlobObjectCopyResponse, RESTPostAPIBlobObjectQuery, RESTPostAPIBlobObjectResponse, RESTPostAPIBlobShareBody, RESTPostAPIBlobSharePublicDownloadBody, RESTPostAPIBlobSharePublicDownloadResponse, RESTPostAPIBlobShareQuery, RESTPostAPIBlobShareResponse, RESTPostAPIBlobUploadBody, RESTPostAPIBlobUploadCompleteQuery, RESTPostAPIBlobUploadCompleteResponse, RESTPostAPIBlobUploadPartsBody, RESTPostAPIBlobUploadPartsQuery, RESTPostAPIBlobUploadPartsResponse, RESTPostAPIBlobUploadQuery, RESTPostAPIBlobUploadResponse, RESTPostAPIBlobUploadTokenBody, RESTPostAPIBlobUploadTokenQuery, RESTPostAPIBlobUploadTokenResponse, RESTPutAPIBlobRuleBody, RESTPutAPIBlobRuleQuery, RESTPutAPIBlobRuleResponse, RESTPutAPIBlobRulesBody, RESTPutAPIBlobRulesHeaders, RESTPutAPIBlobRulesQuery, RESTPutAPIBlobRulesResponse } from './rest/v1/blob.js';
21
23
  export { RESTDeleteAPIDatabaseResponse, RESTGetAPIDatabaseCertificateResponse, RESTGetAPIDatabaseMetricsResponse, RESTGetAPIDatabaseResponse, RESTGetAPIDatabaseStatusResponse, RESTGetAPIDatabaseStatusShortResponse, RESTPostAPIDatabaseCreateBody, RESTPostAPIDatabaseCreateResponse, RESTPostAPIDatabaseResetCertificateResponse, RESTPostAPIDatabaseResetPasswordResponse, RESTPostAPIDatabaseResetResponse, RESTPostAPIDatabaseStartResponse, RESTPostAPIDatabaseStopResponse, RESTPutAPIDatabaseUpdateBody, RESTPutAPIDatabaseUpdateResponse } from './rest/v1/database.js';
22
24
  export { RESTDeleteAPIDatabaseDocumentsBody, RESTDeleteAPIDatabaseRedisKeysBody, RESTDeleteAPIDatabaseRowsBody, RESTGetAPIDatabaseCollectionIndexesResult, RESTGetAPIDatabaseCollectionsResult, RESTGetAPIDatabaseDataOverviewResult, RESTGetAPIDatabaseDocumentsResult, RESTGetAPIDatabaseRedisInfoResult, RESTGetAPIDatabaseRedisKeyValueResult, RESTGetAPIDatabaseRedisKeysResult, RESTGetAPIDatabaseSchemasResult, RESTGetAPIDatabaseTableColumnsResult, RESTGetAPIDatabaseTableRowsResult, RESTGetAPIDatabaseTablesResult, RESTMutateAPIDatabaseDocumentsResult, RESTMutateAPIDatabaseRedisKeysResult, RESTMutateAPIDatabaseRowsResult, RESTPostAPIDatabaseDocumentCreateBody, RESTPostAPIDatabaseQueryBody, RESTPostAPIDatabaseQueryResult, RESTPostAPIDatabaseRowCreateBody, RESTPutAPIDatabaseDocumentUpdateBody, RESTPutAPIDatabaseRedisKeyBody, RESTPutAPIDatabaseRedisKeyExpireBody, RESTPutAPIDatabaseRowUpdateBody } from './rest/v1/database-data.js';
23
25
  export { RESTGetAPINotificationsResponse } from './rest/v1/notification.js';