@giveitsmaller/contracts 0.2.3 → 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.
Files changed (397) hide show
  1. package/asyncapi/events.yaml +1777 -172
  2. package/availability/availability.json +2449 -0
  3. package/dist/asyncapi/Failure.d.ts +25 -0
  4. package/dist/asyncapi/Failure.js +1 -0
  5. package/dist/asyncapi/JobInputRole.d.ts +6 -0
  6. package/dist/asyncapi/JobInputRole.js +7 -0
  7. package/dist/asyncapi/MergeOutputType.d.ts +1 -3
  8. package/dist/asyncapi/MergeOutputType.js +0 -2
  9. package/dist/asyncapi/MultiOutputCompletion.d.ts +25 -0
  10. package/dist/asyncapi/MultiOutputCompletion.js +1 -0
  11. package/dist/asyncapi/NotificationsOperationsQueue.d.ts +4 -2
  12. package/dist/asyncapi/OperationMetrics.d.ts +3 -0
  13. package/dist/asyncapi/OperationProgress.d.ts +2 -0
  14. package/dist/asyncapi/OperationResult.d.ts +4 -19
  15. package/dist/asyncapi/OperationType.d.ts +6 -6
  16. package/dist/asyncapi/OperationType.js +5 -5
  17. package/dist/asyncapi/PageIndexed.d.ts +8 -0
  18. package/dist/asyncapi/PageIndexed.js +1 -0
  19. package/dist/asyncapi/PositionIndexed.d.ts +8 -0
  20. package/dist/asyncapi/PositionIndexed.js +1 -0
  21. package/dist/asyncapi/ProgressStatus.d.ts +3 -0
  22. package/dist/asyncapi/ProgressStatus.js +3 -0
  23. package/dist/asyncapi/ReEncodeDecision.d.ts +5 -0
  24. package/dist/asyncapi/ReEncodeDecision.js +6 -0
  25. package/dist/asyncapi/SingleOutputCompletion.d.ts +25 -0
  26. package/dist/asyncapi/SingleOutputCompletion.js +1 -0
  27. package/dist/asyncapi/SourceEntry.d.ts +2 -1
  28. package/dist/asyncapi/Unindexed.d.ts +8 -0
  29. package/dist/asyncapi/Unindexed.js +1 -0
  30. package/dist/asyncapi/UploadProbeCompletion.d.ts +16 -0
  31. package/dist/asyncapi/UploadProbeCompletion.js +1 -0
  32. package/dist/asyncapi/UploadProbeMediaMetadata.d.ts +18 -0
  33. package/dist/asyncapi/UploadProbeMediaMetadata.js +1 -0
  34. package/dist/asyncapi/UploadProbeProcessingClass.d.ts +6 -0
  35. package/dist/asyncapi/UploadProbeProcessingClass.js +7 -0
  36. package/dist/asyncapi/UploadProbeRequest.d.ts +10 -0
  37. package/dist/asyncapi/UploadProbeRequest.js +1 -0
  38. package/dist/asyncapi/UploadProbeStatus.d.ts +7 -0
  39. package/dist/asyncapi/UploadProbeStatus.js +8 -0
  40. package/dist/asyncapi/index.d.ts +13 -0
  41. package/dist/asyncapi/index.js +4 -0
  42. package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +64 -0
  43. package/dist/openapi/models/AudioWatermarkDecodeRequest.js +53 -0
  44. package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +80 -0
  45. package/dist/openapi/models/AudioWatermarkDecodeResponse.js +64 -0
  46. package/dist/openapi/models/AuthErrorResponse.d.ts +135 -0
  47. package/dist/openapi/models/AuthErrorResponse.js +66 -0
  48. package/dist/openapi/models/AuthErrorType.d.ts +73 -0
  49. package/dist/openapi/models/AuthErrorType.js +91 -0
  50. package/dist/openapi/models/AvailabilityValue.d.ts +43 -0
  51. package/dist/openapi/models/AvailabilityValue.js +61 -0
  52. package/dist/openapi/models/BalanceExhaustedResponse.d.ts +176 -0
  53. package/dist/openapi/models/BalanceExhaustedResponse.js +86 -0
  54. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +38 -0
  55. package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +43 -0
  56. package/dist/openapi/models/CallbackEventType.d.ts +2 -2
  57. package/dist/openapi/models/CallbackEventType.js +2 -2
  58. package/dist/openapi/models/ConnectionSource.d.ts +64 -0
  59. package/dist/openapi/models/ConnectionSource.js +57 -0
  60. package/dist/openapi/models/ContactRequest.d.ts +2 -2
  61. package/dist/openapi/models/ContactRequest.js +2 -2
  62. package/dist/openapi/models/ContactSubject.d.ts +2 -2
  63. package/dist/openapi/models/ContactSubject.js +2 -2
  64. package/dist/openapi/models/ContactValidationErrorResponse.d.ts +2 -2
  65. package/dist/openapi/models/ContactValidationErrorResponse.js +2 -2
  66. package/dist/openapi/models/CreateExternalImport403Response.d.ts +24 -0
  67. package/dist/openapi/models/CreateExternalImport403Response.js +58 -0
  68. package/dist/openapi/models/CreateExternalImport422Response.d.ts +23 -0
  69. package/dist/openapi/models/CreateExternalImport422Response.js +51 -0
  70. package/dist/openapi/models/CreateWorkflow422Response.d.ts +24 -0
  71. package/dist/openapi/models/CreateWorkflow422Response.js +58 -0
  72. package/dist/openapi/models/CreditTransaction.d.ts +186 -0
  73. package/dist/openapi/models/CreditTransaction.js +100 -0
  74. package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +46 -0
  75. package/dist/openapi/models/CreditTransactionSourceBucket.js +64 -0
  76. package/dist/openapi/models/CreditsBalanceResponse.d.ts +84 -0
  77. package/dist/openapi/models/CreditsBalanceResponse.js +68 -0
  78. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +46 -0
  79. package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +54 -0
  80. package/dist/openapi/models/CreditsUsageResponse.d.ts +51 -0
  81. package/dist/openapi/models/CreditsUsageResponse.js +56 -0
  82. package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +46 -0
  83. package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +54 -0
  84. package/dist/openapi/models/Delivery.d.ts +98 -0
  85. package/dist/openapi/models/Delivery.js +65 -0
  86. package/dist/openapi/models/DeliveryOutputRef.d.ts +44 -0
  87. package/dist/openapi/models/DeliveryOutputRef.js +45 -0
  88. package/dist/openapi/models/DeliveryPlan.d.ts +77 -0
  89. package/dist/openapi/models/DeliveryPlan.js +72 -0
  90. package/dist/openapi/models/DeliveryPlanOutput.d.ts +53 -0
  91. package/dist/openapi/models/DeliveryPlanOutput.js +52 -0
  92. package/dist/openapi/models/DeliveryPlanReason.d.ts +35 -0
  93. package/dist/openapi/models/DeliveryPlanReason.js +53 -0
  94. package/dist/openapi/models/DeliverySelection.d.ts +62 -0
  95. package/dist/openapi/models/DeliverySelection.js +54 -0
  96. package/dist/openapi/models/ErrorEnvelope.d.ts +102 -5
  97. package/dist/openapi/models/ErrorEnvelope.js +10 -2
  98. package/dist/openapi/models/EstimateQuality.d.ts +34 -0
  99. package/dist/openapi/models/EstimateQuality.js +52 -0
  100. package/dist/openapi/models/EstimateRange.d.ts +48 -0
  101. package/dist/openapi/models/EstimateRange.js +51 -0
  102. package/dist/openapi/models/ExternalDestination.d.ts +41 -0
  103. package/dist/openapi/models/ExternalDestination.js +47 -0
  104. package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +49 -0
  105. package/dist/openapi/models/ExternalImportCreatedResponse.js +51 -0
  106. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +46 -0
  107. package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +54 -0
  108. package/dist/openapi/models/ExternalImportRequest.d.ts +92 -0
  109. package/dist/openapi/models/ExternalImportRequest.js +61 -0
  110. package/dist/openapi/models/ExternalImportToken.d.ts +51 -0
  111. package/dist/openapi/models/ExternalImportToken.js +53 -0
  112. package/dist/openapi/models/ExternalSource.d.ts +31 -0
  113. package/dist/openapi/models/ExternalSource.js +47 -0
  114. package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +163 -0
  115. package/dist/openapi/models/FeatureNotAvailableResponse.js +76 -0
  116. package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +154 -0
  117. package/dist/openapi/models/FeatureTierRestrictedResponse.js +76 -0
  118. package/dist/openapi/models/FeatureViolation.d.ts +108 -0
  119. package/dist/openapi/models/FeatureViolation.js +63 -0
  120. package/dist/openapi/models/JobDefinition.d.ts +125 -14
  121. package/dist/openapi/models/JobDefinition.js +25 -4
  122. package/dist/openapi/models/JobDownload.d.ts +2 -2
  123. package/dist/openapi/models/JobDownload.js +2 -2
  124. package/dist/openapi/models/JobInputV2.d.ts +89 -0
  125. package/dist/openapi/models/JobInputV2.js +56 -0
  126. package/dist/openapi/models/JobOutputSource.d.ts +57 -0
  127. package/dist/openapi/models/JobOutputSource.js +55 -0
  128. package/dist/openapi/models/JobResponse.d.ts +2 -2
  129. package/dist/openapi/models/JobResponse.js +2 -2
  130. package/dist/openapi/models/JobStatus.d.ts +17 -8
  131. package/dist/openapi/models/JobStatus.js +17 -8
  132. package/dist/openapi/models/JobType.d.ts +2 -2
  133. package/dist/openapi/models/JobType.js +2 -2
  134. package/dist/openapi/models/LivenessResponse.d.ts +2 -2
  135. package/dist/openapi/models/LivenessResponse.js +2 -2
  136. package/dist/openapi/models/LoginUser200Response.d.ts +46 -0
  137. package/dist/openapi/models/LoginUser200Response.js +54 -0
  138. package/dist/openapi/models/LoginUser200ResponseData.d.ts +33 -0
  139. package/dist/openapi/models/LoginUser200ResponseData.js +44 -0
  140. package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +50 -0
  141. package/dist/openapi/models/LoginUser200ResponseDataUser.js +51 -0
  142. package/dist/openapi/models/LoginUserRequest.d.ts +38 -0
  143. package/dist/openapi/models/LoginUserRequest.js +47 -0
  144. package/dist/openapi/models/LogoutUser200Response.d.ts +50 -0
  145. package/dist/openapi/models/LogoutUser200Response.js +53 -0
  146. package/dist/openapi/models/MetadataResponse.d.ts +13 -2
  147. package/dist/openapi/models/MetadataResponse.js +6 -2
  148. package/dist/openapi/models/MetadataResponseDimensions.d.ts +2 -2
  149. package/dist/openapi/models/MetadataResponseDimensions.js +2 -2
  150. package/dist/openapi/models/MetadataResponseExif.d.ts +2 -2
  151. package/dist/openapi/models/MetadataResponseExif.js +3 -3
  152. package/dist/openapi/models/MetadataResponseExifGps.d.ts +2 -2
  153. package/dist/openapi/models/MetadataResponseExifGps.js +2 -2
  154. package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +3 -3
  155. package/dist/openapi/models/MetadataSuccessEnvelope.js +2 -2
  156. package/dist/openapi/models/MimeGroupSchema.d.ts +46 -2
  157. package/dist/openapi/models/MimeGroupSchema.js +11 -2
  158. package/dist/openapi/models/MultipartCompleteRequest.d.ts +3 -3
  159. package/dist/openapi/models/MultipartCompleteRequest.js +2 -2
  160. package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +2 -2
  161. package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +2 -2
  162. package/dist/openapi/models/MultipartCompleteResponse.d.ts +7 -4
  163. package/dist/openapi/models/MultipartCompleteResponse.js +2 -2
  164. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +3 -3
  165. package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +2 -2
  166. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +56 -0
  167. package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +45 -0
  168. package/dist/openapi/models/MultipartInitiateResponse.d.ts +38 -6
  169. package/dist/openapi/models/MultipartInitiateResponse.js +7 -2
  170. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +3 -3
  171. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +2 -2
  172. package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +43 -0
  173. package/dist/openapi/models/MultipartKeepaliveResponse.js +47 -0
  174. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +46 -0
  175. package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +54 -0
  176. package/dist/openapi/models/MultipartPartListing.d.ts +59 -0
  177. package/dist/openapi/models/MultipartPartListing.js +55 -0
  178. package/dist/openapi/models/MultipartPresignRequest.d.ts +41 -0
  179. package/dist/openapi/models/MultipartPresignRequest.js +43 -0
  180. package/dist/openapi/models/MultipartPresignResponse.d.ts +46 -0
  181. package/dist/openapi/models/MultipartPresignResponse.js +48 -0
  182. package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +46 -0
  183. package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +54 -0
  184. package/dist/openapi/models/MultipartStatusResponse.d.ts +103 -0
  185. package/dist/openapi/models/MultipartStatusResponse.js +76 -0
  186. package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +46 -0
  187. package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +54 -0
  188. package/dist/openapi/models/OperationDefinition.d.ts +2 -2
  189. package/dist/openapi/models/OperationDefinition.js +2 -2
  190. package/dist/openapi/models/OperationDownload.d.ts +30 -2
  191. package/dist/openapi/models/OperationDownload.js +6 -2
  192. package/dist/openapi/models/OperationInputModel.d.ts +4 -4
  193. package/dist/openapi/models/OperationInputModel.js +4 -4
  194. package/dist/openapi/models/OperationResponse.d.ts +21 -2
  195. package/dist/openapi/models/OperationResponse.js +6 -2
  196. package/dist/openapi/models/OperationResult.d.ts +2 -2
  197. package/dist/openapi/models/OperationResult.js +2 -2
  198. package/dist/openapi/models/OperationResultMetrics.d.ts +2 -2
  199. package/dist/openapi/models/OperationResultMetrics.js +2 -2
  200. package/dist/openapi/models/OperationSchemaDefinition.d.ts +52 -5
  201. package/dist/openapi/models/OperationSchemaDefinition.js +10 -6
  202. package/dist/openapi/models/OperationStatus.d.ts +2 -2
  203. package/dist/openapi/models/OperationStatus.js +2 -2
  204. package/dist/openapi/models/OperationType.d.ts +17 -5
  205. package/dist/openapi/models/OperationType.js +18 -6
  206. package/dist/openapi/models/OperationsSchemaResponse.d.ts +70 -10
  207. package/dist/openapi/models/OperationsSchemaResponse.js +17 -2
  208. package/dist/openapi/models/OptionSchema.d.ts +42 -4
  209. package/dist/openapi/models/OptionSchema.js +12 -2
  210. package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +80 -0
  211. package/dist/openapi/models/PerValueAvailabilityEntry.js +53 -0
  212. package/dist/openapi/models/PresignedUrlPart.d.ts +2 -2
  213. package/dist/openapi/models/PresignedUrlPart.js +3 -3
  214. package/dist/openapi/models/ProcessingClass.d.ts +35 -0
  215. package/dist/openapi/models/ProcessingClass.js +53 -0
  216. package/dist/openapi/models/ProcessingClassBandViolation.d.ts +149 -0
  217. package/dist/openapi/models/ProcessingClassBandViolation.js +81 -0
  218. package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +174 -0
  219. package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +76 -0
  220. package/dist/openapi/models/ProcessingClassHint.d.ts +36 -0
  221. package/dist/openapi/models/ProcessingClassHint.js +54 -0
  222. package/dist/openapi/models/ProcessingClassReason.d.ts +46 -0
  223. package/dist/openapi/models/ProcessingClassReason.js +64 -0
  224. package/dist/openapi/models/ProcessingClassRejectReason.d.ts +53 -0
  225. package/dist/openapi/models/ProcessingClassRejectReason.js +71 -0
  226. package/dist/openapi/models/ProcessingPlan.d.ts +70 -0
  227. package/dist/openapi/models/ProcessingPlan.js +49 -0
  228. package/dist/openapi/models/ProcessingPlanJob.d.ts +81 -0
  229. package/dist/openapi/models/ProcessingPlanJob.js +71 -0
  230. package/dist/openapi/models/ReadinessResponse.d.ts +2 -2
  231. package/dist/openapi/models/ReadinessResponse.js +2 -2
  232. package/dist/openapi/models/ResponseEnvelope.d.ts +2 -2
  233. package/dist/openapi/models/ResponseEnvelope.js +2 -2
  234. package/dist/openapi/models/RetryResponse.d.ts +5 -5
  235. package/dist/openapi/models/RetryResponse.js +2 -2
  236. package/dist/openapi/models/RetrySuccessEnvelope.d.ts +3 -3
  237. package/dist/openapi/models/RetrySuccessEnvelope.js +2 -2
  238. package/dist/openapi/models/SseEventType.d.ts +2 -2
  239. package/dist/openapi/models/SseEventType.js +2 -2
  240. package/dist/openapi/models/SseJobCompletedData.d.ts +3 -3
  241. package/dist/openapi/models/SseJobCompletedData.js +2 -2
  242. package/dist/openapi/models/SseJobFailedData.d.ts +3 -3
  243. package/dist/openapi/models/SseJobFailedData.js +2 -2
  244. package/dist/openapi/models/SseOperationCompletedData.d.ts +4 -4
  245. package/dist/openapi/models/SseOperationCompletedData.js +2 -2
  246. package/dist/openapi/models/SseOperationFailedData.d.ts +3 -3
  247. package/dist/openapi/models/SseOperationFailedData.js +2 -2
  248. package/dist/openapi/models/SseOperationProgressData.d.ts +61 -3
  249. package/dist/openapi/models/SseOperationProgressData.js +22 -2
  250. package/dist/openapi/models/SseWorkflowTerminalData.d.ts +26 -4
  251. package/dist/openapi/models/SseWorkflowTerminalData.js +4 -2
  252. package/dist/openapi/models/TierRestrictionKind.d.ts +33 -0
  253. package/dist/openapi/models/TierRestrictionKind.js +51 -0
  254. package/dist/openapi/models/TierRestrictionResponse.d.ts +173 -0
  255. package/dist/openapi/models/TierRestrictionResponse.js +83 -0
  256. package/dist/openapi/models/UploadConstraintsApplied.d.ts +70 -0
  257. package/dist/openapi/models/UploadConstraintsApplied.js +57 -0
  258. package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +155 -0
  259. package/dist/openapi/models/UploadDurationExceedsTierResponse.js +82 -0
  260. package/dist/openapi/models/UploadFile403Response.d.ts +27 -0
  261. package/dist/openapi/models/UploadFile403Response.js +47 -0
  262. package/dist/openapi/models/UploadFile422Response.d.ts +27 -0
  263. package/dist/openapi/models/UploadFile422Response.js +47 -0
  264. package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +172 -0
  265. package/dist/openapi/models/UploadProbeMediaMetadata.js +69 -0
  266. package/dist/openapi/models/UploadProbeProcessingClass.d.ts +33 -0
  267. package/dist/openapi/models/UploadProbeProcessingClass.js +51 -0
  268. package/dist/openapi/models/UploadProbeResponse.d.ts +58 -0
  269. package/dist/openapi/models/UploadProbeResponse.js +58 -0
  270. package/dist/openapi/models/UploadProbeStatus.d.ts +41 -0
  271. package/dist/openapi/models/UploadProbeStatus.js +59 -0
  272. package/dist/openapi/models/UploadResponse.d.ts +17 -3
  273. package/dist/openapi/models/UploadResponse.js +7 -2
  274. package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +155 -0
  275. package/dist/openapi/models/UploadSizeExceedsTierResponse.js +82 -0
  276. package/dist/openapi/models/UploadSource.d.ts +48 -0
  277. package/dist/openapi/models/UploadSource.js +53 -0
  278. package/dist/openapi/models/UploadSuccessEnvelope.d.ts +3 -3
  279. package/dist/openapi/models/UploadSuccessEnvelope.js +2 -2
  280. package/dist/openapi/models/UploadThresholds.d.ts +126 -0
  281. package/dist/openapi/models/UploadThresholds.js +79 -0
  282. package/dist/openapi/models/UserTier.d.ts +41 -0
  283. package/dist/openapi/models/UserTier.js +59 -0
  284. package/dist/openapi/models/ValidationErrorEnvelope.d.ts +51 -4
  285. package/dist/openapi/models/ValidationErrorEnvelope.js +10 -2
  286. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +37 -4
  287. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +6 -2
  288. package/dist/openapi/models/WarningType.d.ts +48 -0
  289. package/dist/openapi/models/WarningType.js +66 -0
  290. package/dist/openapi/models/WebhookOperationContext.d.ts +3 -3
  291. package/dist/openapi/models/WebhookOperationContext.js +2 -2
  292. package/dist/openapi/models/WebhookPayload.d.ts +2 -2
  293. package/dist/openapi/models/WebhookPayload.js +3 -3
  294. package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +36 -0
  295. package/dist/openapi/models/WorkflowCancelBillingEffect.js +54 -0
  296. package/dist/openapi/models/WorkflowCancelResponse.d.ts +66 -0
  297. package/dist/openapi/models/WorkflowCancelResponse.js +62 -0
  298. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +46 -0
  299. package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +54 -0
  300. package/dist/openapi/models/WorkflowCreateRequest.d.ts +39 -5
  301. package/dist/openapi/models/WorkflowCreateRequest.js +11 -5
  302. package/dist/openapi/models/WorkflowCreateResponse.d.ts +63 -2
  303. package/dist/openapi/models/WorkflowCreateResponse.js +21 -2
  304. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +3 -3
  305. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +2 -2
  306. package/dist/openapi/models/WorkflowDownloadResponse.d.ts +2 -2
  307. package/dist/openapi/models/WorkflowDownloadResponse.js +2 -2
  308. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +3 -3
  309. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +2 -2
  310. package/dist/openapi/models/WorkflowEdge.d.ts +2 -2
  311. package/dist/openapi/models/WorkflowEdge.js +2 -2
  312. package/dist/openapi/models/WorkflowExpiredResponse.d.ts +145 -0
  313. package/dist/openapi/models/WorkflowExpiredResponse.js +75 -0
  314. package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +30 -0
  315. package/dist/openapi/models/WorkflowPauseRequiredAction.js +48 -0
  316. package/dist/openapi/models/WorkflowPausedDetail.d.ts +99 -0
  317. package/dist/openapi/models/WorkflowPausedDetail.js +65 -0
  318. package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +47 -0
  319. package/dist/openapi/models/WorkflowPausedDetailLinks.js +45 -0
  320. package/dist/openapi/models/WorkflowProcessing.d.ts +36 -0
  321. package/dist/openapi/models/WorkflowProcessing.js +42 -0
  322. package/dist/openapi/models/WorkflowResumeResponse.d.ts +55 -0
  323. package/dist/openapi/models/WorkflowResumeResponse.js +57 -0
  324. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +46 -0
  325. package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +54 -0
  326. package/dist/openapi/models/WorkflowSource.d.ts +40 -0
  327. package/dist/openapi/models/WorkflowSource.js +57 -0
  328. package/dist/openapi/models/WorkflowStatus.d.ts +31 -8
  329. package/dist/openapi/models/WorkflowStatus.js +32 -9
  330. package/dist/openapi/models/WorkflowStatusResponse.d.ts +34 -2
  331. package/dist/openapi/models/WorkflowStatusResponse.js +13 -2
  332. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +3 -3
  333. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +2 -2
  334. package/dist/openapi/models/WorkflowWarning.d.ts +119 -0
  335. package/dist/openapi/models/WorkflowWarning.js +63 -0
  336. package/dist/openapi/models/WorkflowWarningSeverity.d.ts +29 -0
  337. package/dist/openapi/models/WorkflowWarningSeverity.js +47 -0
  338. package/dist/openapi/models/index.d.ts +87 -3
  339. package/dist/openapi/models/index.js +87 -3
  340. package/dist/openapi/runtime.d.ts +2 -2
  341. package/dist/openapi/runtime.js +17 -2
  342. package/dist/operations/archive.metadata.d.ts +2 -0
  343. package/dist/operations/archive.metadata.js +13 -0
  344. package/dist/operations/audio_overlay.d.ts +48 -0
  345. package/dist/operations/audio_overlay.js +19 -0
  346. package/dist/operations/audio_overlay.metadata.d.ts +2 -0
  347. package/dist/operations/audio_overlay.metadata.js +167 -0
  348. package/dist/operations/audio_watermark.d.ts +42 -0
  349. package/dist/operations/audio_watermark.js +37 -0
  350. package/dist/operations/audio_watermark.metadata.d.ts +2 -0
  351. package/dist/operations/audio_watermark.metadata.js +94 -0
  352. package/dist/operations/compress.metadata.d.ts +2 -0
  353. package/dist/operations/compress.metadata.js +205 -0
  354. package/dist/operations/convert.metadata.d.ts +2 -0
  355. package/dist/operations/convert.metadata.js +85 -0
  356. package/dist/operations/custom_luma.d.ts +7 -0
  357. package/dist/operations/custom_luma.js +2 -0
  358. package/dist/operations/custom_luma.metadata.d.ts +2 -0
  359. package/dist/operations/custom_luma.metadata.js +49 -0
  360. package/dist/operations/image_watermark.d.ts +54 -0
  361. package/dist/operations/image_watermark.js +37 -0
  362. package/dist/operations/image_watermark.metadata.d.ts +2 -0
  363. package/dist/operations/image_watermark.metadata.js +97 -0
  364. package/dist/operations/index.d.ts +16 -1
  365. package/dist/operations/index.js +16 -1
  366. package/dist/operations/merge.d.ts +111 -31
  367. package/dist/operations/merge.js +106 -20
  368. package/dist/operations/merge.metadata.d.ts +2 -0
  369. package/dist/operations/merge.metadata.js +385 -0
  370. package/dist/operations/metadata-types.d.ts +47 -0
  371. package/dist/operations/metadata-types.js +2 -0
  372. package/dist/operations/text_watermark.d.ts +31 -0
  373. package/dist/operations/text_watermark.js +22 -0
  374. package/dist/operations/text_watermark.metadata.d.ts +2 -0
  375. package/dist/operations/text_watermark.metadata.js +46 -0
  376. package/dist/operations/thumbnail.metadata.d.ts +2 -0
  377. package/dist/operations/thumbnail.metadata.js +88 -0
  378. package/openapi/api.yaml +6413 -821
  379. package/operations/schemas/audio_overlay.yaml +409 -0
  380. package/operations/schemas/audio_watermark.yaml +192 -0
  381. package/operations/schemas/compress.yaml +26 -3
  382. package/operations/schemas/convert.yaml +25 -3
  383. package/operations/schemas/custom_luma.yaml +116 -0
  384. package/operations/schemas/image_watermark.yaml +287 -0
  385. package/operations/schemas/merge.yaml +301 -66
  386. package/operations/schemas/text_watermark.yaml +147 -0
  387. package/operations/schemas/thumbnail.yaml +22 -0
  388. package/package.json +10 -4
  389. package/dist/openapi/models/ExportConfig.d.ts +0 -63
  390. package/dist/openapi/models/ExportConfig.js +0 -59
  391. package/dist/openapi/models/JobInput.d.ts +0 -53
  392. package/dist/openapi/models/JobInput.js +0 -47
  393. package/dist/openapi/models/JobSource.d.ts +0 -43
  394. package/dist/openapi/models/JobSource.js +0 -45
  395. package/dist/operations/watermark.d.ts +0 -28
  396. package/dist/operations/watermark.js +0 -19
  397. package/operations/schemas/watermark.yaml +0 -87
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
5
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the EstimateRange interface.
16
+ */
17
+ export function instanceOfEstimateRange(value) {
18
+ if (!('min' in value) || value['min'] === undefined)
19
+ return false;
20
+ if (!('p50' in value) || value['p50'] === undefined)
21
+ return false;
22
+ if (!('max' in value) || value['max'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function EstimateRangeFromJSON(json) {
27
+ return EstimateRangeFromJSONTyped(json, false);
28
+ }
29
+ export function EstimateRangeFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'min': json['min'],
35
+ 'p50': json['p50'],
36
+ 'max': json['max'],
37
+ };
38
+ }
39
+ export function EstimateRangeToJSON(json) {
40
+ return EstimateRangeToJSONTyped(json, false);
41
+ }
42
+ export function EstimateRangeToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'min': value['min'],
48
+ 'p50': value['p50'],
49
+ 'max': value['max'],
50
+ };
51
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * GISL Compression API
3
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ConnectionSource } from './ConnectionSource.js';
13
+ import type { ExternalImportToken } from './ExternalImportToken.js';
14
+ /**
15
+ * @type ExternalDestination
16
+ * Write-side counterpart to `ExternalSource`. Used when a
17
+ * workflow's `delivery_plan` writes outputs to a
18
+ * customer-controlled destination (S3 bucket, GCS bucket,
19
+ * Dropbox folder, etc.). Per ADR-0005, write auth semantics
20
+ * differ from read auth (validation + scoping is
21
+ * write-permission-based, not SSRF-based) — the schema family
22
+ * mirrors `ExternalSource` shape; auth/policy differences live
23
+ * in runtime.
24
+ *
25
+ * Replaces V1 `ExportConfig` schema (deleted at V2 cutover via
26
+ * ticket I12).
27
+ *
28
+ * Future extension may add write-policy fields (`write_mode`,
29
+ * `overwrite_policy`, etc.) — tracked as a follow-up ticket.
30
+ *
31
+ * @export
32
+ */
33
+ export type ExternalDestination = {
34
+ type: 'connection';
35
+ } & ConnectionSource | {
36
+ type: 'external_import';
37
+ } & ExternalImportToken;
38
+ export declare function ExternalDestinationFromJSON(json: any): ExternalDestination;
39
+ export declare function ExternalDestinationFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExternalDestination;
40
+ export declare function ExternalDestinationToJSON(json: any): any;
41
+ export declare function ExternalDestinationToJSONTyped(value?: ExternalDestination | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,47 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
5
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ConnectionSourceFromJSONTyped, ConnectionSourceToJSON, } from './ConnectionSource.js';
15
+ import { ExternalImportTokenFromJSONTyped, ExternalImportTokenToJSON, } from './ExternalImportToken.js';
16
+ export function ExternalDestinationFromJSON(json) {
17
+ return ExternalDestinationFromJSONTyped(json, false);
18
+ }
19
+ export function ExternalDestinationFromJSONTyped(json, ignoreDiscriminator) {
20
+ if (json == null) {
21
+ return json;
22
+ }
23
+ switch (json['type']) {
24
+ case 'connection':
25
+ return Object.assign({}, ConnectionSourceFromJSONTyped(json, true), { type: 'connection' });
26
+ case 'external_import':
27
+ return Object.assign({}, ExternalImportTokenFromJSONTyped(json, true), { type: 'external_import' });
28
+ default:
29
+ return json;
30
+ }
31
+ }
32
+ export function ExternalDestinationToJSON(json) {
33
+ return ExternalDestinationToJSONTyped(json, false);
34
+ }
35
+ export function ExternalDestinationToJSONTyped(value, ignoreDiscriminator = false) {
36
+ if (value == null) {
37
+ return value;
38
+ }
39
+ switch (value['type']) {
40
+ case 'connection':
41
+ return Object.assign({}, ConnectionSourceToJSON(value), { type: 'connection' });
42
+ case 'external_import':
43
+ return Object.assign({}, ExternalImportTokenToJSON(value), { type: 'external_import' });
44
+ default:
45
+ return value;
46
+ }
47
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * GISL Compression API
3
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Inner data shape for a successful external-import registration.
14
+ * @export
15
+ * @interface ExternalImportCreatedResponse
16
+ */
17
+ export interface ExternalImportCreatedResponse {
18
+ /**
19
+ * UUID v7 format identifier (time-ordered)
20
+ * @type {string}
21
+ * @memberof ExternalImportCreatedResponse
22
+ */
23
+ externalSourceId: string;
24
+ /**
25
+ *
26
+ * @type {Date}
27
+ * @memberof ExternalImportCreatedResponse
28
+ */
29
+ expiresAt: Date;
30
+ /**
31
+ * Server-detected provider classification from the URL
32
+ * (`s3_presigned` / `gcs_signed` / `azure_sas` / `dropbox` /
33
+ * `public_https`). May differ from the caller's
34
+ * `provider_hint` if the hint was wrong; server's value is
35
+ * authoritative.
36
+ *
37
+ * @type {string}
38
+ * @memberof ExternalImportCreatedResponse
39
+ */
40
+ provider: string;
41
+ }
42
+ /**
43
+ * Check if a given object implements the ExternalImportCreatedResponse interface.
44
+ */
45
+ export declare function instanceOfExternalImportCreatedResponse(value: object): value is ExternalImportCreatedResponse;
46
+ export declare function ExternalImportCreatedResponseFromJSON(json: any): ExternalImportCreatedResponse;
47
+ export declare function ExternalImportCreatedResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExternalImportCreatedResponse;
48
+ export declare function ExternalImportCreatedResponseToJSON(json: any): ExternalImportCreatedResponse;
49
+ export declare function ExternalImportCreatedResponseToJSONTyped(value?: ExternalImportCreatedResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
5
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the ExternalImportCreatedResponse interface.
16
+ */
17
+ export function instanceOfExternalImportCreatedResponse(value) {
18
+ if (!('externalSourceId' in value) || value['externalSourceId'] === undefined)
19
+ return false;
20
+ if (!('expiresAt' in value) || value['expiresAt'] === undefined)
21
+ return false;
22
+ if (!('provider' in value) || value['provider'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function ExternalImportCreatedResponseFromJSON(json) {
27
+ return ExternalImportCreatedResponseFromJSONTyped(json, false);
28
+ }
29
+ export function ExternalImportCreatedResponseFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'externalSourceId': json['external_source_id'],
35
+ 'expiresAt': (new Date(json['expires_at'])),
36
+ 'provider': json['provider'],
37
+ };
38
+ }
39
+ export function ExternalImportCreatedResponseToJSON(json) {
40
+ return ExternalImportCreatedResponseToJSONTyped(json, false);
41
+ }
42
+ export function ExternalImportCreatedResponseToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'external_source_id': value['externalSourceId'],
48
+ 'expires_at': value['expiresAt'].toISOString(),
49
+ 'provider': value['provider'],
50
+ };
51
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * GISL Compression API
3
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ExternalImportCreatedResponse } from './ExternalImportCreatedResponse.js';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface ExternalImportCreatedSuccessEnvelope
17
+ */
18
+ export interface ExternalImportCreatedSuccessEnvelope {
19
+ /**
20
+ *
21
+ * @type {ExternalImportCreatedSuccessEnvelopeSuccessEnum}
22
+ * @memberof ExternalImportCreatedSuccessEnvelope
23
+ */
24
+ success: ExternalImportCreatedSuccessEnvelopeSuccessEnum;
25
+ /**
26
+ *
27
+ * @type {ExternalImportCreatedResponse}
28
+ * @memberof ExternalImportCreatedSuccessEnvelope
29
+ */
30
+ data: ExternalImportCreatedResponse;
31
+ }
32
+ /**
33
+ * @export
34
+ */
35
+ export declare const ExternalImportCreatedSuccessEnvelopeSuccessEnum: {
36
+ readonly true: true;
37
+ };
38
+ export type ExternalImportCreatedSuccessEnvelopeSuccessEnum = typeof ExternalImportCreatedSuccessEnvelopeSuccessEnum[keyof typeof ExternalImportCreatedSuccessEnvelopeSuccessEnum];
39
+ /**
40
+ * Check if a given object implements the ExternalImportCreatedSuccessEnvelope interface.
41
+ */
42
+ export declare function instanceOfExternalImportCreatedSuccessEnvelope(value: object): value is ExternalImportCreatedSuccessEnvelope;
43
+ export declare function ExternalImportCreatedSuccessEnvelopeFromJSON(json: any): ExternalImportCreatedSuccessEnvelope;
44
+ export declare function ExternalImportCreatedSuccessEnvelopeFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExternalImportCreatedSuccessEnvelope;
45
+ export declare function ExternalImportCreatedSuccessEnvelopeToJSON(json: any): ExternalImportCreatedSuccessEnvelope;
46
+ export declare function ExternalImportCreatedSuccessEnvelopeToJSONTyped(value?: ExternalImportCreatedSuccessEnvelope | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,54 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
5
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { ExternalImportCreatedResponseFromJSON, ExternalImportCreatedResponseToJSON, } from './ExternalImportCreatedResponse.js';
15
+ /**
16
+ * @export
17
+ */
18
+ export const ExternalImportCreatedSuccessEnvelopeSuccessEnum = {
19
+ true: true
20
+ };
21
+ /**
22
+ * Check if a given object implements the ExternalImportCreatedSuccessEnvelope interface.
23
+ */
24
+ export function instanceOfExternalImportCreatedSuccessEnvelope(value) {
25
+ if (!('success' in value) || value['success'] === undefined)
26
+ return false;
27
+ if (!('data' in value) || value['data'] === undefined)
28
+ return false;
29
+ return true;
30
+ }
31
+ export function ExternalImportCreatedSuccessEnvelopeFromJSON(json) {
32
+ return ExternalImportCreatedSuccessEnvelopeFromJSONTyped(json, false);
33
+ }
34
+ export function ExternalImportCreatedSuccessEnvelopeFromJSONTyped(json, ignoreDiscriminator) {
35
+ if (json == null) {
36
+ return json;
37
+ }
38
+ return {
39
+ 'success': json['success'],
40
+ 'data': ExternalImportCreatedResponseFromJSON(json['data']),
41
+ };
42
+ }
43
+ export function ExternalImportCreatedSuccessEnvelopeToJSON(json) {
44
+ return ExternalImportCreatedSuccessEnvelopeToJSONTyped(json, false);
45
+ }
46
+ export function ExternalImportCreatedSuccessEnvelopeToJSONTyped(value, ignoreDiscriminator = false) {
47
+ if (value == null) {
48
+ return value;
49
+ }
50
+ return {
51
+ 'success': value['success'],
52
+ 'data': ExternalImportCreatedResponseToJSON(value['data']),
53
+ };
54
+ }
@@ -0,0 +1,92 @@
1
+ /**
2
+ * GISL Compression API
3
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Request body for `POST /api/external-imports`. Caller registers
14
+ * a one-shot bearer URL; server validates (SSRF + TTL + magic-byte
15
+ * + content-type per ADR-0005 §"SSRF posture"), encrypts the URL
16
+ * + password at rest, and returns an opaque `external_source_id`.
17
+ *
18
+ * @export
19
+ * @interface ExternalImportRequest
20
+ */
21
+ export interface ExternalImportRequest {
22
+ /**
23
+ * HTTPS-only. Server resolves DNS server-side and rejects
24
+ * private / loopback / link-local / cloud-metadata IPs per
25
+ * ADR-0005 §"SSRF posture" rule 3. Bearer URLs (S3 presigned,
26
+ * GCS signed, Azure SAS, OneDrive `downloadUrl`) have
27
+ * redirects disabled by default.
28
+ *
29
+ * @type {string}
30
+ * @memberof ExternalImportRequest
31
+ */
32
+ url: string;
33
+ /**
34
+ * Optional, advisory only. Triggers server-side URL
35
+ * normalisation (e.g. Dropbox `?dl=0` → `?dl=1` for
36
+ * force-download). Server behaviour MUST NOT depend on this
37
+ * for auth or security decisions — the actual provider is
38
+ * detected from URL structure and confirmed by the SSRF
39
+ * validator.
40
+ *
41
+ * Per-value availability tags below are **decorative only**
42
+ * in this OpenAPI request schema — the I17 CI guard
43
+ * (`scripts/check-per-value-availability.py`) is scoped to
44
+ * `schemas/operations/*.yaml` and does not validate this
45
+ * field. SDK consumers should still respect the tagged
46
+ * availability per the runtime capability endpoint (I3) +
47
+ * sidecar (I3b).
48
+ *
49
+ * @type {ExternalImportRequestProviderHintEnum}
50
+ * @memberof ExternalImportRequest
51
+ */
52
+ providerHint?: ExternalImportRequestProviderHintEnum;
53
+ /**
54
+ * Password for password-protected shared links (Dropbox Pro+,
55
+ * etc.). Stored encrypted; never returned in any response
56
+ * after creation.
57
+ *
58
+ * @type {string}
59
+ * @memberof ExternalImportRequest
60
+ */
61
+ password?: string;
62
+ /**
63
+ * Caller-asserted expiration matching the signed URL's TTL.
64
+ * Server validates minimum TTL at create time AND again at
65
+ * fetch time (TOCTOU defence per ADR-0005 §"SSRF posture").
66
+ *
67
+ * @type {Date}
68
+ * @memberof ExternalImportRequest
69
+ */
70
+ expiresAt?: Date;
71
+ }
72
+ /**
73
+ * @export
74
+ */
75
+ export declare const ExternalImportRequestProviderHintEnum: {
76
+ readonly s3_presigned: "s3_presigned";
77
+ readonly gcs_signed: "gcs_signed";
78
+ readonly azure_sas: "azure_sas";
79
+ readonly dropbox: "dropbox";
80
+ readonly public_https: "public_https";
81
+ readonly gdrive: "gdrive";
82
+ readonly onedrive: "onedrive";
83
+ };
84
+ export type ExternalImportRequestProviderHintEnum = typeof ExternalImportRequestProviderHintEnum[keyof typeof ExternalImportRequestProviderHintEnum];
85
+ /**
86
+ * Check if a given object implements the ExternalImportRequest interface.
87
+ */
88
+ export declare function instanceOfExternalImportRequest(value: object): value is ExternalImportRequest;
89
+ export declare function ExternalImportRequestFromJSON(json: any): ExternalImportRequest;
90
+ export declare function ExternalImportRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExternalImportRequest;
91
+ export declare function ExternalImportRequestToJSON(json: any): ExternalImportRequest;
92
+ export declare function ExternalImportRequestToJSONTyped(value?: ExternalImportRequest | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,61 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * GISL Compression API
5
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
6
+ *
7
+ * The version of the OpenAPI document: 2.12.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const ExternalImportRequestProviderHintEnum = {
18
+ s3_presigned: 's3_presigned',
19
+ gcs_signed: 'gcs_signed',
20
+ azure_sas: 'azure_sas',
21
+ dropbox: 'dropbox',
22
+ public_https: 'public_https',
23
+ gdrive: 'gdrive',
24
+ onedrive: 'onedrive'
25
+ };
26
+ /**
27
+ * Check if a given object implements the ExternalImportRequest interface.
28
+ */
29
+ export function instanceOfExternalImportRequest(value) {
30
+ if (!('url' in value) || value['url'] === undefined)
31
+ return false;
32
+ return true;
33
+ }
34
+ export function ExternalImportRequestFromJSON(json) {
35
+ return ExternalImportRequestFromJSONTyped(json, false);
36
+ }
37
+ export function ExternalImportRequestFromJSONTyped(json, ignoreDiscriminator) {
38
+ if (json == null) {
39
+ return json;
40
+ }
41
+ return {
42
+ 'url': json['url'],
43
+ 'providerHint': json['provider_hint'] == null ? undefined : json['provider_hint'],
44
+ 'password': json['password'] == null ? undefined : json['password'],
45
+ 'expiresAt': json['expires_at'] == null ? undefined : (new Date(json['expires_at'])),
46
+ };
47
+ }
48
+ export function ExternalImportRequestToJSON(json) {
49
+ return ExternalImportRequestToJSONTyped(json, false);
50
+ }
51
+ export function ExternalImportRequestToJSONTyped(value, ignoreDiscriminator = false) {
52
+ if (value == null) {
53
+ return value;
54
+ }
55
+ return {
56
+ 'url': value['url'],
57
+ 'provider_hint': value['providerHint'],
58
+ 'password': value['password'],
59
+ 'expires_at': value['expiresAt'] == null ? value['expiresAt'] : value['expiresAt'].toISOString(),
60
+ };
61
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * GISL Compression API
3
+ * REST API for the GISL (Give It Smaller) file compression and processing service. **Architecture:** - Upload files to get a `file_id` - Create workflows referencing uploaded files with operations (compress, thumbnail, image_watermark, text_watermark, merge, archive, convert, custom_luma, audio_overlay, audio_watermark) - Poll status, stream SSE events, or receive webhook callbacks - Download results per operation output **Response envelope:** All mutation and query endpoints return `{ success: true, data: {...} }` on success and `{ success: false, error: \"...\", details: [...] }` on failure. Exceptions: `GET /api/operations/schema` returns raw JSON (per-tier private caching with ETag/Last-Modified revalidation per ADR-0002 + I3), health probes return flat objects, and `POST /api/contact` returns 204 with no body. **Availability metadata.** This spec uses the `x-availability` vendor extension as **decorative documentation only**. Per [ADR-0001](../docs/decisions/0001-contract-first-availability.md) §1.5, the runtime endpoint `GET /api/operations/schema` (ticket I3) is the authoritative source; the sidecar `availability.json` (ticket I3b) is the authoritative companion (generated, never hand-edited; CI cross-checks runtime ⇄ sidecar). SDKs MUST NOT depend on `x-availability` reaching generated code — code-generators that surface vendor extensions may emit it as documentation, but consumers read availability from the runtime endpoint, not from the generated bindings. The 5-value vocabulary (`stable | beta | experimental | planned | deprecated`) is defined in the `AvailabilityValue` schema. See `schemas/FORMAT.md` §Availability Taxonomy for the operational rules (parser obligation: absent = stable; per-enum-value granularity is the `per_value_availability` primitive landed via ticket I17). **Localisation (per ticket [I26](https://trello.com/c/rcnqwgI4)).** Error responses + paused/blocked workflow statuses carry a localised human-readable `message` alongside a stable, never-localised `message_key`. Machine-readable fields (`error`, enum values, status codes) stay canonical English. - **Request:** `Accept-Language` header per RFC 9110 §12.5.4 (q-value negotiation supported). The server selects the best-match locale from its supported list; falls back to `en-GB` when no match. - **Response:** `Content-Language: <locale>` echo on every localised response; `Vary: Accept-Language` on every response (CDN/cache correctness — different `Accept-Language` requests produce different responses). - **Fallback locale:** `en-GB` (also the canonical locale for `message_key` translations and English `message` prose). - **SDK guidance:** switch on `error` (machine code) for typed error branches; surface `message_key` to client-side i18n catalogs (SDK companion work tracked at X19, cross-repo); display `message` for end-user UI; **never parse `message` for control flow** — it changes per locale. Carrier shape lives on `ErrorEnvelope` (envelope-level optional `message_key` + `message` + `locale` + `message_params`) and `ValidationErrorEnvelope` (also per-`details[]` entry). Existing 402 / 403 / 422 envelopes (`BalanceExhaustedResponse`, `FeatureNotAvailableResponse`, `FeatureTierRestrictedResponse`, `WorkflowPausedDetail`) inherit the convention. **Upload thresholds (per tickets [u0ar7Yye](https://trello.com/c/u0ar7Yye) + [58nBQLWQ](https://trello.com/c/58nBQLWQ)).** Canonical upload constants (single-shot cap, multipart chunk size, multipart concurrency default, multipart first-chunk size) live on the `UploadThresholds` schema with `const:`-pinned values. SDK generators emit these as typed binding constants so frontend / API / SDKs reference one source of truth instead of hardcoding magic numbers. A runtime `GET /api/uploads/limits` endpoint for dynamic discovery (per-tier / per-environment overrides) is a deferred follow-up.
4
+ *
5
+ * The version of the OpenAPI document: 2.12.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Opaque handle returned by `POST /api/external-imports` for a
14
+ * one-shot bearer URL (S3 presigned, GCS signed, Azure SAS,
15
+ * Dropbox shared link, public HTTPS). The original URL + password
16
+ * are encrypted server-side and never returned in any subsequent
17
+ * response. Per [ADR-0005](../docs/decisions/0005-external-sources.md)
18
+ * §"ExternalImportToken".
19
+ *
20
+ * @export
21
+ * @interface ExternalImportToken
22
+ */
23
+ export interface ExternalImportToken {
24
+ /**
25
+ *
26
+ * @type {ExternalImportTokenTypeEnum}
27
+ * @memberof ExternalImportToken
28
+ */
29
+ type: ExternalImportTokenTypeEnum;
30
+ /**
31
+ * UUID v7 format identifier (time-ordered)
32
+ * @type {string}
33
+ * @memberof ExternalImportToken
34
+ */
35
+ externalSourceId: string;
36
+ }
37
+ /**
38
+ * @export
39
+ */
40
+ export declare const ExternalImportTokenTypeEnum: {
41
+ readonly external_import: "external_import";
42
+ };
43
+ export type ExternalImportTokenTypeEnum = typeof ExternalImportTokenTypeEnum[keyof typeof ExternalImportTokenTypeEnum];
44
+ /**
45
+ * Check if a given object implements the ExternalImportToken interface.
46
+ */
47
+ export declare function instanceOfExternalImportToken(value: object): value is ExternalImportToken;
48
+ export declare function ExternalImportTokenFromJSON(json: any): ExternalImportToken;
49
+ export declare function ExternalImportTokenFromJSONTyped(json: any, ignoreDiscriminator: boolean): ExternalImportToken;
50
+ export declare function ExternalImportTokenToJSON(json: any): ExternalImportToken;
51
+ export declare function ExternalImportTokenToJSONTyped(value?: ExternalImportToken | null, ignoreDiscriminator?: boolean): any;