@giveitsmaller/contracts 0.1.0 → 0.1.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.
Files changed (207) hide show
  1. package/dist/asyncapi/ErrorCode.d.ts +18 -0
  2. package/dist/asyncapi/ErrorCode.js +19 -0
  3. package/dist/asyncapi/MergeOutputType.d.ts +8 -0
  4. package/dist/asyncapi/MergeOutputType.js +9 -0
  5. package/{asyncapi/NotificationsOperationsQueue.ts → dist/asyncapi/NotificationsOperationsQueue.d.ts} +2 -2
  6. package/dist/asyncapi/NotificationsOperationsQueue.js +1 -0
  7. package/dist/asyncapi/OperationMetrics.d.ts +11 -0
  8. package/dist/asyncapi/OperationMetrics.js +1 -0
  9. package/dist/asyncapi/OperationProgress.d.ts +12 -0
  10. package/dist/asyncapi/OperationProgress.js +1 -0
  11. package/dist/asyncapi/OperationRequest.d.ts +21 -0
  12. package/dist/asyncapi/OperationRequest.js +1 -0
  13. package/dist/asyncapi/OperationResult.d.ts +20 -0
  14. package/dist/asyncapi/OperationResult.js +1 -0
  15. package/dist/asyncapi/OperationType.d.ts +9 -0
  16. package/dist/asyncapi/OperationType.js +10 -0
  17. package/dist/asyncapi/ProgressStatus.d.ts +7 -0
  18. package/dist/asyncapi/ProgressStatus.js +8 -0
  19. package/dist/asyncapi/ResultStatus.d.ts +5 -0
  20. package/dist/asyncapi/ResultStatus.js +6 -0
  21. package/dist/asyncapi/SourceEntry.d.ts +8 -0
  22. package/dist/asyncapi/SourceEntry.js +1 -0
  23. package/dist/asyncapi/index.d.ts +11 -0
  24. package/dist/asyncapi/index.js +5 -0
  25. package/dist/index.d.ts +3 -0
  26. package/dist/index.js +4 -0
  27. package/dist/openapi/index.d.ts +2 -0
  28. package/dist/openapi/index.js +4 -0
  29. package/dist/openapi/models/CallbackEventType.d.ts +32 -0
  30. package/{openapi/models/CallbackEventType.ts → dist/openapi/models/CallbackEventType.js} +13 -23
  31. package/dist/openapi/models/ContactRequest.d.ts +60 -0
  32. package/{openapi/models/ContactRequest.ts → dist/openapi/models/ContactRequest.js} +14 -71
  33. package/dist/openapi/models/ContactSubject.d.ts +34 -0
  34. package/{openapi/models/ContactSubject.ts → dist/openapi/models/ContactSubject.js} +13 -23
  35. package/dist/openapi/models/ContactValidationErrorResponse.d.ts +35 -0
  36. package/{openapi/models/ContactValidationErrorResponse.ts → dist/openapi/models/ContactValidationErrorResponse.js} +9 -33
  37. package/dist/openapi/models/ErrorEnvelope.d.ts +45 -0
  38. package/{openapi/models/ErrorEnvelope.ts → dist/openapi/models/ErrorEnvelope.js} +12 -44
  39. package/{openapi/models/ExportConfig.ts → dist/openapi/models/ExportConfig.d.ts} +12 -57
  40. package/dist/openapi/models/ExportConfig.js +59 -0
  41. package/{openapi/models/JobDefinition.ts → dist/openapi/models/JobDefinition.d.ts} +9 -33
  42. package/dist/openapi/models/JobDefinition.js +31 -0
  43. package/dist/openapi/models/JobDownload.d.ts +45 -0
  44. package/dist/openapi/models/JobDownload.js +52 -0
  45. package/{openapi/models/JobInput.ts → dist/openapi/models/JobInput.d.ts} +13 -49
  46. package/dist/openapi/models/JobInput.js +47 -0
  47. package/dist/openapi/models/JobResponse.d.ts +58 -0
  48. package/dist/openapi/models/JobResponse.js +61 -0
  49. package/{openapi/models/JobSource.ts → dist/openapi/models/JobSource.d.ts} +9 -45
  50. package/dist/openapi/models/JobSource.js +45 -0
  51. package/dist/openapi/models/JobStatus.d.ts +34 -0
  52. package/{openapi/models/JobStatus.ts → dist/openapi/models/JobStatus.js} +13 -23
  53. package/dist/openapi/models/JobType.d.ts +32 -0
  54. package/{openapi/models/JobType.ts → dist/openapi/models/JobType.js} +13 -23
  55. package/dist/openapi/models/LivenessResponse.d.ts +32 -0
  56. package/{openapi/models/LivenessResponse.ts → dist/openapi/models/LivenessResponse.js} +9 -32
  57. package/dist/openapi/models/MetadataResponse.d.ts +139 -0
  58. package/dist/openapi/models/MetadataResponse.js +85 -0
  59. package/dist/openapi/models/MetadataResponseDimensions.d.ts +38 -0
  60. package/{openapi/models/MetadataResponseDimensions.ts → dist/openapi/models/MetadataResponseDimensions.js} +7 -37
  61. package/dist/openapi/models/MetadataResponseExif.d.ts +51 -0
  62. package/{openapi/models/MetadataResponseExif.ts → dist/openapi/models/MetadataResponseExif.js} +8 -57
  63. package/dist/openapi/models/MetadataResponseExifGps.d.ts +38 -0
  64. package/{openapi/models/MetadataResponseExifGps.ts → dist/openapi/models/MetadataResponseExifGps.js} +7 -37
  65. package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +46 -0
  66. package/{openapi/models/MetadataSuccessEnvelope.ts → dist/openapi/models/MetadataSuccessEnvelope.js} +13 -52
  67. package/dist/openapi/models/MimeGroupSchema.d.ts +49 -0
  68. package/{openapi/models/MimeGroupSchema.ts → dist/openapi/models/MimeGroupSchema.js} +13 -53
  69. package/dist/openapi/models/MultipartCompleteRequest.d.ts +41 -0
  70. package/dist/openapi/models/MultipartCompleteRequest.js +48 -0
  71. package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +38 -0
  72. package/{openapi/models/MultipartCompleteRequestPartsInner.ts → dist/openapi/models/MultipartCompleteRequestPartsInner.js} +11 -39
  73. package/dist/openapi/models/MultipartInitiateResponse.d.ts +78 -0
  74. package/dist/openapi/models/MultipartInitiateResponse.js +68 -0
  75. package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +46 -0
  76. package/{openapi/models/MultipartInitiateSuccessEnvelope.ts → dist/openapi/models/MultipartInitiateSuccessEnvelope.js} +13 -52
  77. package/{openapi/models/OperationDefinition.ts → dist/openapi/models/OperationDefinition.d.ts} +14 -57
  78. package/dist/openapi/models/OperationDefinition.js +46 -0
  79. package/dist/openapi/models/OperationDownload.d.ts +56 -0
  80. package/{openapi/models/OperationDownload.ts → dist/openapi/models/OperationDownload.js} +17 -60
  81. package/dist/openapi/models/OperationInputModel.d.ts +28 -0
  82. package/{openapi/models/OperationInputModel.ts → dist/openapi/models/OperationInputModel.js} +13 -23
  83. package/dist/openapi/models/OperationResponse.d.ts +59 -0
  84. package/dist/openapi/models/OperationResponse.js +58 -0
  85. package/dist/openapi/models/OperationResult.d.ts +52 -0
  86. package/{openapi/models/OperationResult.ts → dist/openapi/models/OperationResult.js} +12 -60
  87. package/dist/openapi/models/OperationResultMetrics.d.ts +38 -0
  88. package/{openapi/models/OperationResultMetrics.ts → dist/openapi/models/OperationResultMetrics.js} +7 -37
  89. package/dist/openapi/models/OperationSchemaDefinition.d.ts +96 -0
  90. package/dist/openapi/models/OperationSchemaDefinition.js +67 -0
  91. package/dist/openapi/models/OperationStatus.d.ts +34 -0
  92. package/{openapi/models/OperationStatus.ts → dist/openapi/models/OperationStatus.js} +13 -23
  93. package/dist/openapi/models/OperationType.d.ts +36 -0
  94. package/{openapi/models/OperationType.ts → dist/openapi/models/OperationType.js} +13 -23
  95. package/{openapi/models/OperationsSchemaResponse.ts → dist/openapi/models/OperationsSchemaResponse.d.ts} +13 -55
  96. package/dist/openapi/models/OperationsSchemaResponse.js +49 -0
  97. package/{openapi/models/OptionSchema.ts → dist/openapi/models/OptionSchema.d.ts} +24 -76
  98. package/dist/openapi/models/OptionSchema.js +76 -0
  99. package/dist/openapi/models/PresignedUrlPart.d.ts +46 -0
  100. package/{openapi/models/PresignedUrlPart.ts → dist/openapi/models/PresignedUrlPart.js} +13 -48
  101. package/dist/openapi/models/ReadinessResponse.d.ts +38 -0
  102. package/{openapi/models/ReadinessResponse.ts → dist/openapi/models/ReadinessResponse.js} +7 -37
  103. package/dist/openapi/models/ResponseEnvelope.d.ts +36 -0
  104. package/{openapi/models/ResponseEnvelope.ts → dist/openapi/models/ResponseEnvelope.js} +9 -36
  105. package/dist/openapi/models/RetryResponse.d.ts +51 -0
  106. package/{openapi/models/RetryResponse.ts → dist/openapi/models/RetryResponse.js} +14 -51
  107. package/dist/openapi/models/RetrySuccessEnvelope.d.ts +46 -0
  108. package/{openapi/models/RetrySuccessEnvelope.ts → dist/openapi/models/RetrySuccessEnvelope.js} +13 -52
  109. package/dist/openapi/models/SseEventType.d.ts +40 -0
  110. package/{openapi/models/SseEventType.ts → dist/openapi/models/SseEventType.js} +13 -23
  111. package/{openapi/models/SseJobCompletedData.ts → dist/openapi/models/SseJobCompletedData.d.ts} +12 -55
  112. package/dist/openapi/models/SseJobCompletedData.js +57 -0
  113. package/dist/openapi/models/SseJobFailedData.d.ts +51 -0
  114. package/{openapi/models/SseJobFailedData.ts → dist/openapi/models/SseJobFailedData.js} +14 -51
  115. package/dist/openapi/models/SseOperationCompletedData.d.ts +78 -0
  116. package/dist/openapi/models/SseOperationCompletedData.js +75 -0
  117. package/dist/openapi/models/SseOperationFailedData.d.ts +70 -0
  118. package/dist/openapi/models/SseOperationFailedData.js +70 -0
  119. package/dist/openapi/models/SseOperationProgressData.d.ts +51 -0
  120. package/{openapi/models/SseOperationProgressData.ts → dist/openapi/models/SseOperationProgressData.js} +16 -63
  121. package/dist/openapi/models/SseWorkflowTerminalData.d.ts +49 -0
  122. package/{openapi/models/SseWorkflowTerminalData.ts → dist/openapi/models/SseWorkflowTerminalData.js} +12 -46
  123. package/dist/openapi/models/UploadResponse.d.ts +50 -0
  124. package/{openapi/models/UploadResponse.ts → dist/openapi/models/UploadResponse.js} +15 -53
  125. package/dist/openapi/models/UploadSuccessEnvelope.d.ts +46 -0
  126. package/{openapi/models/UploadSuccessEnvelope.ts → dist/openapi/models/UploadSuccessEnvelope.js} +13 -52
  127. package/dist/openapi/models/ValidationErrorEnvelope.d.ts +54 -0
  128. package/dist/openapi/models/ValidationErrorEnvelope.js +58 -0
  129. package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +50 -0
  130. package/{openapi/models/ValidationErrorEnvelopeDetailsInner.ts → dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js} +9 -50
  131. package/dist/openapi/models/WebhookOperationContext.d.ts +40 -0
  132. package/{openapi/models/WebhookOperationContext.ts → dist/openapi/models/WebhookOperationContext.js} +11 -41
  133. package/dist/openapi/models/WebhookPayload.d.ts +66 -0
  134. package/dist/openapi/models/WebhookPayload.js +60 -0
  135. package/dist/openapi/models/WorkflowCreateRequest.d.ts +76 -0
  136. package/dist/openapi/models/WorkflowCreateRequest.js +55 -0
  137. package/dist/openapi/models/WorkflowCreateResponse.d.ts +58 -0
  138. package/dist/openapi/models/WorkflowCreateResponse.js +54 -0
  139. package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +46 -0
  140. package/{openapi/models/WorkflowCreateSuccessEnvelope.ts → dist/openapi/models/WorkflowCreateSuccessEnvelope.js} +13 -52
  141. package/dist/openapi/models/WorkflowDownloadResponse.d.ts +33 -0
  142. package/{openapi/models/WorkflowDownloadResponse.ts → dist/openapi/models/WorkflowDownloadResponse.js} +12 -42
  143. package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +46 -0
  144. package/{openapi/models/WorkflowDownloadSuccessEnvelope.ts → dist/openapi/models/WorkflowDownloadSuccessEnvelope.js} +13 -52
  145. package/{openapi/models/WorkflowEdge.ts → dist/openapi/models/WorkflowEdge.d.ts} +8 -45
  146. package/dist/openapi/models/WorkflowEdge.js +47 -0
  147. package/dist/openapi/models/WorkflowStatus.d.ts +34 -0
  148. package/{openapi/models/WorkflowStatus.ts → dist/openapi/models/WorkflowStatus.js} +13 -23
  149. package/dist/openapi/models/WorkflowStatusResponse.d.ts +46 -0
  150. package/dist/openapi/models/WorkflowStatusResponse.js +53 -0
  151. package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +46 -0
  152. package/{openapi/models/WorkflowStatusSuccessEnvelope.ts → dist/openapi/models/WorkflowStatusSuccessEnvelope.js} +13 -52
  153. package/dist/openapi/models/index.d.ts +62 -0
  154. package/dist/openapi/models/index.js +64 -0
  155. package/dist/openapi/runtime.d.ts +184 -0
  156. package/{openapi/runtime.ts → dist/openapi/runtime.js} +107 -206
  157. package/dist/operations/archive.d.ts +12 -0
  158. package/dist/operations/archive.js +11 -0
  159. package/dist/operations/compress.d.ts +154 -0
  160. package/dist/operations/compress.js +112 -0
  161. package/dist/operations/convert.d.ts +58 -0
  162. package/dist/operations/convert.js +46 -0
  163. package/dist/operations/index.d.ts +5 -0
  164. package/dist/operations/index.js +6 -0
  165. package/dist/operations/merge.d.ts +79 -0
  166. package/dist/operations/merge.js +46 -0
  167. package/dist/operations/thumbnail.d.ts +55 -0
  168. package/dist/operations/thumbnail.js +42 -0
  169. package/package.json +29 -11
  170. package/asyncapi/ErrorCode.ts +0 -19
  171. package/asyncapi/MergeOutputType.ts +0 -9
  172. package/asyncapi/OperationMetrics.ts +0 -12
  173. package/asyncapi/OperationProgress.ts +0 -12
  174. package/asyncapi/OperationRequest.ts +0 -21
  175. package/asyncapi/OperationResult.ts +0 -20
  176. package/asyncapi/OperationType.ts +0 -10
  177. package/asyncapi/ProgressStatus.ts +0 -8
  178. package/asyncapi/README.md +0 -16
  179. package/asyncapi/ResultStatus.ts +0 -6
  180. package/asyncapi/SourceEntry.ts +0 -9
  181. package/asyncapi/index.ts +0 -11
  182. package/index.ts +0 -5
  183. package/openapi/.openapi-generator-ignore +0 -26
  184. package/openapi/README.md +0 -17
  185. package/openapi/index.ts +0 -4
  186. package/openapi/models/JobDownload.ts +0 -92
  187. package/openapi/models/JobResponse.ts +0 -119
  188. package/openapi/models/MetadataResponse.ts +0 -223
  189. package/openapi/models/MultipartCompleteRequest.ts +0 -85
  190. package/openapi/models/MultipartInitiateResponse.ts +0 -137
  191. package/openapi/models/OperationResponse.ts +0 -124
  192. package/openapi/models/OperationSchemaDefinition.ts +0 -163
  193. package/openapi/models/SseOperationCompletedData.ts +0 -143
  194. package/openapi/models/SseOperationFailedData.ts +0 -129
  195. package/openapi/models/ValidationErrorEnvelope.ts +0 -104
  196. package/openapi/models/WebhookPayload.ts +0 -132
  197. package/openapi/models/WorkflowCreateRequest.ts +0 -143
  198. package/openapi/models/WorkflowCreateResponse.ts +0 -114
  199. package/openapi/models/WorkflowStatusResponse.ts +0 -101
  200. package/openapi/models/index.ts +0 -64
  201. package/operations/README.md +0 -17
  202. package/operations/archive.ts +0 -16
  203. package/operations/compress.ts +0 -177
  204. package/operations/convert.ts +0 -69
  205. package/operations/index.ts +0 -7
  206. package/operations/merge.ts +0 -95
  207. package/operations/thumbnail.ts +0 -66
@@ -1,104 +0,0 @@
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
6
- *
7
- * The version of the OpenAPI document: 2.0.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
- import { mapValues } from '../runtime';
16
- import type { ValidationErrorEnvelopeDetailsInner } from './ValidationErrorEnvelopeDetailsInner';
17
- import {
18
- ValidationErrorEnvelopeDetailsInnerFromJSON,
19
- ValidationErrorEnvelopeDetailsInnerFromJSONTyped,
20
- ValidationErrorEnvelopeDetailsInnerToJSON,
21
- ValidationErrorEnvelopeDetailsInnerToJSONTyped,
22
- } from './ValidationErrorEnvelopeDetailsInner';
23
-
24
- /**
25
- * Validation error response with structured details.
26
- * Used for 422 responses where multiple validation issues are reported.
27
- *
28
- * @export
29
- * @interface ValidationErrorEnvelope
30
- */
31
- export interface ValidationErrorEnvelope {
32
- /**
33
- *
34
- * @type {boolean}
35
- * @memberof ValidationErrorEnvelope
36
- */
37
- success: ValidationErrorEnvelopeSuccessEnum;
38
- /**
39
- * Error code (e.g. "INVALID_OPTIONS")
40
- * @type {string}
41
- * @memberof ValidationErrorEnvelope
42
- */
43
- error: string;
44
- /**
45
- * List of individual validation errors
46
- * @type {Array<ValidationErrorEnvelopeDetailsInner>}
47
- * @memberof ValidationErrorEnvelope
48
- */
49
- details: Array<ValidationErrorEnvelopeDetailsInner>;
50
- }
51
-
52
-
53
- /**
54
- * @export
55
- */
56
- export const ValidationErrorEnvelopeSuccessEnum = {
57
- false: false
58
- } as const;
59
- export type ValidationErrorEnvelopeSuccessEnum = typeof ValidationErrorEnvelopeSuccessEnum[keyof typeof ValidationErrorEnvelopeSuccessEnum];
60
-
61
-
62
- /**
63
- * Check if a given object implements the ValidationErrorEnvelope interface.
64
- */
65
- export function instanceOfValidationErrorEnvelope(value: object): value is ValidationErrorEnvelope {
66
- if (!('success' in value) || value['success'] === undefined) return false;
67
- if (!('error' in value) || value['error'] === undefined) return false;
68
- if (!('details' in value) || value['details'] === undefined) return false;
69
- return true;
70
- }
71
-
72
- export function ValidationErrorEnvelopeFromJSON(json: any): ValidationErrorEnvelope {
73
- return ValidationErrorEnvelopeFromJSONTyped(json, false);
74
- }
75
-
76
- export function ValidationErrorEnvelopeFromJSONTyped(json: any, ignoreDiscriminator: boolean): ValidationErrorEnvelope {
77
- if (json == null) {
78
- return json;
79
- }
80
- return {
81
-
82
- 'success': json['success'],
83
- 'error': json['error'],
84
- 'details': ((json['details'] as Array<any>).map(ValidationErrorEnvelopeDetailsInnerFromJSON)),
85
- };
86
- }
87
-
88
- export function ValidationErrorEnvelopeToJSON(json: any): ValidationErrorEnvelope {
89
- return ValidationErrorEnvelopeToJSONTyped(json, false);
90
- }
91
-
92
- export function ValidationErrorEnvelopeToJSONTyped(value?: ValidationErrorEnvelope | null, ignoreDiscriminator: boolean = false): any {
93
- if (value == null) {
94
- return value;
95
- }
96
-
97
- return {
98
-
99
- 'success': value['success'],
100
- 'error': value['error'],
101
- 'details': ((value['details'] as Array<any>).map(ValidationErrorEnvelopeDetailsInnerToJSON)),
102
- };
103
- }
104
-
@@ -1,132 +0,0 @@
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
6
- *
7
- * The version of the OpenAPI document: 2.0.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
- import { mapValues } from '../runtime';
16
- import type { CallbackEventType } from './CallbackEventType';
17
- import {
18
- CallbackEventTypeFromJSON,
19
- CallbackEventTypeFromJSONTyped,
20
- CallbackEventTypeToJSON,
21
- CallbackEventTypeToJSONTyped,
22
- } from './CallbackEventType';
23
- import type { WebhookOperationContext } from './WebhookOperationContext';
24
- import {
25
- WebhookOperationContextFromJSON,
26
- WebhookOperationContextFromJSONTyped,
27
- WebhookOperationContextToJSON,
28
- WebhookOperationContextToJSONTyped,
29
- } from './WebhookOperationContext';
30
- import type { WorkflowStatusResponse } from './WorkflowStatusResponse';
31
- import {
32
- WorkflowStatusResponseFromJSON,
33
- WorkflowStatusResponseFromJSONTyped,
34
- WorkflowStatusResponseToJSON,
35
- WorkflowStatusResponseToJSONTyped,
36
- } from './WorkflowStatusResponse';
37
-
38
- /**
39
- * Payload POSTed to the `callback_url` when a subscribed event occurs.
40
- * The `workflow` field contains the full current state including all jobs
41
- * and their operation results, matching the `WorkflowStatusResponse` shape.
42
- *
43
- * For `operation.completed` events, the `operation` field identifies which
44
- * specific operation triggered the callback, so consumers do not need to
45
- * scan the entire workflow to find the change.
46
- *
47
- * @export
48
- * @interface WebhookPayload
49
- */
50
- export interface WebhookPayload {
51
- /**
52
- *
53
- * @type {CallbackEventType}
54
- * @memberof WebhookPayload
55
- */
56
- eventType: CallbackEventType;
57
- /**
58
- * UUID v7 format identifier (time-ordered)
59
- * @type {string}
60
- * @memberof WebhookPayload
61
- */
62
- deliveryId: string;
63
- /**
64
- * ISO 8601 timestamp of when the event occurred
65
- * @type {Date}
66
- * @memberof WebhookPayload
67
- */
68
- timestamp: Date;
69
- /**
70
- *
71
- * @type {WorkflowStatusResponse}
72
- * @memberof WebhookPayload
73
- */
74
- workflow: WorkflowStatusResponse;
75
- /**
76
- *
77
- * @type {WebhookOperationContext}
78
- * @memberof WebhookPayload
79
- */
80
- operation?: WebhookOperationContext;
81
- }
82
-
83
-
84
-
85
- /**
86
- * Check if a given object implements the WebhookPayload interface.
87
- */
88
- export function instanceOfWebhookPayload(value: object): value is WebhookPayload {
89
- if (!('eventType' in value) || value['eventType'] === undefined) return false;
90
- if (!('deliveryId' in value) || value['deliveryId'] === undefined) return false;
91
- if (!('timestamp' in value) || value['timestamp'] === undefined) return false;
92
- if (!('workflow' in value) || value['workflow'] === undefined) return false;
93
- return true;
94
- }
95
-
96
- export function WebhookPayloadFromJSON(json: any): WebhookPayload {
97
- return WebhookPayloadFromJSONTyped(json, false);
98
- }
99
-
100
- export function WebhookPayloadFromJSONTyped(json: any, ignoreDiscriminator: boolean): WebhookPayload {
101
- if (json == null) {
102
- return json;
103
- }
104
- return {
105
-
106
- 'eventType': CallbackEventTypeFromJSON(json['event_type']),
107
- 'deliveryId': json['delivery_id'],
108
- 'timestamp': (new Date(json['timestamp'])),
109
- 'workflow': WorkflowStatusResponseFromJSON(json['workflow']),
110
- 'operation': json['operation'] == null ? undefined : WebhookOperationContextFromJSON(json['operation']),
111
- };
112
- }
113
-
114
- export function WebhookPayloadToJSON(json: any): WebhookPayload {
115
- return WebhookPayloadToJSONTyped(json, false);
116
- }
117
-
118
- export function WebhookPayloadToJSONTyped(value?: WebhookPayload | null, ignoreDiscriminator: boolean = false): any {
119
- if (value == null) {
120
- return value;
121
- }
122
-
123
- return {
124
-
125
- 'event_type': CallbackEventTypeToJSON(value['eventType']),
126
- 'delivery_id': value['deliveryId'],
127
- 'timestamp': ((value['timestamp']).toISOString()),
128
- 'workflow': WorkflowStatusResponseToJSON(value['workflow']),
129
- 'operation': WebhookOperationContextToJSON(value['operation']),
130
- };
131
- }
132
-
@@ -1,143 +0,0 @@
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
6
- *
7
- * The version of the OpenAPI document: 2.0.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
- import { mapValues } from '../runtime';
16
- import type { WorkflowEdge } from './WorkflowEdge';
17
- import {
18
- WorkflowEdgeFromJSON,
19
- WorkflowEdgeFromJSONTyped,
20
- WorkflowEdgeToJSON,
21
- WorkflowEdgeToJSONTyped,
22
- } from './WorkflowEdge';
23
- import type { CallbackEventType } from './CallbackEventType';
24
- import {
25
- CallbackEventTypeFromJSON,
26
- CallbackEventTypeFromJSONTyped,
27
- CallbackEventTypeToJSON,
28
- CallbackEventTypeToJSONTyped,
29
- } from './CallbackEventType';
30
- import type { ExportConfig } from './ExportConfig';
31
- import {
32
- ExportConfigFromJSON,
33
- ExportConfigFromJSONTyped,
34
- ExportConfigToJSON,
35
- ExportConfigToJSONTyped,
36
- } from './ExportConfig';
37
- import type { JobDefinition } from './JobDefinition';
38
- import {
39
- JobDefinitionFromJSON,
40
- JobDefinitionFromJSONTyped,
41
- JobDefinitionToJSON,
42
- JobDefinitionToJSONTyped,
43
- } from './JobDefinition';
44
-
45
- /**
46
- *
47
- * @export
48
- * @interface WorkflowCreateRequest
49
- */
50
- export interface WorkflowCreateRequest {
51
- /**
52
- * List of jobs in this workflow
53
- * @type {Array<JobDefinition>}
54
- * @memberof WorkflowCreateRequest
55
- */
56
- jobs: Array<JobDefinition>;
57
- /**
58
- * DAG dependency edges between jobs. Each edge defines that a downstream
59
- * job depends on an upstream job's output. Jobs with no incoming edges
60
- * start immediately. Jobs with dependencies wait for all upstream jobs.
61
- *
62
- * @type {Array<WorkflowEdge>}
63
- * @memberof WorkflowCreateRequest
64
- */
65
- workflowEdges?: Array<WorkflowEdge>;
66
- /**
67
- * Webhook URL (HTTPS only). The API POSTs a `WebhookPayload` JSON body to
68
- * this URL when matching events occur. The payload includes event type,
69
- * delivery ID, timestamp, and full workflow state with job results and
70
- * download URLs. Must use HTTPS to prevent credential leakage and SSRF
71
- * against internal endpoints.
72
- *
73
- * **Signature verification:**
74
- * Each request includes an `X-GIS-Signature` header containing an
75
- * HMAC-SHA256 hex digest of the raw request body, using the per-workflow
76
- * `webhook_secret` (returned in the workflow creation response) as the key.
77
- * Header format: `sha256=<hex(hmac-sha256(webhook_secret, raw_body))>`.
78
- * Consumers MUST verify the signature before processing the payload.
79
- *
80
- * @type {string}
81
- * @memberof WorkflowCreateRequest
82
- */
83
- callbackUrl?: string | null;
84
- /**
85
- * Which events trigger the webhook callback. Defaults to terminal events only.
86
- *
87
- * @type {Array<CallbackEventType>}
88
- * @memberof WorkflowCreateRequest
89
- */
90
- callbackEvents?: Array<CallbackEventType>;
91
- /**
92
- *
93
- * @type {ExportConfig}
94
- * @memberof WorkflowCreateRequest
95
- */
96
- _export?: ExportConfig;
97
- }
98
-
99
- /**
100
- * Check if a given object implements the WorkflowCreateRequest interface.
101
- */
102
- export function instanceOfWorkflowCreateRequest(value: object): value is WorkflowCreateRequest {
103
- if (!('jobs' in value) || value['jobs'] === undefined) return false;
104
- return true;
105
- }
106
-
107
- export function WorkflowCreateRequestFromJSON(json: any): WorkflowCreateRequest {
108
- return WorkflowCreateRequestFromJSONTyped(json, false);
109
- }
110
-
111
- export function WorkflowCreateRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): WorkflowCreateRequest {
112
- if (json == null) {
113
- return json;
114
- }
115
- return {
116
-
117
- 'jobs': ((json['jobs'] as Array<any>).map(JobDefinitionFromJSON)),
118
- 'workflowEdges': json['workflow_edges'] == null ? undefined : ((json['workflow_edges'] as Array<any>).map(WorkflowEdgeFromJSON)),
119
- 'callbackUrl': json['callback_url'] == null ? undefined : json['callback_url'],
120
- 'callbackEvents': json['callback_events'] == null ? undefined : ((json['callback_events'] as Array<any>).map(CallbackEventTypeFromJSON)),
121
- '_export': json['export'] == null ? undefined : ExportConfigFromJSON(json['export']),
122
- };
123
- }
124
-
125
- export function WorkflowCreateRequestToJSON(json: any): WorkflowCreateRequest {
126
- return WorkflowCreateRequestToJSONTyped(json, false);
127
- }
128
-
129
- export function WorkflowCreateRequestToJSONTyped(value?: WorkflowCreateRequest | null, ignoreDiscriminator: boolean = false): any {
130
- if (value == null) {
131
- return value;
132
- }
133
-
134
- return {
135
-
136
- 'jobs': ((value['jobs'] as Array<any>).map(JobDefinitionToJSON)),
137
- 'workflow_edges': value['workflowEdges'] == null ? undefined : ((value['workflowEdges'] as Array<any>).map(WorkflowEdgeToJSON)),
138
- 'callback_url': value['callbackUrl'],
139
- 'callback_events': value['callbackEvents'] == null ? undefined : ((value['callbackEvents'] as Array<any>).map(CallbackEventTypeToJSON)),
140
- 'export': ExportConfigToJSON(value['_export']),
141
- };
142
- }
143
-
@@ -1,114 +0,0 @@
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
6
- *
7
- * The version of the OpenAPI document: 2.0.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
- import { mapValues } from '../runtime';
16
- import type { JobResponse } from './JobResponse';
17
- import {
18
- JobResponseFromJSON,
19
- JobResponseFromJSONTyped,
20
- JobResponseToJSON,
21
- JobResponseToJSONTyped,
22
- } from './JobResponse';
23
- import type { WorkflowStatus } from './WorkflowStatus';
24
- import {
25
- WorkflowStatusFromJSON,
26
- WorkflowStatusFromJSONTyped,
27
- WorkflowStatusToJSON,
28
- WorkflowStatusToJSONTyped,
29
- } from './WorkflowStatus';
30
-
31
- /**
32
- *
33
- * @export
34
- * @interface WorkflowCreateResponse
35
- */
36
- export interface WorkflowCreateResponse {
37
- /**
38
- * UUID v7 format identifier (time-ordered)
39
- * @type {string}
40
- * @memberof WorkflowCreateResponse
41
- */
42
- workflowId: string;
43
- /**
44
- *
45
- * @type {WorkflowStatus}
46
- * @memberof WorkflowCreateResponse
47
- */
48
- status: WorkflowStatus;
49
- /**
50
- *
51
- * @type {Array<JobResponse>}
52
- * @memberof WorkflowCreateResponse
53
- */
54
- jobs: Array<JobResponse>;
55
- /**
56
- * HMAC-SHA256 signing key for webhook verification. Present only when
57
- * `callback_url` was provided in the request. This is the only time the
58
- * secret is exposed — it does not appear in status queries.
59
- *
60
- * Use this key to verify the `X-GIS-Signature` header on incoming webhook
61
- * requests: `sha256=<hex(hmac-sha256(webhook_secret, raw_body))>`.
62
- *
63
- * @type {string}
64
- * @memberof WorkflowCreateResponse
65
- */
66
- readonly webhookSecret?: string | null;
67
- }
68
-
69
-
70
-
71
- /**
72
- * Check if a given object implements the WorkflowCreateResponse interface.
73
- */
74
- export function instanceOfWorkflowCreateResponse(value: object): value is WorkflowCreateResponse {
75
- if (!('workflowId' in value) || value['workflowId'] === undefined) return false;
76
- if (!('status' in value) || value['status'] === undefined) return false;
77
- if (!('jobs' in value) || value['jobs'] === undefined) return false;
78
- return true;
79
- }
80
-
81
- export function WorkflowCreateResponseFromJSON(json: any): WorkflowCreateResponse {
82
- return WorkflowCreateResponseFromJSONTyped(json, false);
83
- }
84
-
85
- export function WorkflowCreateResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): WorkflowCreateResponse {
86
- if (json == null) {
87
- return json;
88
- }
89
- return {
90
-
91
- 'workflowId': json['workflow_id'],
92
- 'status': WorkflowStatusFromJSON(json['status']),
93
- 'jobs': ((json['jobs'] as Array<any>).map(JobResponseFromJSON)),
94
- 'webhookSecret': json['webhook_secret'] == null ? undefined : json['webhook_secret'],
95
- };
96
- }
97
-
98
- export function WorkflowCreateResponseToJSON(json: any): WorkflowCreateResponse {
99
- return WorkflowCreateResponseToJSONTyped(json, false);
100
- }
101
-
102
- export function WorkflowCreateResponseToJSONTyped(value?: Omit<WorkflowCreateResponse, 'webhook_secret'> | null, ignoreDiscriminator: boolean = false): any {
103
- if (value == null) {
104
- return value;
105
- }
106
-
107
- return {
108
-
109
- 'workflow_id': value['workflowId'],
110
- 'status': WorkflowStatusToJSON(value['status']),
111
- 'jobs': ((value['jobs'] as Array<any>).map(JobResponseToJSON)),
112
- };
113
- }
114
-
@@ -1,101 +0,0 @@
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, watermark, merge, archive, convert) - 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 (CDN-cacheable), health probes return flat objects, and `POST /api/contact` returns 204 with no body.
6
- *
7
- * The version of the OpenAPI document: 2.0.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
- import { mapValues } from '../runtime';
16
- import type { JobResponse } from './JobResponse';
17
- import {
18
- JobResponseFromJSON,
19
- JobResponseFromJSONTyped,
20
- JobResponseToJSON,
21
- JobResponseToJSONTyped,
22
- } from './JobResponse';
23
- import type { WorkflowStatus } from './WorkflowStatus';
24
- import {
25
- WorkflowStatusFromJSON,
26
- WorkflowStatusFromJSONTyped,
27
- WorkflowStatusToJSON,
28
- WorkflowStatusToJSONTyped,
29
- } from './WorkflowStatus';
30
-
31
- /**
32
- *
33
- * @export
34
- * @interface WorkflowStatusResponse
35
- */
36
- export interface WorkflowStatusResponse {
37
- /**
38
- * UUID v7 format identifier (time-ordered)
39
- * @type {string}
40
- * @memberof WorkflowStatusResponse
41
- */
42
- workflowId: string;
43
- /**
44
- *
45
- * @type {WorkflowStatus}
46
- * @memberof WorkflowStatusResponse
47
- */
48
- status: WorkflowStatus;
49
- /**
50
- *
51
- * @type {Array<JobResponse>}
52
- * @memberof WorkflowStatusResponse
53
- */
54
- jobs: Array<JobResponse>;
55
- }
56
-
57
-
58
-
59
- /**
60
- * Check if a given object implements the WorkflowStatusResponse interface.
61
- */
62
- export function instanceOfWorkflowStatusResponse(value: object): value is WorkflowStatusResponse {
63
- if (!('workflowId' in value) || value['workflowId'] === undefined) return false;
64
- if (!('status' in value) || value['status'] === undefined) return false;
65
- if (!('jobs' in value) || value['jobs'] === undefined) return false;
66
- return true;
67
- }
68
-
69
- export function WorkflowStatusResponseFromJSON(json: any): WorkflowStatusResponse {
70
- return WorkflowStatusResponseFromJSONTyped(json, false);
71
- }
72
-
73
- export function WorkflowStatusResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): WorkflowStatusResponse {
74
- if (json == null) {
75
- return json;
76
- }
77
- return {
78
-
79
- 'workflowId': json['workflow_id'],
80
- 'status': WorkflowStatusFromJSON(json['status']),
81
- 'jobs': ((json['jobs'] as Array<any>).map(JobResponseFromJSON)),
82
- };
83
- }
84
-
85
- export function WorkflowStatusResponseToJSON(json: any): WorkflowStatusResponse {
86
- return WorkflowStatusResponseToJSONTyped(json, false);
87
- }
88
-
89
- export function WorkflowStatusResponseToJSONTyped(value?: WorkflowStatusResponse | null, ignoreDiscriminator: boolean = false): any {
90
- if (value == null) {
91
- return value;
92
- }
93
-
94
- return {
95
-
96
- 'workflow_id': value['workflowId'],
97
- 'status': WorkflowStatusToJSON(value['status']),
98
- 'jobs': ((value['jobs'] as Array<any>).map(JobResponseToJSON)),
99
- };
100
- }
101
-
@@ -1,64 +0,0 @@
1
- /* tslint:disable */
2
- /* eslint-disable */
3
- export * from './CallbackEventType';
4
- export * from './ContactRequest';
5
- export * from './ContactSubject';
6
- export * from './ContactValidationErrorResponse';
7
- export * from './ErrorEnvelope';
8
- export * from './ExportConfig';
9
- export * from './JobDefinition';
10
- export * from './JobDownload';
11
- export * from './JobInput';
12
- export * from './JobResponse';
13
- export * from './JobSource';
14
- export * from './JobStatus';
15
- export * from './JobType';
16
- export * from './LivenessResponse';
17
- export * from './MetadataResponse';
18
- export * from './MetadataResponseDimensions';
19
- export * from './MetadataResponseExif';
20
- export * from './MetadataResponseExifGps';
21
- export * from './MetadataSuccessEnvelope';
22
- export * from './MimeGroupSchema';
23
- export * from './MultipartCompleteRequest';
24
- export * from './MultipartCompleteRequestPartsInner';
25
- export * from './MultipartInitiateResponse';
26
- export * from './MultipartInitiateSuccessEnvelope';
27
- export * from './OperationDefinition';
28
- export * from './OperationDownload';
29
- export * from './OperationInputModel';
30
- export * from './OperationResponse';
31
- export * from './OperationResult';
32
- export * from './OperationResultMetrics';
33
- export * from './OperationSchemaDefinition';
34
- export * from './OperationStatus';
35
- export * from './OperationType';
36
- export * from './OperationsSchemaResponse';
37
- export * from './OptionSchema';
38
- export * from './PresignedUrlPart';
39
- export * from './ReadinessResponse';
40
- export * from './ResponseEnvelope';
41
- export * from './RetryResponse';
42
- export * from './RetrySuccessEnvelope';
43
- export * from './SseEventType';
44
- export * from './SseJobCompletedData';
45
- export * from './SseJobFailedData';
46
- export * from './SseOperationCompletedData';
47
- export * from './SseOperationFailedData';
48
- export * from './SseOperationProgressData';
49
- export * from './SseWorkflowTerminalData';
50
- export * from './UploadResponse';
51
- export * from './UploadSuccessEnvelope';
52
- export * from './ValidationErrorEnvelope';
53
- export * from './ValidationErrorEnvelopeDetailsInner';
54
- export * from './WebhookOperationContext';
55
- export * from './WebhookPayload';
56
- export * from './WorkflowCreateRequest';
57
- export * from './WorkflowCreateResponse';
58
- export * from './WorkflowCreateSuccessEnvelope';
59
- export * from './WorkflowDownloadResponse';
60
- export * from './WorkflowDownloadSuccessEnvelope';
61
- export * from './WorkflowEdge';
62
- export * from './WorkflowStatus';
63
- export * from './WorkflowStatusResponse';
64
- export * from './WorkflowStatusSuccessEnvelope';
@@ -1,17 +0,0 @@
1
- # TypeScript -- Operation Option Models
2
-
3
- > **Auto-generated** -- do not edit manually. Changes will be overwritten on the next generation run.
4
- >
5
- > Regenerate with: `make project/generate-tests`
6
-
7
- ## Source
8
-
9
- - **Spec:** `compression_contracts/schemas/operations/*.yaml` (custom schema format)
10
- - **Generator:** Custom Python emitter (`scripts/generators/operation_schema/typescript.py`)
11
- - **Files:** 6
12
-
13
- ## Contents
14
-
15
- TypeScript enums and interfaces for per-operation options (compression quality, thumbnail dimensions, conversion formats, etc.).
16
-
17
- Operation types covered: compress, convert, merge, thumbnail, archive.