@supaapps/platform93-sdk 0.1.0-alpha.0 → 0.1.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -44,6 +44,73 @@ export type OrganizationPolicy = UpdateOrganizationPolicy & {
44
44
  version: number;
45
45
  };
46
46
  export type Uuid = string;
47
+ export type CreateStorageProvider = unknown & {
48
+ name: string;
49
+ endpoint: string;
50
+ region: string;
51
+ force_path_style?: boolean;
52
+ public_bucket?: string;
53
+ private_bucket?: string;
54
+ public_base_url?: string;
55
+ inheritable?: boolean;
56
+ /**
57
+ * Installation-scoped opt-in for local or private-network S3 endpoints.
58
+ */
59
+ allow_private_endpoint?: boolean;
60
+ max_object_bytes?: number;
61
+ max_email_image_bytes?: number;
62
+ max_application_bytes?: number;
63
+ max_application_objects?: number;
64
+ };
65
+ export type CreateStorageUpload = {
66
+ filename: string;
67
+ content_type: string;
68
+ size_bytes: number;
69
+ visibility: 'public' | 'private';
70
+ purpose?: 'email_image';
71
+ metadata?: {
72
+ [key: string]: unknown;
73
+ };
74
+ };
75
+ export type StorageObject = {
76
+ id: Uuid;
77
+ application_id?: string | null;
78
+ provider_id: Uuid;
79
+ owner_type: 'installation' | 'application' | 'user' | 'workspace';
80
+ owner_id?: string | null;
81
+ visibility: 'public' | 'private';
82
+ filename: string;
83
+ content_type: string;
84
+ size_bytes: number;
85
+ etag?: string | null;
86
+ metadata: {
87
+ [key: string]: unknown;
88
+ };
89
+ status: 'pending' | 'ready' | 'deleting' | 'failed';
90
+ public_url?: string | null;
91
+ upload_expires_at?: string | null;
92
+ ready_at?: string | null;
93
+ last_error?: string | null;
94
+ version: number;
95
+ created_at: string;
96
+ updated_at: string;
97
+ };
98
+ export type StorageUploadAuthorization = {
99
+ object: StorageObject;
100
+ upload_expires_at: string;
101
+ required_headers: {
102
+ [key: string]: string;
103
+ };
104
+ };
105
+ export type RuntimeStorageConfig = {
106
+ public_uploads_enabled: boolean;
107
+ private_uploads_enabled: boolean;
108
+ max_public_object_bytes?: number;
109
+ max_private_object_bytes?: number;
110
+ max_email_image_bytes?: number;
111
+ public_provider_scope?: 'installation' | 'organization' | 'application';
112
+ private_provider_scope?: 'installation' | 'organization' | 'application';
113
+ };
47
114
  /**
48
115
  * Canonical BCP 47 language tag such as en, de-CH, or pt-BR. Empty means no user preference.
49
116
  */
@@ -108,6 +175,7 @@ export type RuntimeConfig = {
108
175
  [key: string]: unknown;
109
176
  };
110
177
  auth: RuntimeAuthConfig;
178
+ storage: RuntimeStorageConfig;
111
179
  };
112
180
  export type PasswordSignIn = {
113
181
  email: string;
@@ -374,6 +442,34 @@ export type CreateCheckout = {
374
442
  success_uri: string;
375
443
  cancel_uri: string;
376
444
  };
445
+ export type CreateStorageProviderWritable = unknown & {
446
+ name: string;
447
+ endpoint: string;
448
+ region: string;
449
+ access_key_id: string;
450
+ secret_access_key: string;
451
+ force_path_style?: boolean;
452
+ public_bucket?: string;
453
+ private_bucket?: string;
454
+ public_base_url?: string;
455
+ inheritable?: boolean;
456
+ /**
457
+ * Installation-scoped opt-in for local or private-network S3 endpoints.
458
+ */
459
+ allow_private_endpoint?: boolean;
460
+ max_object_bytes?: number;
461
+ max_email_image_bytes?: number;
462
+ max_application_bytes?: number;
463
+ max_application_objects?: number;
464
+ };
465
+ export type StorageUploadAuthorizationWritable = {
466
+ object: StorageObject;
467
+ upload_url: string;
468
+ upload_expires_at: string;
469
+ required_headers: {
470
+ [key: string]: string;
471
+ };
472
+ };
377
473
  export type BootstrapRequestWritable = {
378
474
  credential: string;
379
475
  email: string;
@@ -415,6 +511,16 @@ export type CreateBillingProviderWritable = {
415
511
  inheritable?: boolean;
416
512
  };
417
513
  export type ApplicationId = Uuid;
514
+ export type WorkspaceId = Uuid;
515
+ export type ObjectId = Uuid;
516
+ /**
517
+ * Required when disabling a provider pinned by live objects.
518
+ */
519
+ export type ConfirmAffectedObjects = boolean;
520
+ /**
521
+ * Break managed email-template references; requires X-Audit-Reason.
522
+ */
523
+ export type ForceDelete = boolean;
418
524
  /**
419
525
  * Explicit accessible workspace whose grants are merged with the current user's grants.
420
526
  */
@@ -476,6 +582,8 @@ export type SmtpProvider = {
476
582
  sender_name?: string;
477
583
  inheritable?: boolean;
478
584
  };
585
+ export type StorageProvider = CreateStorageProviderWritable;
586
+ export type StorageUpload = CreateStorageUpload;
479
587
  export type OAuthAuthorizationDecision = {
480
588
  client_id: string;
481
589
  redirect_uri: string;
@@ -5779,6 +5887,898 @@ export type UpdateMyNotificationPreferenceResponses = {
5779
5887
  204: void;
5780
5888
  };
5781
5889
  export type UpdateMyNotificationPreferenceResponse = UpdateMyNotificationPreferenceResponses[keyof UpdateMyNotificationPreferenceResponses];
5890
+ export type ListInstallationStorageProvidersData = {
5891
+ body?: never;
5892
+ path?: never;
5893
+ query?: never;
5894
+ url: '/v1/control/installation/storage/providers';
5895
+ };
5896
+ export type ListInstallationStorageProvidersResponses = {
5897
+ /**
5898
+ * Cursor page
5899
+ */
5900
+ 200: Page;
5901
+ };
5902
+ export type ListInstallationStorageProvidersResponse = ListInstallationStorageProvidersResponses[keyof ListInstallationStorageProvidersResponses];
5903
+ export type CreateInstallationStorageProviderData = {
5904
+ body: StorageProvider;
5905
+ path?: never;
5906
+ query?: never;
5907
+ url: '/v1/control/installation/storage/providers';
5908
+ };
5909
+ export type CreateInstallationStorageProviderResponses = {
5910
+ /**
5911
+ * Storage provider stored without exposing credentials
5912
+ */
5913
+ 201: unknown;
5914
+ };
5915
+ export type DisableInstallationStorageProviderData = {
5916
+ body?: never;
5917
+ path: {
5918
+ provider_id: Uuid;
5919
+ };
5920
+ query?: {
5921
+ /**
5922
+ * Required when disabling a provider pinned by live objects.
5923
+ */
5924
+ confirm_affected_objects?: boolean;
5925
+ };
5926
+ url: '/v1/control/installation/storage/providers/{provider_id}';
5927
+ };
5928
+ export type DisableInstallationStorageProviderErrors = {
5929
+ /**
5930
+ * RFC 9457 problem
5931
+ */
5932
+ 409: Problem;
5933
+ };
5934
+ export type DisableInstallationStorageProviderError = DisableInstallationStorageProviderErrors[keyof DisableInstallationStorageProviderErrors];
5935
+ export type DisableInstallationStorageProviderResponses = {
5936
+ /**
5937
+ * Provider disabled in Platform93
5938
+ */
5939
+ 204: void;
5940
+ };
5941
+ export type DisableInstallationStorageProviderResponse = DisableInstallationStorageProviderResponses[keyof DisableInstallationStorageProviderResponses];
5942
+ export type GetInstallationStorageProviderData = {
5943
+ body?: never;
5944
+ path: {
5945
+ provider_id: Uuid;
5946
+ };
5947
+ query?: never;
5948
+ url: '/v1/control/installation/storage/providers/{provider_id}';
5949
+ };
5950
+ export type GetInstallationStorageProviderResponses = {
5951
+ /**
5952
+ * Secret-free storage provider
5953
+ */
5954
+ 200: unknown;
5955
+ };
5956
+ export type UpdateInstallationStorageProviderData = {
5957
+ body: Object;
5958
+ path: {
5959
+ provider_id: Uuid;
5960
+ };
5961
+ query?: never;
5962
+ url: '/v1/control/installation/storage/providers/{provider_id}';
5963
+ };
5964
+ export type UpdateInstallationStorageProviderResponses = {
5965
+ /**
5966
+ * Storage provider updated and marked unverified
5967
+ */
5968
+ 200: unknown;
5969
+ };
5970
+ export type VerifyInstallationStorageProviderData = {
5971
+ body?: never;
5972
+ path: {
5973
+ provider_id: Uuid;
5974
+ };
5975
+ query?: never;
5976
+ url: '/v1/control/installation/storage/providers/{provider_id}/verify';
5977
+ };
5978
+ export type VerifyInstallationStorageProviderErrors = {
5979
+ /**
5980
+ * RFC 9457 problem
5981
+ */
5982
+ 502: Problem;
5983
+ };
5984
+ export type VerifyInstallationStorageProviderError = VerifyInstallationStorageProviderErrors[keyof VerifyInstallationStorageProviderErrors];
5985
+ export type VerifyInstallationStorageProviderResponses = {
5986
+ /**
5987
+ * Credentials and bucket visibility verified
5988
+ */
5989
+ 204: void;
5990
+ };
5991
+ export type VerifyInstallationStorageProviderResponse = VerifyInstallationStorageProviderResponses[keyof VerifyInstallationStorageProviderResponses];
5992
+ export type EnableInstallationStorageProviderData = {
5993
+ body?: never;
5994
+ path: {
5995
+ provider_id: Uuid;
5996
+ };
5997
+ query?: never;
5998
+ url: '/v1/control/installation/storage/providers/{provider_id}/enable';
5999
+ };
6000
+ export type EnableInstallationStorageProviderResponses = {
6001
+ /**
6002
+ * Provider re-enabled
6003
+ */
6004
+ 200: unknown;
6005
+ };
6006
+ export type ListOrganizationStorageProvidersData = {
6007
+ body?: never;
6008
+ path: {
6009
+ organization_id: Uuid;
6010
+ };
6011
+ query?: never;
6012
+ url: '/v1/control/organizations/{organization_id}/storage/providers';
6013
+ };
6014
+ export type ListOrganizationStorageProvidersResponses = {
6015
+ /**
6016
+ * Cursor page
6017
+ */
6018
+ 200: Page;
6019
+ };
6020
+ export type ListOrganizationStorageProvidersResponse = ListOrganizationStorageProvidersResponses[keyof ListOrganizationStorageProvidersResponses];
6021
+ export type CreateOrganizationStorageProviderData = {
6022
+ body: StorageProvider;
6023
+ path: {
6024
+ organization_id: Uuid;
6025
+ };
6026
+ query?: never;
6027
+ url: '/v1/control/organizations/{organization_id}/storage/providers';
6028
+ };
6029
+ export type CreateOrganizationStorageProviderResponses = {
6030
+ /**
6031
+ * Organization storage override stored
6032
+ */
6033
+ 201: unknown;
6034
+ };
6035
+ export type DisableOrganizationStorageProviderData = {
6036
+ body?: never;
6037
+ path: {
6038
+ organization_id: Uuid;
6039
+ provider_id: Uuid;
6040
+ };
6041
+ query?: {
6042
+ /**
6043
+ * Required when disabling a provider pinned by live objects.
6044
+ */
6045
+ confirm_affected_objects?: boolean;
6046
+ };
6047
+ url: '/v1/control/organizations/{organization_id}/storage/providers/{provider_id}';
6048
+ };
6049
+ export type DisableOrganizationStorageProviderErrors = {
6050
+ /**
6051
+ * RFC 9457 problem
6052
+ */
6053
+ 409: Problem;
6054
+ };
6055
+ export type DisableOrganizationStorageProviderError = DisableOrganizationStorageProviderErrors[keyof DisableOrganizationStorageProviderErrors];
6056
+ export type DisableOrganizationStorageProviderResponses = {
6057
+ /**
6058
+ * Provider disabled in Platform93
6059
+ */
6060
+ 204: void;
6061
+ };
6062
+ export type DisableOrganizationStorageProviderResponse = DisableOrganizationStorageProviderResponses[keyof DisableOrganizationStorageProviderResponses];
6063
+ export type GetOrganizationStorageProviderData = {
6064
+ body?: never;
6065
+ path: {
6066
+ organization_id: Uuid;
6067
+ provider_id: Uuid;
6068
+ };
6069
+ query?: never;
6070
+ url: '/v1/control/organizations/{organization_id}/storage/providers/{provider_id}';
6071
+ };
6072
+ export type GetOrganizationStorageProviderResponses = {
6073
+ /**
6074
+ * Secret-free storage provider
6075
+ */
6076
+ 200: unknown;
6077
+ };
6078
+ export type UpdateOrganizationStorageProviderData = {
6079
+ body: Object;
6080
+ path: {
6081
+ organization_id: Uuid;
6082
+ provider_id: Uuid;
6083
+ };
6084
+ query?: never;
6085
+ url: '/v1/control/organizations/{organization_id}/storage/providers/{provider_id}';
6086
+ };
6087
+ export type UpdateOrganizationStorageProviderResponses = {
6088
+ /**
6089
+ * Storage provider updated and marked unverified
6090
+ */
6091
+ 200: unknown;
6092
+ };
6093
+ export type VerifyOrganizationStorageProviderData = {
6094
+ body?: never;
6095
+ path: {
6096
+ organization_id: Uuid;
6097
+ provider_id: Uuid;
6098
+ };
6099
+ query?: never;
6100
+ url: '/v1/control/organizations/{organization_id}/storage/providers/{provider_id}/verify';
6101
+ };
6102
+ export type VerifyOrganizationStorageProviderResponses = {
6103
+ /**
6104
+ * Credentials and bucket visibility verified
6105
+ */
6106
+ 204: void;
6107
+ };
6108
+ export type VerifyOrganizationStorageProviderResponse = VerifyOrganizationStorageProviderResponses[keyof VerifyOrganizationStorageProviderResponses];
6109
+ export type EnableOrganizationStorageProviderData = {
6110
+ body?: never;
6111
+ path: {
6112
+ organization_id: Uuid;
6113
+ provider_id: Uuid;
6114
+ };
6115
+ query?: never;
6116
+ url: '/v1/control/organizations/{organization_id}/storage/providers/{provider_id}/enable';
6117
+ };
6118
+ export type EnableOrganizationStorageProviderResponses = {
6119
+ /**
6120
+ * Provider re-enabled
6121
+ */
6122
+ 200: unknown;
6123
+ };
6124
+ export type ListApplicationStorageProvidersData = {
6125
+ body?: never;
6126
+ path: {
6127
+ application_id: Uuid;
6128
+ };
6129
+ query?: never;
6130
+ url: '/v1/control/applications/{application_id}/storage/providers';
6131
+ };
6132
+ export type ListApplicationStorageProvidersResponses = {
6133
+ /**
6134
+ * Cursor page
6135
+ */
6136
+ 200: Page;
6137
+ };
6138
+ export type ListApplicationStorageProvidersResponse = ListApplicationStorageProvidersResponses[keyof ListApplicationStorageProvidersResponses];
6139
+ export type CreateApplicationStorageProviderData = {
6140
+ body: StorageProvider;
6141
+ path: {
6142
+ application_id: Uuid;
6143
+ };
6144
+ query?: never;
6145
+ url: '/v1/control/applications/{application_id}/storage/providers';
6146
+ };
6147
+ export type CreateApplicationStorageProviderResponses = {
6148
+ /**
6149
+ * Application storage override stored
6150
+ */
6151
+ 201: unknown;
6152
+ };
6153
+ export type DisableApplicationStorageProviderData = {
6154
+ body?: never;
6155
+ path: {
6156
+ application_id: Uuid;
6157
+ provider_id: Uuid;
6158
+ };
6159
+ query?: {
6160
+ /**
6161
+ * Required when disabling a provider pinned by live objects.
6162
+ */
6163
+ confirm_affected_objects?: boolean;
6164
+ };
6165
+ url: '/v1/control/applications/{application_id}/storage/providers/{provider_id}';
6166
+ };
6167
+ export type DisableApplicationStorageProviderErrors = {
6168
+ /**
6169
+ * RFC 9457 problem
6170
+ */
6171
+ 409: Problem;
6172
+ };
6173
+ export type DisableApplicationStorageProviderError = DisableApplicationStorageProviderErrors[keyof DisableApplicationStorageProviderErrors];
6174
+ export type DisableApplicationStorageProviderResponses = {
6175
+ /**
6176
+ * Provider disabled in Platform93
6177
+ */
6178
+ 204: void;
6179
+ };
6180
+ export type DisableApplicationStorageProviderResponse = DisableApplicationStorageProviderResponses[keyof DisableApplicationStorageProviderResponses];
6181
+ export type GetApplicationStorageProviderData = {
6182
+ body?: never;
6183
+ path: {
6184
+ application_id: Uuid;
6185
+ provider_id: Uuid;
6186
+ };
6187
+ query?: never;
6188
+ url: '/v1/control/applications/{application_id}/storage/providers/{provider_id}';
6189
+ };
6190
+ export type GetApplicationStorageProviderResponses = {
6191
+ /**
6192
+ * Secret-free storage provider
6193
+ */
6194
+ 200: unknown;
6195
+ };
6196
+ export type UpdateApplicationStorageProviderData = {
6197
+ body: Object;
6198
+ path: {
6199
+ application_id: Uuid;
6200
+ provider_id: Uuid;
6201
+ };
6202
+ query?: never;
6203
+ url: '/v1/control/applications/{application_id}/storage/providers/{provider_id}';
6204
+ };
6205
+ export type UpdateApplicationStorageProviderResponses = {
6206
+ /**
6207
+ * Storage provider updated and marked unverified
6208
+ */
6209
+ 200: unknown;
6210
+ };
6211
+ export type VerifyApplicationStorageProviderData = {
6212
+ body?: never;
6213
+ path: {
6214
+ application_id: Uuid;
6215
+ provider_id: Uuid;
6216
+ };
6217
+ query?: never;
6218
+ url: '/v1/control/applications/{application_id}/storage/providers/{provider_id}/verify';
6219
+ };
6220
+ export type VerifyApplicationStorageProviderResponses = {
6221
+ /**
6222
+ * Credentials and bucket visibility verified
6223
+ */
6224
+ 204: void;
6225
+ };
6226
+ export type VerifyApplicationStorageProviderResponse = VerifyApplicationStorageProviderResponses[keyof VerifyApplicationStorageProviderResponses];
6227
+ export type EnableApplicationStorageProviderData = {
6228
+ body?: never;
6229
+ path: {
6230
+ application_id: Uuid;
6231
+ provider_id: Uuid;
6232
+ };
6233
+ query?: never;
6234
+ url: '/v1/control/applications/{application_id}/storage/providers/{provider_id}/enable';
6235
+ };
6236
+ export type EnableApplicationStorageProviderResponses = {
6237
+ /**
6238
+ * Provider re-enabled
6239
+ */
6240
+ 200: unknown;
6241
+ };
6242
+ export type CreateInstallationStorageUploadData = {
6243
+ body: StorageUpload;
6244
+ headers: {
6245
+ 'Idempotency-Key': string;
6246
+ };
6247
+ path?: never;
6248
+ query?: never;
6249
+ url: '/v1/control/installation/storage/uploads';
6250
+ };
6251
+ export type CreateInstallationStorageUploadResponses = {
6252
+ /**
6253
+ * Presigned installation asset upload
6254
+ */
6255
+ 201: StorageUploadAuthorization;
6256
+ };
6257
+ export type CreateInstallationStorageUploadResponse = CreateInstallationStorageUploadResponses[keyof CreateInstallationStorageUploadResponses];
6258
+ export type CompleteInstallationStorageUploadData = {
6259
+ body?: never;
6260
+ path: {
6261
+ object_id: Uuid;
6262
+ };
6263
+ query?: never;
6264
+ url: '/v1/control/installation/storage/uploads/{object_id}/complete';
6265
+ };
6266
+ export type CompleteInstallationStorageUploadResponses = {
6267
+ /**
6268
+ * Upload verified
6269
+ */
6270
+ 200: unknown;
6271
+ };
6272
+ export type ListInstallationStorageObjectsData = {
6273
+ body?: never;
6274
+ path?: never;
6275
+ query?: never;
6276
+ url: '/v1/control/installation/storage/objects';
6277
+ };
6278
+ export type ListInstallationStorageObjectsResponses = {
6279
+ /**
6280
+ * Cursor page
6281
+ */
6282
+ 200: Page;
6283
+ };
6284
+ export type ListInstallationStorageObjectsResponse = ListInstallationStorageObjectsResponses[keyof ListInstallationStorageObjectsResponses];
6285
+ export type DeleteInstallationStorageObjectData = {
6286
+ body?: never;
6287
+ path: {
6288
+ object_id: Uuid;
6289
+ };
6290
+ query?: {
6291
+ /**
6292
+ * Break managed email-template references; requires X-Audit-Reason.
6293
+ */
6294
+ force?: boolean;
6295
+ };
6296
+ url: '/v1/control/installation/storage/objects/{object_id}';
6297
+ };
6298
+ export type DeleteInstallationStorageObjectResponses = {
6299
+ /**
6300
+ * Deletion queued
6301
+ */
6302
+ 204: void;
6303
+ };
6304
+ export type DeleteInstallationStorageObjectResponse = DeleteInstallationStorageObjectResponses[keyof DeleteInstallationStorageObjectResponses];
6305
+ export type GetInstallationStorageObjectData = {
6306
+ body?: never;
6307
+ path: {
6308
+ object_id: Uuid;
6309
+ };
6310
+ query?: never;
6311
+ url: '/v1/control/installation/storage/objects/{object_id}';
6312
+ };
6313
+ export type GetInstallationStorageObjectResponses = {
6314
+ /**
6315
+ * Installation asset metadata
6316
+ */
6317
+ 200: unknown;
6318
+ };
6319
+ export type DownloadInstallationStorageObjectData = {
6320
+ body?: never;
6321
+ path: {
6322
+ object_id: Uuid;
6323
+ };
6324
+ query?: never;
6325
+ url: '/v1/control/installation/storage/objects/{object_id}/download';
6326
+ };
6327
+ export type DownloadInstallationStorageObjectResponses = {
6328
+ /**
6329
+ * Public or short-lived private URL
6330
+ */
6331
+ 200: unknown;
6332
+ };
6333
+ export type ListOrganizationStorageObjectsData = {
6334
+ body?: never;
6335
+ path: {
6336
+ organization_id: Uuid;
6337
+ };
6338
+ query?: never;
6339
+ url: '/v1/control/organizations/{organization_id}/storage/objects';
6340
+ };
6341
+ export type ListOrganizationStorageObjectsResponses = {
6342
+ /**
6343
+ * Cursor page
6344
+ */
6345
+ 200: Page;
6346
+ };
6347
+ export type ListOrganizationStorageObjectsResponse = ListOrganizationStorageObjectsResponses[keyof ListOrganizationStorageObjectsResponses];
6348
+ export type DeleteOrganizationStorageObjectData = {
6349
+ body?: never;
6350
+ path: {
6351
+ organization_id: Uuid;
6352
+ object_id: Uuid;
6353
+ };
6354
+ query?: {
6355
+ /**
6356
+ * Break managed email-template references; requires X-Audit-Reason.
6357
+ */
6358
+ force?: boolean;
6359
+ };
6360
+ url: '/v1/control/organizations/{organization_id}/storage/objects/{object_id}';
6361
+ };
6362
+ export type DeleteOrganizationStorageObjectResponses = {
6363
+ /**
6364
+ * Deletion queued
6365
+ */
6366
+ 204: void;
6367
+ };
6368
+ export type DeleteOrganizationStorageObjectResponse = DeleteOrganizationStorageObjectResponses[keyof DeleteOrganizationStorageObjectResponses];
6369
+ export type GetOrganizationStorageObjectData = {
6370
+ body?: never;
6371
+ path: {
6372
+ organization_id: Uuid;
6373
+ object_id: Uuid;
6374
+ };
6375
+ query?: never;
6376
+ url: '/v1/control/organizations/{organization_id}/storage/objects/{object_id}';
6377
+ };
6378
+ export type GetOrganizationStorageObjectResponses = {
6379
+ /**
6380
+ * Organization object metadata
6381
+ */
6382
+ 200: unknown;
6383
+ };
6384
+ export type DownloadOrganizationStorageObjectData = {
6385
+ body?: never;
6386
+ path: {
6387
+ organization_id: Uuid;
6388
+ object_id: Uuid;
6389
+ };
6390
+ query?: never;
6391
+ url: '/v1/control/organizations/{organization_id}/storage/objects/{object_id}/download';
6392
+ };
6393
+ export type DownloadOrganizationStorageObjectResponses = {
6394
+ /**
6395
+ * Public or short-lived private URL
6396
+ */
6397
+ 200: unknown;
6398
+ };
6399
+ export type CreateControlApplicationStorageUploadData = {
6400
+ body: StorageUpload;
6401
+ headers: {
6402
+ 'Idempotency-Key': string;
6403
+ };
6404
+ path: {
6405
+ application_id: Uuid;
6406
+ };
6407
+ query?: never;
6408
+ url: '/v1/control/applications/{application_id}/storage/uploads';
6409
+ };
6410
+ export type CreateControlApplicationStorageUploadResponses = {
6411
+ /**
6412
+ * Presigned application asset upload
6413
+ */
6414
+ 201: unknown;
6415
+ };
6416
+ export type CompleteControlApplicationStorageUploadData = {
6417
+ body?: never;
6418
+ path: {
6419
+ application_id: Uuid;
6420
+ object_id: Uuid;
6421
+ };
6422
+ query?: never;
6423
+ url: '/v1/control/applications/{application_id}/storage/uploads/{object_id}/complete';
6424
+ };
6425
+ export type CompleteControlApplicationStorageUploadResponses = {
6426
+ /**
6427
+ * Upload verified
6428
+ */
6429
+ 200: unknown;
6430
+ };
6431
+ export type ListControlApplicationStorageObjectsData = {
6432
+ body?: never;
6433
+ path: {
6434
+ application_id: Uuid;
6435
+ };
6436
+ query?: never;
6437
+ url: '/v1/control/applications/{application_id}/storage/objects';
6438
+ };
6439
+ export type ListControlApplicationStorageObjectsResponses = {
6440
+ /**
6441
+ * Cursor page
6442
+ */
6443
+ 200: Page;
6444
+ };
6445
+ export type ListControlApplicationStorageObjectsResponse = ListControlApplicationStorageObjectsResponses[keyof ListControlApplicationStorageObjectsResponses];
6446
+ export type DeleteControlApplicationStorageObjectData = {
6447
+ body?: never;
6448
+ path: {
6449
+ application_id: Uuid;
6450
+ object_id: Uuid;
6451
+ };
6452
+ query?: {
6453
+ /**
6454
+ * Break managed email-template references; requires X-Audit-Reason.
6455
+ */
6456
+ force?: boolean;
6457
+ };
6458
+ url: '/v1/control/applications/{application_id}/storage/objects/{object_id}';
6459
+ };
6460
+ export type DeleteControlApplicationStorageObjectResponses = {
6461
+ /**
6462
+ * Deletion queued
6463
+ */
6464
+ 204: void;
6465
+ };
6466
+ export type DeleteControlApplicationStorageObjectResponse = DeleteControlApplicationStorageObjectResponses[keyof DeleteControlApplicationStorageObjectResponses];
6467
+ export type GetControlApplicationStorageObjectData = {
6468
+ body?: never;
6469
+ path: {
6470
+ application_id: Uuid;
6471
+ object_id: Uuid;
6472
+ };
6473
+ query?: never;
6474
+ url: '/v1/control/applications/{application_id}/storage/objects/{object_id}';
6475
+ };
6476
+ export type GetControlApplicationStorageObjectResponses = {
6477
+ /**
6478
+ * Application object metadata
6479
+ */
6480
+ 200: unknown;
6481
+ };
6482
+ export type DownloadControlApplicationStorageObjectData = {
6483
+ body?: never;
6484
+ path: {
6485
+ application_id: Uuid;
6486
+ object_id: Uuid;
6487
+ };
6488
+ query?: never;
6489
+ url: '/v1/control/applications/{application_id}/storage/objects/{object_id}/download';
6490
+ };
6491
+ export type DownloadControlApplicationStorageObjectResponses = {
6492
+ /**
6493
+ * Public or short-lived private URL
6494
+ */
6495
+ 200: unknown;
6496
+ };
6497
+ export type CreateApplicationStorageUploadData = {
6498
+ body: StorageUpload;
6499
+ headers: {
6500
+ 'Idempotency-Key': string;
6501
+ };
6502
+ path: {
6503
+ application_id: Uuid;
6504
+ };
6505
+ query?: never;
6506
+ url: '/v1/applications/{application_id}/storage/uploads';
6507
+ };
6508
+ export type CreateApplicationStorageUploadResponses = {
6509
+ /**
6510
+ * Presigned application-owned upload
6511
+ */
6512
+ 201: unknown;
6513
+ };
6514
+ export type CompleteApplicationStorageUploadData = {
6515
+ body?: never;
6516
+ path: {
6517
+ application_id: Uuid;
6518
+ object_id: Uuid;
6519
+ };
6520
+ query?: never;
6521
+ url: '/v1/applications/{application_id}/storage/uploads/{object_id}/complete';
6522
+ };
6523
+ export type CompleteApplicationStorageUploadResponses = {
6524
+ /**
6525
+ * Upload verified
6526
+ */
6527
+ 200: unknown;
6528
+ };
6529
+ export type ListApplicationStorageObjectsData = {
6530
+ body?: never;
6531
+ path: {
6532
+ application_id: Uuid;
6533
+ };
6534
+ query?: never;
6535
+ url: '/v1/applications/{application_id}/storage/objects';
6536
+ };
6537
+ export type ListApplicationStorageObjectsResponses = {
6538
+ /**
6539
+ * Cursor page
6540
+ */
6541
+ 200: Page;
6542
+ };
6543
+ export type ListApplicationStorageObjectsResponse = ListApplicationStorageObjectsResponses[keyof ListApplicationStorageObjectsResponses];
6544
+ export type DeleteApplicationStorageObjectData = {
6545
+ body?: never;
6546
+ path: {
6547
+ application_id: Uuid;
6548
+ object_id: Uuid;
6549
+ };
6550
+ query?: never;
6551
+ url: '/v1/applications/{application_id}/storage/objects/{object_id}';
6552
+ };
6553
+ export type DeleteApplicationStorageObjectResponses = {
6554
+ /**
6555
+ * Deletion queued
6556
+ */
6557
+ 204: void;
6558
+ };
6559
+ export type DeleteApplicationStorageObjectResponse = DeleteApplicationStorageObjectResponses[keyof DeleteApplicationStorageObjectResponses];
6560
+ export type GetApplicationStorageObjectData = {
6561
+ body?: never;
6562
+ path: {
6563
+ application_id: Uuid;
6564
+ object_id: Uuid;
6565
+ };
6566
+ query?: never;
6567
+ url: '/v1/applications/{application_id}/storage/objects/{object_id}';
6568
+ };
6569
+ export type GetApplicationStorageObjectResponses = {
6570
+ /**
6571
+ * Application object metadata
6572
+ */
6573
+ 200: unknown;
6574
+ };
6575
+ export type DownloadApplicationStorageObjectData = {
6576
+ body?: never;
6577
+ path: {
6578
+ application_id: Uuid;
6579
+ object_id: Uuid;
6580
+ };
6581
+ query?: never;
6582
+ url: '/v1/applications/{application_id}/storage/objects/{object_id}/download';
6583
+ };
6584
+ export type DownloadApplicationStorageObjectResponses = {
6585
+ /**
6586
+ * Public or short-lived private URL
6587
+ */
6588
+ 200: unknown;
6589
+ };
6590
+ export type CreateMyStorageUploadData = {
6591
+ body: StorageUpload;
6592
+ headers: {
6593
+ 'Idempotency-Key': string;
6594
+ };
6595
+ path: {
6596
+ application_id: Uuid;
6597
+ };
6598
+ query?: never;
6599
+ url: '/v1/applications/{application_id}/me/storage/uploads';
6600
+ };
6601
+ export type CreateMyStorageUploadResponses = {
6602
+ /**
6603
+ * Presigned user-owned upload
6604
+ */
6605
+ 201: unknown;
6606
+ };
6607
+ export type CompleteMyStorageUploadData = {
6608
+ body?: never;
6609
+ path: {
6610
+ application_id: Uuid;
6611
+ object_id: Uuid;
6612
+ };
6613
+ query?: never;
6614
+ url: '/v1/applications/{application_id}/me/storage/uploads/{object_id}/complete';
6615
+ };
6616
+ export type CompleteMyStorageUploadResponses = {
6617
+ /**
6618
+ * Upload verified
6619
+ */
6620
+ 200: unknown;
6621
+ };
6622
+ export type ListMyStorageObjectsData = {
6623
+ body?: never;
6624
+ path: {
6625
+ application_id: Uuid;
6626
+ };
6627
+ query?: never;
6628
+ url: '/v1/applications/{application_id}/me/storage/objects';
6629
+ };
6630
+ export type ListMyStorageObjectsResponses = {
6631
+ /**
6632
+ * Cursor page
6633
+ */
6634
+ 200: Page;
6635
+ };
6636
+ export type ListMyStorageObjectsResponse = ListMyStorageObjectsResponses[keyof ListMyStorageObjectsResponses];
6637
+ export type DeleteMyStorageObjectData = {
6638
+ body?: never;
6639
+ path: {
6640
+ application_id: Uuid;
6641
+ object_id: Uuid;
6642
+ };
6643
+ query?: never;
6644
+ url: '/v1/applications/{application_id}/me/storage/objects/{object_id}';
6645
+ };
6646
+ export type DeleteMyStorageObjectResponses = {
6647
+ /**
6648
+ * Deletion queued
6649
+ */
6650
+ 204: void;
6651
+ };
6652
+ export type DeleteMyStorageObjectResponse = DeleteMyStorageObjectResponses[keyof DeleteMyStorageObjectResponses];
6653
+ export type GetMyStorageObjectData = {
6654
+ body?: never;
6655
+ path: {
6656
+ application_id: Uuid;
6657
+ object_id: Uuid;
6658
+ };
6659
+ query?: never;
6660
+ url: '/v1/applications/{application_id}/me/storage/objects/{object_id}';
6661
+ };
6662
+ export type GetMyStorageObjectResponses = {
6663
+ /**
6664
+ * User object metadata
6665
+ */
6666
+ 200: unknown;
6667
+ };
6668
+ export type DownloadMyStorageObjectData = {
6669
+ body?: never;
6670
+ path: {
6671
+ application_id: Uuid;
6672
+ object_id: Uuid;
6673
+ };
6674
+ query?: never;
6675
+ url: '/v1/applications/{application_id}/me/storage/objects/{object_id}/download';
6676
+ };
6677
+ export type DownloadMyStorageObjectResponses = {
6678
+ /**
6679
+ * Public or short-lived private URL
6680
+ */
6681
+ 200: unknown;
6682
+ };
6683
+ export type CreateWorkspaceStorageUploadData = {
6684
+ body: StorageUpload;
6685
+ headers: {
6686
+ 'Idempotency-Key': string;
6687
+ };
6688
+ path: {
6689
+ application_id: Uuid;
6690
+ workspace_id: Uuid;
6691
+ };
6692
+ query?: never;
6693
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/uploads';
6694
+ };
6695
+ export type CreateWorkspaceStorageUploadResponses = {
6696
+ /**
6697
+ * Presigned workspace-owned upload
6698
+ */
6699
+ 201: unknown;
6700
+ };
6701
+ export type CompleteWorkspaceStorageUploadData = {
6702
+ body?: never;
6703
+ path: {
6704
+ application_id: Uuid;
6705
+ workspace_id: Uuid;
6706
+ object_id: Uuid;
6707
+ };
6708
+ query?: never;
6709
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/uploads/{object_id}/complete';
6710
+ };
6711
+ export type CompleteWorkspaceStorageUploadResponses = {
6712
+ /**
6713
+ * Upload verified
6714
+ */
6715
+ 200: unknown;
6716
+ };
6717
+ export type ListWorkspaceStorageObjectsData = {
6718
+ body?: never;
6719
+ path: {
6720
+ application_id: Uuid;
6721
+ workspace_id: Uuid;
6722
+ };
6723
+ query?: never;
6724
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/objects';
6725
+ };
6726
+ export type ListWorkspaceStorageObjectsResponses = {
6727
+ /**
6728
+ * Cursor page
6729
+ */
6730
+ 200: Page;
6731
+ };
6732
+ export type ListWorkspaceStorageObjectsResponse = ListWorkspaceStorageObjectsResponses[keyof ListWorkspaceStorageObjectsResponses];
6733
+ export type DeleteWorkspaceStorageObjectData = {
6734
+ body?: never;
6735
+ path: {
6736
+ application_id: Uuid;
6737
+ workspace_id: Uuid;
6738
+ object_id: Uuid;
6739
+ };
6740
+ query?: never;
6741
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/objects/{object_id}';
6742
+ };
6743
+ export type DeleteWorkspaceStorageObjectResponses = {
6744
+ /**
6745
+ * Deletion queued
6746
+ */
6747
+ 204: void;
6748
+ };
6749
+ export type DeleteWorkspaceStorageObjectResponse = DeleteWorkspaceStorageObjectResponses[keyof DeleteWorkspaceStorageObjectResponses];
6750
+ export type GetWorkspaceStorageObjectData = {
6751
+ body?: never;
6752
+ path: {
6753
+ application_id: Uuid;
6754
+ workspace_id: Uuid;
6755
+ object_id: Uuid;
6756
+ };
6757
+ query?: never;
6758
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/objects/{object_id}';
6759
+ };
6760
+ export type GetWorkspaceStorageObjectResponses = {
6761
+ /**
6762
+ * Workspace object metadata
6763
+ */
6764
+ 200: unknown;
6765
+ };
6766
+ export type DownloadWorkspaceStorageObjectData = {
6767
+ body?: never;
6768
+ path: {
6769
+ application_id: Uuid;
6770
+ workspace_id: Uuid;
6771
+ object_id: Uuid;
6772
+ };
6773
+ query?: never;
6774
+ url: '/v1/applications/{application_id}/workspaces/{workspace_id}/storage/objects/{object_id}/download';
6775
+ };
6776
+ export type DownloadWorkspaceStorageObjectResponses = {
6777
+ /**
6778
+ * Public or short-lived private URL
6779
+ */
6780
+ 200: unknown;
6781
+ };
5782
6782
  export type OidcDiscoveryData = {
5783
6783
  body?: never;
5784
6784
  path?: never;