imagekitio 3.0.0 → 4.0.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 (483) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +116 -0
  4. data/README.md +538 -679
  5. data/SECURITY.md +27 -0
  6. data/lib/imagekitio/client.rb +122 -195
  7. data/lib/imagekitio/errors.rb +226 -2
  8. data/lib/imagekitio/file_part.rb +58 -0
  9. data/lib/imagekitio/helpers/crypto_utils.rb +25 -0
  10. data/lib/imagekitio/helpers/helper.rb +689 -0
  11. data/lib/imagekitio/helpers/transformation_utils.rb +164 -0
  12. data/lib/imagekitio/helpers/uuid_utils.rb +18 -0
  13. data/lib/imagekitio/internal/transport/base_client.rb +567 -0
  14. data/lib/imagekitio/internal/transport/pooled_net_requester.rb +217 -0
  15. data/lib/imagekitio/internal/type/array_of.rb +168 -0
  16. data/lib/imagekitio/internal/type/base_model.rb +530 -0
  17. data/lib/imagekitio/internal/type/base_page.rb +55 -0
  18. data/lib/imagekitio/internal/type/boolean.rb +77 -0
  19. data/lib/imagekitio/internal/type/converter.rb +327 -0
  20. data/lib/imagekitio/internal/type/enum.rb +156 -0
  21. data/lib/imagekitio/internal/type/file_input.rb +111 -0
  22. data/lib/imagekitio/internal/type/hash_of.rb +188 -0
  23. data/lib/imagekitio/internal/type/request_parameters.rb +42 -0
  24. data/lib/imagekitio/internal/type/union.rb +250 -0
  25. data/lib/imagekitio/internal/type/unknown.rb +81 -0
  26. data/lib/imagekitio/internal/util.rb +915 -0
  27. data/lib/imagekitio/internal.rb +20 -0
  28. data/lib/imagekitio/models/accounts/origin_create_params.rb +24 -0
  29. data/lib/imagekitio/models/accounts/origin_delete_params.rb +16 -0
  30. data/lib/imagekitio/models/accounts/origin_get_params.rb +16 -0
  31. data/lib/imagekitio/models/accounts/origin_list_params.rb +16 -0
  32. data/lib/imagekitio/models/accounts/origin_list_response.rb +11 -0
  33. data/lib/imagekitio/models/accounts/origin_request.rb +547 -0
  34. data/lib/imagekitio/models/accounts/origin_response.rb +568 -0
  35. data/lib/imagekitio/models/accounts/origin_update_params.rb +24 -0
  36. data/lib/imagekitio/models/accounts/url_endpoint_create_params.rb +16 -0
  37. data/lib/imagekitio/models/accounts/url_endpoint_delete_params.rb +16 -0
  38. data/lib/imagekitio/models/accounts/url_endpoint_get_params.rb +16 -0
  39. data/lib/imagekitio/models/accounts/url_endpoint_list_params.rb +16 -0
  40. data/lib/imagekitio/models/accounts/url_endpoint_list_response.rb +11 -0
  41. data/lib/imagekitio/models/accounts/url_endpoint_request.rb +110 -0
  42. data/lib/imagekitio/models/accounts/url_endpoint_response.rb +123 -0
  43. data/lib/imagekitio/models/accounts/url_endpoint_update_params.rb +16 -0
  44. data/lib/imagekitio/models/accounts/usage_get_params.rb +37 -0
  45. data/lib/imagekitio/models/accounts/usage_get_response.rb +51 -0
  46. data/lib/imagekitio/models/asset_list_params.rb +158 -0
  47. data/lib/imagekitio/models/asset_list_response.rb +24 -0
  48. data/lib/imagekitio/models/base_overlay.rb +21 -0
  49. data/lib/imagekitio/models/base_webhook_event.rb +24 -0
  50. data/lib/imagekitio/models/beta/v2/file_upload_params.rb +510 -0
  51. data/lib/imagekitio/models/beta/v2/file_upload_response.rb +618 -0
  52. data/lib/imagekitio/models/cache/invalidation_create_params.rb +27 -0
  53. data/lib/imagekitio/models/cache/invalidation_create_response.rb +23 -0
  54. data/lib/imagekitio/models/cache/invalidation_get_params.rb +16 -0
  55. data/lib/imagekitio/models/cache/invalidation_get_response.rb +35 -0
  56. data/lib/imagekitio/models/custom_metadata_field.rb +243 -0
  57. data/lib/imagekitio/models/custom_metadata_field_create_params.rb +238 -0
  58. data/lib/imagekitio/models/custom_metadata_field_delete_params.rb +14 -0
  59. data/lib/imagekitio/models/custom_metadata_field_delete_response.rb +10 -0
  60. data/lib/imagekitio/models/custom_metadata_field_list_params.rb +36 -0
  61. data/lib/imagekitio/models/custom_metadata_field_list_response.rb +9 -0
  62. data/lib/imagekitio/models/custom_metadata_field_update_params.rb +212 -0
  63. data/lib/imagekitio/models/extensions.rb +136 -0
  64. data/lib/imagekitio/models/file.rb +497 -0
  65. data/lib/imagekitio/models/file_copy_params.rb +43 -0
  66. data/lib/imagekitio/models/file_copy_response.rb +10 -0
  67. data/lib/imagekitio/models/file_delete_params.rb +14 -0
  68. data/lib/imagekitio/models/file_get_params.rb +14 -0
  69. data/lib/imagekitio/models/file_move_params.rb +33 -0
  70. data/lib/imagekitio/models/file_move_response.rb +10 -0
  71. data/lib/imagekitio/models/file_rename_params.rb +61 -0
  72. data/lib/imagekitio/models/file_rename_response.rb +21 -0
  73. data/lib/imagekitio/models/file_update_params.rb +22 -0
  74. data/lib/imagekitio/models/file_update_response.rb +104 -0
  75. data/lib/imagekitio/models/file_upload_params.rb +540 -0
  76. data/lib/imagekitio/models/file_upload_response.rb +611 -0
  77. data/lib/imagekitio/models/files/bulk_add_tags_params.rb +35 -0
  78. data/lib/imagekitio/models/files/bulk_add_tags_response.rb +24 -0
  79. data/lib/imagekitio/models/files/bulk_delete_params.rb +27 -0
  80. data/lib/imagekitio/models/files/bulk_delete_response.rb +24 -0
  81. data/lib/imagekitio/models/files/bulk_remove_ai_tags_params.rb +35 -0
  82. data/lib/imagekitio/models/files/bulk_remove_ai_tags_response.rb +24 -0
  83. data/lib/imagekitio/models/files/bulk_remove_tags_params.rb +35 -0
  84. data/lib/imagekitio/models/files/bulk_remove_tags_response.rb +24 -0
  85. data/lib/imagekitio/models/files/metadata_get_from_url_params.rb +28 -0
  86. data/lib/imagekitio/models/files/metadata_get_params.rb +16 -0
  87. data/lib/imagekitio/models/files/version_delete_params.rb +22 -0
  88. data/lib/imagekitio/models/files/version_delete_response.rb +12 -0
  89. data/lib/imagekitio/models/files/version_get_params.rb +22 -0
  90. data/lib/imagekitio/models/files/version_list_params.rb +16 -0
  91. data/lib/imagekitio/models/files/version_list_response.rb +10 -0
  92. data/lib/imagekitio/models/files/version_restore_params.rb +22 -0
  93. data/lib/imagekitio/models/folder.rb +76 -0
  94. data/lib/imagekitio/models/folder_copy_params.rb +44 -0
  95. data/lib/imagekitio/models/folder_copy_response.rb +23 -0
  96. data/lib/imagekitio/models/folder_create_params.rb +43 -0
  97. data/lib/imagekitio/models/folder_create_response.rb +10 -0
  98. data/lib/imagekitio/models/folder_delete_params.rb +25 -0
  99. data/lib/imagekitio/models/folder_delete_response.rb +10 -0
  100. data/lib/imagekitio/models/folder_move_params.rb +34 -0
  101. data/lib/imagekitio/models/folder_move_response.rb +23 -0
  102. data/lib/imagekitio/models/folder_rename_params.rb +59 -0
  103. data/lib/imagekitio/models/folder_rename_response.rb +23 -0
  104. data/lib/imagekitio/models/folders/job_get_params.rb +16 -0
  105. data/lib/imagekitio/models/folders/job_get_response.rb +74 -0
  106. data/lib/imagekitio/models/get_image_attributes_options.rb +68 -0
  107. data/lib/imagekitio/models/image_overlay.rb +66 -0
  108. data/lib/imagekitio/models/metadata.rb +483 -0
  109. data/lib/imagekitio/models/overlay.rb +28 -0
  110. data/lib/imagekitio/models/overlay_position.rb +101 -0
  111. data/lib/imagekitio/models/overlay_timing.rb +97 -0
  112. data/lib/imagekitio/models/responsive_image_attributes.rb +48 -0
  113. data/lib/imagekitio/models/solid_color_overlay.rb +42 -0
  114. data/lib/imagekitio/models/solid_color_overlay_transformation.rb +135 -0
  115. data/lib/imagekitio/models/src_options.rb +96 -0
  116. data/lib/imagekitio/models/streaming_resolution.rb +22 -0
  117. data/lib/imagekitio/models/subtitle_overlay.rb +64 -0
  118. data/lib/imagekitio/models/subtitle_overlay_transformation.rb +113 -0
  119. data/lib/imagekitio/models/text_overlay.rb +65 -0
  120. data/lib/imagekitio/models/text_overlay_transformation.rb +267 -0
  121. data/lib/imagekitio/models/transformation.rb +1100 -0
  122. data/lib/imagekitio/models/transformation_position.rb +19 -0
  123. data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +36 -0
  124. data/lib/imagekitio/models/unwrap_webhook_event.rb +36 -0
  125. data/lib/imagekitio/models/update_file_request.rb +164 -0
  126. data/lib/imagekitio/models/upload_post_transform_error_event.rb +180 -0
  127. data/lib/imagekitio/models/upload_post_transform_success_event.rb +143 -0
  128. data/lib/imagekitio/models/upload_pre_transform_error_event.rb +108 -0
  129. data/lib/imagekitio/models/upload_pre_transform_success_event.rb +690 -0
  130. data/lib/imagekitio/models/video_overlay.rb +64 -0
  131. data/lib/imagekitio/models/video_transformation_accepted_event.rb +279 -0
  132. data/lib/imagekitio/models/video_transformation_error_event.rb +326 -0
  133. data/lib/imagekitio/models/video_transformation_ready_event.rb +379 -0
  134. data/lib/imagekitio/models/webhook_unsafe_unwrap_params.rb +14 -0
  135. data/lib/imagekitio/models/webhook_unwrap_params.rb +14 -0
  136. data/lib/imagekitio/models.rb +160 -0
  137. data/lib/imagekitio/request_options.rb +77 -0
  138. data/lib/imagekitio/resources/accounts/origins.rb +145 -0
  139. data/lib/imagekitio/resources/accounts/url_endpoints.rb +151 -0
  140. data/lib/imagekitio/resources/accounts/usage.rb +46 -0
  141. data/lib/imagekitio/resources/accounts.rb +26 -0
  142. data/lib/imagekitio/resources/assets.rb +54 -0
  143. data/lib/imagekitio/resources/beta/v2/files.rb +110 -0
  144. data/lib/imagekitio/resources/beta/v2.rb +20 -0
  145. data/lib/imagekitio/resources/beta.rb +18 -0
  146. data/lib/imagekitio/resources/cache/invalidation.rb +66 -0
  147. data/lib/imagekitio/resources/cache.rb +18 -0
  148. data/lib/imagekitio/resources/custom_metadata_fields.rb +133 -0
  149. data/lib/imagekitio/resources/files/bulk.rb +131 -0
  150. data/lib/imagekitio/resources/files/metadata.rb +69 -0
  151. data/lib/imagekitio/resources/files/versions.rb +132 -0
  152. data/lib/imagekitio/resources/files.rb +305 -0
  153. data/lib/imagekitio/resources/folders/job.rb +39 -0
  154. data/lib/imagekitio/resources/folders.rb +166 -0
  155. data/lib/imagekitio/resources/webhooks.rb +30 -0
  156. data/lib/imagekitio/version.rb +5 -0
  157. data/lib/imagekitio.rb +181 -13
  158. data/manifest.yaml +15 -0
  159. data/rbi/imagekitio/client.rbi +92 -0
  160. data/rbi/imagekitio/errors.rbi +205 -0
  161. data/rbi/imagekitio/file_part.rbi +37 -0
  162. data/rbi/imagekitio/helpers/helper.rbi +41 -0
  163. data/rbi/imagekitio/internal/transport/base_client.rbi +295 -0
  164. data/rbi/imagekitio/internal/transport/pooled_net_requester.rbi +80 -0
  165. data/rbi/imagekitio/internal/type/array_of.rbi +104 -0
  166. data/rbi/imagekitio/internal/type/base_model.rbi +304 -0
  167. data/rbi/imagekitio/internal/type/base_page.rbi +42 -0
  168. data/rbi/imagekitio/internal/type/boolean.rbi +58 -0
  169. data/rbi/imagekitio/internal/type/converter.rbi +216 -0
  170. data/rbi/imagekitio/internal/type/enum.rbi +82 -0
  171. data/rbi/imagekitio/internal/type/file_input.rbi +59 -0
  172. data/rbi/imagekitio/internal/type/hash_of.rbi +104 -0
  173. data/rbi/imagekitio/internal/type/request_parameters.rbi +29 -0
  174. data/rbi/imagekitio/internal/type/union.rbi +128 -0
  175. data/rbi/imagekitio/internal/type/unknown.rbi +58 -0
  176. data/rbi/imagekitio/internal/util.rbi +487 -0
  177. data/rbi/imagekitio/internal.rbi +18 -0
  178. data/rbi/imagekitio/models/accounts/origin_create_params.rbi +81 -0
  179. data/rbi/imagekitio/models/accounts/origin_delete_params.rbi +34 -0
  180. data/rbi/imagekitio/models/accounts/origin_get_params.rbi +34 -0
  181. data/rbi/imagekitio/models/accounts/origin_list_params.rbi +34 -0
  182. data/rbi/imagekitio/models/accounts/origin_list_response.rbi +15 -0
  183. data/rbi/imagekitio/models/accounts/origin_request.rbi +775 -0
  184. data/rbi/imagekitio/models/accounts/origin_response.rbi +718 -0
  185. data/rbi/imagekitio/models/accounts/origin_update_params.rbi +81 -0
  186. data/rbi/imagekitio/models/accounts/url_endpoint_create_params.rbi +34 -0
  187. data/rbi/imagekitio/models/accounts/url_endpoint_delete_params.rbi +34 -0
  188. data/rbi/imagekitio/models/accounts/url_endpoint_get_params.rbi +34 -0
  189. data/rbi/imagekitio/models/accounts/url_endpoint_list_params.rbi +34 -0
  190. data/rbi/imagekitio/models/accounts/url_endpoint_list_response.rbi +15 -0
  191. data/rbi/imagekitio/models/accounts/url_endpoint_request.rbi +218 -0
  192. data/rbi/imagekitio/models/accounts/url_endpoint_response.rbi +213 -0
  193. data/rbi/imagekitio/models/accounts/url_endpoint_update_params.rbi +34 -0
  194. data/rbi/imagekitio/models/accounts/usage_get_params.rbi +60 -0
  195. data/rbi/imagekitio/models/accounts/usage_get_response.rbi +89 -0
  196. data/rbi/imagekitio/models/asset_list_params.rbi +281 -0
  197. data/rbi/imagekitio/models/asset_list_response.rbi +28 -0
  198. data/rbi/imagekitio/models/base_overlay.rbi +44 -0
  199. data/rbi/imagekitio/models/base_webhook_event.rbi +33 -0
  200. data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +861 -0
  201. data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +1197 -0
  202. data/rbi/imagekitio/models/cache/invalidation_create_params.rbi +45 -0
  203. data/rbi/imagekitio/models/cache/invalidation_create_response.rbi +37 -0
  204. data/rbi/imagekitio/models/cache/invalidation_get_params.rbi +34 -0
  205. data/rbi/imagekitio/models/cache/invalidation_get_response.rbi +93 -0
  206. data/rbi/imagekitio/models/custom_metadata_field.rbi +422 -0
  207. data/rbi/imagekitio/models/custom_metadata_field_create_params.rbi +443 -0
  208. data/rbi/imagekitio/models/custom_metadata_field_delete_params.rbi +30 -0
  209. data/rbi/imagekitio/models/custom_metadata_field_delete_response.rbi +23 -0
  210. data/rbi/imagekitio/models/custom_metadata_field_list_params.rbi +66 -0
  211. data/rbi/imagekitio/models/custom_metadata_field_list_response.rbi +11 -0
  212. data/rbi/imagekitio/models/custom_metadata_field_update_params.rbi +376 -0
  213. data/rbi/imagekitio/models/extensions.rbi +274 -0
  214. data/rbi/imagekitio/models/file.rbi +789 -0
  215. data/rbi/imagekitio/models/file_copy_params.rbi +66 -0
  216. data/rbi/imagekitio/models/file_copy_response.rbi +23 -0
  217. data/rbi/imagekitio/models/file_delete_params.rbi +27 -0
  218. data/rbi/imagekitio/models/file_get_params.rbi +27 -0
  219. data/rbi/imagekitio/models/file_move_params.rbi +51 -0
  220. data/rbi/imagekitio/models/file_move_response.rbi +23 -0
  221. data/rbi/imagekitio/models/file_rename_params.rbi +102 -0
  222. data/rbi/imagekitio/models/file_rename_response.rbi +35 -0
  223. data/rbi/imagekitio/models/file_update_params.rbi +58 -0
  224. data/rbi/imagekitio/models/file_update_response.rbi +322 -0
  225. data/rbi/imagekitio/models/file_upload_params.rbi +897 -0
  226. data/rbi/imagekitio/models/file_upload_response.rbi +1176 -0
  227. data/rbi/imagekitio/models/files/bulk_add_tags_params.rbi +56 -0
  228. data/rbi/imagekitio/models/files/bulk_add_tags_response.rbi +41 -0
  229. data/rbi/imagekitio/models/files/bulk_delete_params.rbi +48 -0
  230. data/rbi/imagekitio/models/files/bulk_delete_response.rbi +41 -0
  231. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_params.rbi +56 -0
  232. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_response.rbi +41 -0
  233. data/rbi/imagekitio/models/files/bulk_remove_tags_params.rbi +56 -0
  234. data/rbi/imagekitio/models/files/bulk_remove_tags_response.rbi +41 -0
  235. data/rbi/imagekitio/models/files/metadata_get_from_url_params.rbi +47 -0
  236. data/rbi/imagekitio/models/files/metadata_get_params.rbi +34 -0
  237. data/rbi/imagekitio/models/files/version_delete_params.rbi +40 -0
  238. data/rbi/imagekitio/models/files/version_delete_response.rbi +25 -0
  239. data/rbi/imagekitio/models/files/version_get_params.rbi +40 -0
  240. data/rbi/imagekitio/models/files/version_list_params.rbi +34 -0
  241. data/rbi/imagekitio/models/files/version_list_response.rbi +13 -0
  242. data/rbi/imagekitio/models/files/version_restore_params.rbi +40 -0
  243. data/rbi/imagekitio/models/folder.rbi +121 -0
  244. data/rbi/imagekitio/models/folder_copy_params.rbi +68 -0
  245. data/rbi/imagekitio/models/folder_copy_response.rbi +33 -0
  246. data/rbi/imagekitio/models/folder_create_params.rbi +71 -0
  247. data/rbi/imagekitio/models/folder_create_response.rbi +23 -0
  248. data/rbi/imagekitio/models/folder_delete_params.rbi +40 -0
  249. data/rbi/imagekitio/models/folder_delete_response.rbi +23 -0
  250. data/rbi/imagekitio/models/folder_move_params.rbi +53 -0
  251. data/rbi/imagekitio/models/folder_move_response.rbi +33 -0
  252. data/rbi/imagekitio/models/folder_rename_params.rbi +98 -0
  253. data/rbi/imagekitio/models/folder_rename_response.rbi +33 -0
  254. data/rbi/imagekitio/models/folders/job_get_params.rbi +34 -0
  255. data/rbi/imagekitio/models/folders/job_get_response.rbi +173 -0
  256. data/rbi/imagekitio/models/get_image_attributes_options.rbi +121 -0
  257. data/rbi/imagekitio/models/image_overlay.rbi +109 -0
  258. data/rbi/imagekitio/models/metadata.rbi +813 -0
  259. data/rbi/imagekitio/models/overlay.rbi +28 -0
  260. data/rbi/imagekitio/models/overlay_position.rbi +148 -0
  261. data/rbi/imagekitio/models/overlay_timing.rbi +135 -0
  262. data/rbi/imagekitio/models/responsive_image_attributes.rbi +74 -0
  263. data/rbi/imagekitio/models/solid_color_overlay.rbi +79 -0
  264. data/rbi/imagekitio/models/solid_color_overlay_transformation.rbi +218 -0
  265. data/rbi/imagekitio/models/src_options.rbi +159 -0
  266. data/rbi/imagekitio/models/streaming_resolution.rbi +38 -0
  267. data/rbi/imagekitio/models/subtitle_overlay.rbi +114 -0
  268. data/rbi/imagekitio/models/subtitle_overlay_transformation.rbi +215 -0
  269. data/rbi/imagekitio/models/text_overlay.rbi +110 -0
  270. data/rbi/imagekitio/models/text_overlay_transformation.rbi +451 -0
  271. data/rbi/imagekitio/models/transformation.rbi +1646 -0
  272. data/rbi/imagekitio/models/transformation_position.rbi +28 -0
  273. data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +33 -0
  274. data/rbi/imagekitio/models/unwrap_webhook_event.rbi +31 -0
  275. data/rbi/imagekitio/models/update_file_request.rbi +316 -0
  276. data/rbi/imagekitio/models/upload_post_transform_error_event.rbi +434 -0
  277. data/rbi/imagekitio/models/upload_post_transform_success_event.rbi +327 -0
  278. data/rbi/imagekitio/models/upload_pre_transform_error_event.rbi +244 -0
  279. data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +1300 -0
  280. data/rbi/imagekitio/models/video_overlay.rbi +105 -0
  281. data/rbi/imagekitio/models/video_transformation_accepted_event.rbi +659 -0
  282. data/rbi/imagekitio/models/video_transformation_error_event.rbi +772 -0
  283. data/rbi/imagekitio/models/video_transformation_ready_event.rbi +864 -0
  284. data/rbi/imagekitio/models/webhook_unsafe_unwrap_params.rbi +30 -0
  285. data/rbi/imagekitio/models/webhook_unwrap_params.rbi +27 -0
  286. data/rbi/imagekitio/models.rbi +135 -0
  287. data/rbi/imagekitio/request_options.rbi +59 -0
  288. data/rbi/imagekitio/resources/accounts/origins.rbi +91 -0
  289. data/rbi/imagekitio/resources/accounts/url_endpoints.rbi +129 -0
  290. data/rbi/imagekitio/resources/accounts/usage.rbi +36 -0
  291. data/rbi/imagekitio/resources/accounts.rbi +21 -0
  292. data/rbi/imagekitio/resources/assets.rbi +74 -0
  293. data/rbi/imagekitio/resources/beta/v2/files.rbi +193 -0
  294. data/rbi/imagekitio/resources/beta/v2.rbi +17 -0
  295. data/rbi/imagekitio/resources/beta.rbi +15 -0
  296. data/rbi/imagekitio/resources/cache/invalidation.rbi +44 -0
  297. data/rbi/imagekitio/resources/cache.rbi +15 -0
  298. data/rbi/imagekitio/resources/custom_metadata_fields.rbi +106 -0
  299. data/rbi/imagekitio/resources/files/bulk.rbi +88 -0
  300. data/rbi/imagekitio/resources/files/metadata.rbi +49 -0
  301. data/rbi/imagekitio/resources/files/versions.rbi +89 -0
  302. data/rbi/imagekitio/resources/files.rbi +364 -0
  303. data/rbi/imagekitio/resources/folders/job.rbi +29 -0
  304. data/rbi/imagekitio/resources/folders.rbi +146 -0
  305. data/rbi/imagekitio/resources/webhooks.rbi +50 -0
  306. data/rbi/imagekitio/version.rbi +5 -0
  307. data/sig/imagekitio/client.rbs +47 -0
  308. data/sig/imagekitio/errors.rbs +117 -0
  309. data/sig/imagekitio/file_part.rbs +21 -0
  310. data/sig/imagekitio/helpers/helper.rbs +24 -0
  311. data/sig/imagekitio/internal/transport/base_client.rbs +131 -0
  312. data/sig/imagekitio/internal/transport/pooled_net_requester.rbs +45 -0
  313. data/sig/imagekitio/internal/type/array_of.rbs +48 -0
  314. data/sig/imagekitio/internal/type/base_model.rbs +102 -0
  315. data/sig/imagekitio/internal/type/base_page.rbs +24 -0
  316. data/sig/imagekitio/internal/type/boolean.rbs +26 -0
  317. data/sig/imagekitio/internal/type/converter.rbs +79 -0
  318. data/sig/imagekitio/internal/type/enum.rbs +32 -0
  319. data/sig/imagekitio/internal/type/file_input.rbs +25 -0
  320. data/sig/imagekitio/internal/type/hash_of.rbs +48 -0
  321. data/sig/imagekitio/internal/type/request_parameters.rbs +19 -0
  322. data/sig/imagekitio/internal/type/union.rbs +52 -0
  323. data/sig/imagekitio/internal/type/unknown.rbs +26 -0
  324. data/sig/imagekitio/internal/util.rbs +185 -0
  325. data/sig/imagekitio/internal.rbs +9 -0
  326. data/sig/imagekitio/models/accounts/origin_create_params.rbs +30 -0
  327. data/sig/imagekitio/models/accounts/origin_delete_params.rbs +17 -0
  328. data/sig/imagekitio/models/accounts/origin_get_params.rbs +17 -0
  329. data/sig/imagekitio/models/accounts/origin_list_params.rbs +17 -0
  330. data/sig/imagekitio/models/accounts/origin_list_response.rbs +10 -0
  331. data/sig/imagekitio/models/accounts/origin_request.rbs +468 -0
  332. data/sig/imagekitio/models/accounts/origin_response.rbs +418 -0
  333. data/sig/imagekitio/models/accounts/origin_update_params.rbs +30 -0
  334. data/sig/imagekitio/models/accounts/url_endpoint_create_params.rbs +17 -0
  335. data/sig/imagekitio/models/accounts/url_endpoint_delete_params.rbs +17 -0
  336. data/sig/imagekitio/models/accounts/url_endpoint_get_params.rbs +17 -0
  337. data/sig/imagekitio/models/accounts/url_endpoint_list_params.rbs +17 -0
  338. data/sig/imagekitio/models/accounts/url_endpoint_list_response.rbs +10 -0
  339. data/sig/imagekitio/models/accounts/url_endpoint_request.rbs +97 -0
  340. data/sig/imagekitio/models/accounts/url_endpoint_response.rbs +96 -0
  341. data/sig/imagekitio/models/accounts/url_endpoint_update_params.rbs +17 -0
  342. data/sig/imagekitio/models/accounts/usage_get_params.rbs +30 -0
  343. data/sig/imagekitio/models/accounts/usage_get_response.rbs +52 -0
  344. data/sig/imagekitio/models/asset_list_params.rbs +138 -0
  345. data/sig/imagekitio/models/asset_list_response.rbs +16 -0
  346. data/sig/imagekitio/models/base_overlay.rbs +31 -0
  347. data/sig/imagekitio/models/base_webhook_event.rbs +15 -0
  348. data/sig/imagekitio/models/beta/v2/file_upload_params.rbs +310 -0
  349. data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +487 -0
  350. data/sig/imagekitio/models/cache/invalidation_create_params.rbs +25 -0
  351. data/sig/imagekitio/models/cache/invalidation_create_response.rbs +17 -0
  352. data/sig/imagekitio/models/cache/invalidation_get_params.rbs +17 -0
  353. data/sig/imagekitio/models/cache/invalidation_get_response.rbs +35 -0
  354. data/sig/imagekitio/models/custom_metadata_field.rbs +178 -0
  355. data/sig/imagekitio/models/custom_metadata_field_create_params.rbs +179 -0
  356. data/sig/imagekitio/models/custom_metadata_field_delete_params.rbs +15 -0
  357. data/sig/imagekitio/models/custom_metadata_field_delete_response.rbs +11 -0
  358. data/sig/imagekitio/models/custom_metadata_field_list_params.rbs +32 -0
  359. data/sig/imagekitio/models/custom_metadata_field_list_response.rbs +8 -0
  360. data/sig/imagekitio/models/custom_metadata_field_update_params.rbs +152 -0
  361. data/sig/imagekitio/models/extensions.rbs +132 -0
  362. data/sig/imagekitio/models/file.rbs +384 -0
  363. data/sig/imagekitio/models/file_copy_params.rbs +38 -0
  364. data/sig/imagekitio/models/file_copy_response.rbs +11 -0
  365. data/sig/imagekitio/models/file_delete_params.rbs +15 -0
  366. data/sig/imagekitio/models/file_get_params.rbs +14 -0
  367. data/sig/imagekitio/models/file_move_params.rbs +28 -0
  368. data/sig/imagekitio/models/file_move_response.rbs +11 -0
  369. data/sig/imagekitio/models/file_rename_params.rbs +34 -0
  370. data/sig/imagekitio/models/file_rename_response.rbs +15 -0
  371. data/sig/imagekitio/models/file_update_params.rbs +28 -0
  372. data/sig/imagekitio/models/file_update_response.rbs +120 -0
  373. data/sig/imagekitio/models/file_upload_params.rbs +327 -0
  374. data/sig/imagekitio/models/file_upload_response.rbs +483 -0
  375. data/sig/imagekitio/models/files/bulk_add_tags_params.rbs +30 -0
  376. data/sig/imagekitio/models/files/bulk_add_tags_response.rbs +20 -0
  377. data/sig/imagekitio/models/files/bulk_delete_params.rbs +26 -0
  378. data/sig/imagekitio/models/files/bulk_delete_response.rbs +20 -0
  379. data/sig/imagekitio/models/files/bulk_remove_ai_tags_params.rbs +30 -0
  380. data/sig/imagekitio/models/files/bulk_remove_ai_tags_response.rbs +20 -0
  381. data/sig/imagekitio/models/files/bulk_remove_tags_params.rbs +30 -0
  382. data/sig/imagekitio/models/files/bulk_remove_tags_response.rbs +20 -0
  383. data/sig/imagekitio/models/files/metadata_get_from_url_params.rbs +25 -0
  384. data/sig/imagekitio/models/files/metadata_get_params.rbs +17 -0
  385. data/sig/imagekitio/models/files/version_delete_params.rbs +25 -0
  386. data/sig/imagekitio/models/files/version_delete_response.rbs +13 -0
  387. data/sig/imagekitio/models/files/version_get_params.rbs +25 -0
  388. data/sig/imagekitio/models/files/version_list_params.rbs +17 -0
  389. data/sig/imagekitio/models/files/version_list_response.rbs +9 -0
  390. data/sig/imagekitio/models/files/version_restore_params.rbs +25 -0
  391. data/sig/imagekitio/models/folder.rbs +69 -0
  392. data/sig/imagekitio/models/folder_copy_params.rbs +38 -0
  393. data/sig/imagekitio/models/folder_copy_response.rbs +13 -0
  394. data/sig/imagekitio/models/folder_create_params.rbs +28 -0
  395. data/sig/imagekitio/models/folder_create_response.rbs +11 -0
  396. data/sig/imagekitio/models/folder_delete_params.rbs +23 -0
  397. data/sig/imagekitio/models/folder_delete_response.rbs +11 -0
  398. data/sig/imagekitio/models/folder_move_params.rbs +28 -0
  399. data/sig/imagekitio/models/folder_move_response.rbs +13 -0
  400. data/sig/imagekitio/models/folder_rename_params.rbs +34 -0
  401. data/sig/imagekitio/models/folder_rename_response.rbs +13 -0
  402. data/sig/imagekitio/models/folders/job_get_params.rbs +17 -0
  403. data/sig/imagekitio/models/folders/job_get_response.rbs +72 -0
  404. data/sig/imagekitio/models/get_image_attributes_options.rbs +43 -0
  405. data/sig/imagekitio/models/image_overlay.rbs +59 -0
  406. data/sig/imagekitio/models/metadata.rbs +546 -0
  407. data/sig/imagekitio/models/overlay.rbs +16 -0
  408. data/sig/imagekitio/models/overlay_position.rbs +85 -0
  409. data/sig/imagekitio/models/overlay_timing.rbs +66 -0
  410. data/sig/imagekitio/models/responsive_image_attributes.rbs +36 -0
  411. data/sig/imagekitio/models/solid_color_overlay.rbs +38 -0
  412. data/sig/imagekitio/models/solid_color_overlay_transformation.rbs +97 -0
  413. data/sig/imagekitio/models/src_options.rbs +64 -0
  414. data/sig/imagekitio/models/streaming_resolution.rbs +20 -0
  415. data/sig/imagekitio/models/subtitle_overlay.rbs +59 -0
  416. data/sig/imagekitio/models/subtitle_overlay_transformation.rbs +78 -0
  417. data/sig/imagekitio/models/text_overlay.rbs +59 -0
  418. data/sig/imagekitio/models/text_overlay_transformation.rbs +195 -0
  419. data/sig/imagekitio/models/transformation.rbs +763 -0
  420. data/sig/imagekitio/models/transformation_position.rbs +14 -0
  421. data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +18 -0
  422. data/sig/imagekitio/models/unwrap_webhook_event.rbs +18 -0
  423. data/sig/imagekitio/models/update_file_request.rbs +122 -0
  424. data/sig/imagekitio/models/upload_post_transform_error_event.rbs +192 -0
  425. data/sig/imagekitio/models/upload_post_transform_success_event.rbs +142 -0
  426. data/sig/imagekitio/models/upload_pre_transform_error_event.rbs +115 -0
  427. data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +541 -0
  428. data/sig/imagekitio/models/video_overlay.rbs +59 -0
  429. data/sig/imagekitio/models/video_transformation_accepted_event.rbs +261 -0
  430. data/sig/imagekitio/models/video_transformation_error_event.rbs +300 -0
  431. data/sig/imagekitio/models/video_transformation_ready_event.rbs +359 -0
  432. data/sig/imagekitio/models/webhook_unsafe_unwrap_params.rbs +15 -0
  433. data/sig/imagekitio/models/webhook_unwrap_params.rbs +15 -0
  434. data/sig/imagekitio/models.rbs +119 -0
  435. data/sig/imagekitio/request_options.rbs +36 -0
  436. data/sig/imagekitio/resources/accounts/origins.rbs +34 -0
  437. data/sig/imagekitio/resources/accounts/url_endpoints.rbs +40 -0
  438. data/sig/imagekitio/resources/accounts/usage.rbs +15 -0
  439. data/sig/imagekitio/resources/accounts.rbs +13 -0
  440. data/sig/imagekitio/resources/assets.rbs +18 -0
  441. data/sig/imagekitio/resources/beta/v2/files.rbs +35 -0
  442. data/sig/imagekitio/resources/beta/v2.rbs +11 -0
  443. data/sig/imagekitio/resources/beta.rbs +9 -0
  444. data/sig/imagekitio/resources/cache/invalidation.rbs +19 -0
  445. data/sig/imagekitio/resources/cache.rbs +9 -0
  446. data/sig/imagekitio/resources/custom_metadata_fields.rbs +32 -0
  447. data/sig/imagekitio/resources/files/bulk.rbs +32 -0
  448. data/sig/imagekitio/resources/files/metadata.rbs +19 -0
  449. data/sig/imagekitio/resources/files/versions.rbs +32 -0
  450. data/sig/imagekitio/resources/files.rbs +76 -0
  451. data/sig/imagekitio/resources/folders/job.rbs +14 -0
  452. data/sig/imagekitio/resources/folders.rbs +40 -0
  453. data/sig/imagekitio/resources/webhooks.rbs +27 -0
  454. data/sig/imagekitio/version.rbs +3 -0
  455. metadata +470 -136
  456. data/Rakefile +0 -27
  457. data/lib/active_storage/active_storage.rb +0 -7
  458. data/lib/active_storage/service/ik_file.rb +0 -115
  459. data/lib/active_storage/service/image_kit_io_service.rb +0 -188
  460. data/lib/carrierwave/carrierwave.rb +0 -83
  461. data/lib/carrierwave/storage/ik_file.rb +0 -51
  462. data/lib/carrierwave/storage/imagekit_store.rb +0 -68
  463. data/lib/carrierwave/support/uri_filename.rb +0 -12
  464. data/lib/imagekitio/api_service/bulk.rb +0 -58
  465. data/lib/imagekitio/api_service/custom_metadata_field.rb +0 -52
  466. data/lib/imagekitio/api_service/file.rb +0 -221
  467. data/lib/imagekitio/api_service/folder.rb +0 -49
  468. data/lib/imagekitio/base.rb +0 -12
  469. data/lib/imagekitio/configurable.rb +0 -43
  470. data/lib/imagekitio/constant.rb +0 -36
  471. data/lib/imagekitio/constants/default.rb +0 -22
  472. data/lib/imagekitio/constants/error.rb +0 -69
  473. data/lib/imagekitio/constants/file.rb +0 -11
  474. data/lib/imagekitio/constants/supported_transformation.rb +0 -39
  475. data/lib/imagekitio/constants/url.rb +0 -14
  476. data/lib/imagekitio/railtie.rb +0 -4
  477. data/lib/imagekitio/request.rb +0 -98
  478. data/lib/imagekitio/sdk/version.rb +0 -5
  479. data/lib/imagekitio/url.rb +0 -216
  480. data/lib/imagekitio/utils/calculation.rb +0 -45
  481. data/lib/imagekitio/utils/formatter.rb +0 -48
  482. data/lib/imagekitio/utils/option_validator.rb +0 -36
  483. data/lib/tasks/imagekitio/imagekitio_tasks.rake +0 -4
@@ -0,0 +1,690 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class UploadPreTransformSuccessEvent < Imagekitio::Models::BaseWebhookEvent
6
+ # @!attribute created_at
7
+ # Timestamp of when the event occurred in ISO8601 format.
8
+ #
9
+ # @return [Time]
10
+ required :created_at, Time
11
+
12
+ # @!attribute data
13
+ # Object containing details of a successful upload.
14
+ #
15
+ # @return [Imagekitio::Models::UploadPreTransformSuccessEvent::Data]
16
+ required :data, -> { Imagekitio::UploadPreTransformSuccessEvent::Data }
17
+
18
+ # @!attribute request
19
+ #
20
+ # @return [Imagekitio::Models::UploadPreTransformSuccessEvent::Request]
21
+ required :request, -> { Imagekitio::UploadPreTransformSuccessEvent::Request }
22
+
23
+ # @!attribute type
24
+ #
25
+ # @return [Symbol, :"upload.pre-transform.success"]
26
+ required :type, const: :"upload.pre-transform.success"
27
+
28
+ # @!method initialize(created_at:, data:, request:, type: :"upload.pre-transform.success")
29
+ # Triggered when a pre-transformation completes successfully. The file has been
30
+ # processed with the requested transformation and is now available in the Media
31
+ # Library.
32
+ #
33
+ # @param created_at [Time] Timestamp of when the event occurred in ISO8601 format.
34
+ #
35
+ # @param data [Imagekitio::Models::UploadPreTransformSuccessEvent::Data] Object containing details of a successful upload.
36
+ #
37
+ # @param request [Imagekitio::Models::UploadPreTransformSuccessEvent::Request]
38
+ #
39
+ # @param type [Symbol, :"upload.pre-transform.success"]
40
+
41
+ class Data < Imagekitio::Internal::Type::BaseModel
42
+ # @!attribute ai_tags
43
+ # An array of tags assigned to the uploaded file by auto tagging.
44
+ #
45
+ # @return [Array<Imagekitio::Models::UploadPreTransformSuccessEvent::Data::AITag>, nil]
46
+ optional :ai_tags,
47
+ -> {
48
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::UploadPreTransformSuccessEvent::Data::AITag]
49
+ },
50
+ api_name: :AITags,
51
+ nil?: true
52
+
53
+ # @!attribute audio_codec
54
+ # The audio codec used in the video (only for video).
55
+ #
56
+ # @return [String, nil]
57
+ optional :audio_codec, String, api_name: :audioCodec
58
+
59
+ # @!attribute bit_rate
60
+ # The bit rate of the video in kbps (only for video).
61
+ #
62
+ # @return [Integer, nil]
63
+ optional :bit_rate, Integer, api_name: :bitRate
64
+
65
+ # @!attribute custom_coordinates
66
+ # Value of custom coordinates associated with the image in the format
67
+ # `x,y,width,height`. If `customCoordinates` are not defined, then it is `null`.
68
+ # Send `customCoordinates` in `responseFields` in API request to get the value of
69
+ # this field.
70
+ #
71
+ # @return [String, nil]
72
+ optional :custom_coordinates, String, api_name: :customCoordinates, nil?: true
73
+
74
+ # @!attribute custom_metadata
75
+ # A key-value data associated with the asset. Use `responseField` in API request
76
+ # to get `customMetadata` in the upload API response. Before setting any custom
77
+ # metadata on an asset, you have to create the field using custom metadata fields
78
+ # API. Send `customMetadata` in `responseFields` in API request to get the value
79
+ # of this field.
80
+ #
81
+ # @return [Hash{Symbol=>Object}, nil]
82
+ optional :custom_metadata,
83
+ Imagekitio::Internal::Type::HashOf[Imagekitio::Internal::Type::Unknown],
84
+ api_name: :customMetadata
85
+
86
+ # @!attribute description
87
+ # Optional text to describe the contents of the file. Can be set by the user or
88
+ # the ai-auto-description extension.
89
+ #
90
+ # @return [String, nil]
91
+ optional :description, String
92
+
93
+ # @!attribute duration
94
+ # The duration of the video in seconds (only for video).
95
+ #
96
+ # @return [Integer, nil]
97
+ optional :duration, Integer
98
+
99
+ # @!attribute embedded_metadata
100
+ # Consolidated embedded metadata associated with the file. It includes exif, iptc,
101
+ # and xmp data. Send `embeddedMetadata` in `responseFields` in API request to get
102
+ # embeddedMetadata in the upload API response.
103
+ #
104
+ # @return [Hash{Symbol=>Object}, nil]
105
+ optional :embedded_metadata,
106
+ Imagekitio::Internal::Type::HashOf[Imagekitio::Internal::Type::Unknown],
107
+ api_name: :embeddedMetadata
108
+
109
+ # @!attribute extension_status
110
+ # Extension names with their processing status at the time of completion of the
111
+ # request. It could have one of the following status values:
112
+ #
113
+ # `success`: The extension has been successfully applied. `failed`: The extension
114
+ # has failed and will not be retried. `pending`: The extension will finish
115
+ # processing in some time. On completion, the final status (success / failed) will
116
+ # be sent to the `webhookUrl` provided.
117
+ #
118
+ # If no extension was requested, then this parameter is not returned.
119
+ #
120
+ # @return [Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus, nil]
121
+ optional :extension_status,
122
+ -> { Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus },
123
+ api_name: :extensionStatus
124
+
125
+ # @!attribute file_id
126
+ # Unique fileId. Store this fileld in your database, as this will be used to
127
+ # perform update action on this file.
128
+ #
129
+ # @return [String, nil]
130
+ optional :file_id, String, api_name: :fileId
131
+
132
+ # @!attribute file_path
133
+ # The relative path of the file in the media library e.g.
134
+ # `/marketing-assets/new-banner.jpg`.
135
+ #
136
+ # @return [String, nil]
137
+ optional :file_path, String, api_name: :filePath
138
+
139
+ # @!attribute file_type
140
+ # Type of the uploaded file. Possible values are `image`, `non-image`.
141
+ #
142
+ # @return [String, nil]
143
+ optional :file_type, String, api_name: :fileType
144
+
145
+ # @!attribute height
146
+ # Height of the image in pixels (Only for images)
147
+ #
148
+ # @return [Float, nil]
149
+ optional :height, Float
150
+
151
+ # @!attribute is_private_file
152
+ # Is the file marked as private. It can be either `true` or `false`. Send
153
+ # `isPrivateFile` in `responseFields` in API request to get the value of this
154
+ # field.
155
+ #
156
+ # @return [Boolean, nil]
157
+ optional :is_private_file, Imagekitio::Internal::Type::Boolean, api_name: :isPrivateFile
158
+
159
+ # @!attribute is_published
160
+ # Is the file published or in draft state. It can be either `true` or `false`.
161
+ # Send `isPublished` in `responseFields` in API request to get the value of this
162
+ # field.
163
+ #
164
+ # @return [Boolean, nil]
165
+ optional :is_published, Imagekitio::Internal::Type::Boolean, api_name: :isPublished
166
+
167
+ # @!attribute metadata
168
+ # Legacy metadata. Send `metadata` in `responseFields` in API request to get
169
+ # metadata in the upload API response.
170
+ #
171
+ # @return [Imagekitio::Models::Metadata, nil]
172
+ optional :metadata, -> { Imagekitio::Metadata }
173
+
174
+ # @!attribute name
175
+ # Name of the asset.
176
+ #
177
+ # @return [String, nil]
178
+ optional :name, String
179
+
180
+ # @!attribute selected_fields_schema
181
+ # This field is included in the response only if the Path policy feature is
182
+ # available in the plan. It contains schema definitions for the custom metadata
183
+ # fields selected for the specified file path. Field selection can only be done
184
+ # when the Path policy feature is enabled.
185
+ #
186
+ # Keys are the names of the custom metadata fields; the value object has details
187
+ # about the custom metadata schema.
188
+ #
189
+ # @return [Hash{Symbol=>Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema}, nil]
190
+ optional :selected_fields_schema,
191
+ -> {
192
+ Imagekitio::Internal::Type::HashOf[Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema]
193
+ },
194
+ api_name: :selectedFieldsSchema
195
+
196
+ # @!attribute size
197
+ # Size of the image file in Bytes.
198
+ #
199
+ # @return [Float, nil]
200
+ optional :size, Float
201
+
202
+ # @!attribute tags
203
+ # The array of tags associated with the asset. If no tags are set, it will be
204
+ # `null`. Send `tags` in `responseFields` in API request to get the value of this
205
+ # field.
206
+ #
207
+ # @return [Array<String>, nil]
208
+ optional :tags, Imagekitio::Internal::Type::ArrayOf[String], nil?: true
209
+
210
+ # @!attribute thumbnail_url
211
+ # In the case of an image, a small thumbnail URL.
212
+ #
213
+ # @return [String, nil]
214
+ optional :thumbnail_url, String, api_name: :thumbnailUrl
215
+
216
+ # @!attribute url
217
+ # A publicly accessible URL of the file.
218
+ #
219
+ # @return [String, nil]
220
+ optional :url, String
221
+
222
+ # @!attribute version_info
223
+ # An object containing the file or file version's `id` (versionId) and `name`.
224
+ #
225
+ # @return [Imagekitio::Models::UploadPreTransformSuccessEvent::Data::VersionInfo, nil]
226
+ optional :version_info,
227
+ -> { Imagekitio::UploadPreTransformSuccessEvent::Data::VersionInfo },
228
+ api_name: :versionInfo
229
+
230
+ # @!attribute video_codec
231
+ # The video codec used in the video (only for video).
232
+ #
233
+ # @return [String, nil]
234
+ optional :video_codec, String, api_name: :videoCodec
235
+
236
+ # @!attribute width
237
+ # Width of the image in pixels (Only for Images)
238
+ #
239
+ # @return [Float, nil]
240
+ optional :width, Float
241
+
242
+ # @!method initialize(ai_tags: nil, audio_codec: nil, bit_rate: nil, custom_coordinates: nil, custom_metadata: nil, description: nil, duration: nil, embedded_metadata: nil, extension_status: nil, file_id: nil, file_path: nil, file_type: nil, height: nil, is_private_file: nil, is_published: nil, metadata: nil, name: nil, selected_fields_schema: nil, size: nil, tags: nil, thumbnail_url: nil, url: nil, version_info: nil, video_codec: nil, width: nil)
243
+ # Some parameter documentations has been truncated, see
244
+ # {Imagekitio::Models::UploadPreTransformSuccessEvent::Data} for more details.
245
+ #
246
+ # Object containing details of a successful upload.
247
+ #
248
+ # @param ai_tags [Array<Imagekitio::Models::UploadPreTransformSuccessEvent::Data::AITag>, nil] An array of tags assigned to the uploaded file by auto tagging.
249
+ #
250
+ # @param audio_codec [String] The audio codec used in the video (only for video).
251
+ #
252
+ # @param bit_rate [Integer] The bit rate of the video in kbps (only for video).
253
+ #
254
+ # @param custom_coordinates [String, nil] Value of custom coordinates associated with the image in the format `x,y,width,h
255
+ #
256
+ # @param custom_metadata [Hash{Symbol=>Object}] A key-value data associated with the asset. Use `responseField` in API request t
257
+ #
258
+ # @param description [String] Optional text to describe the contents of the file. Can be set by the user or th
259
+ #
260
+ # @param duration [Integer] The duration of the video in seconds (only for video).
261
+ #
262
+ # @param embedded_metadata [Hash{Symbol=>Object}] Consolidated embedded metadata associated with the file. It includes exif, iptc,
263
+ #
264
+ # @param extension_status [Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus] Extension names with their processing status at the time of completion of the re
265
+ #
266
+ # @param file_id [String] Unique fileId. Store this fileld in your database, as this will be used to perfo
267
+ #
268
+ # @param file_path [String] The relative path of the file in the media library e.g. `/marketing-assets/new-b
269
+ #
270
+ # @param file_type [String] Type of the uploaded file. Possible values are `image`, `non-image`.
271
+ #
272
+ # @param height [Float] Height of the image in pixels (Only for images)
273
+ #
274
+ # @param is_private_file [Boolean] Is the file marked as private. It can be either `true` or `false`. Send `isPriva
275
+ #
276
+ # @param is_published [Boolean] Is the file published or in draft state. It can be either `true` or `false`. Sen
277
+ #
278
+ # @param metadata [Imagekitio::Models::Metadata] Legacy metadata. Send `metadata` in `responseFields` in API request to get metad
279
+ #
280
+ # @param name [String] Name of the asset.
281
+ #
282
+ # @param selected_fields_schema [Hash{Symbol=>Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema}] This field is included in the response only if the Path policy feature is availa
283
+ #
284
+ # @param size [Float] Size of the image file in Bytes.
285
+ #
286
+ # @param tags [Array<String>, nil] The array of tags associated with the asset. If no tags are set, it will be `nul
287
+ #
288
+ # @param thumbnail_url [String] In the case of an image, a small thumbnail URL.
289
+ #
290
+ # @param url [String] A publicly accessible URL of the file.
291
+ #
292
+ # @param version_info [Imagekitio::Models::UploadPreTransformSuccessEvent::Data::VersionInfo] An object containing the file or file version's `id` (versionId) and `name`.
293
+ #
294
+ # @param video_codec [String] The video codec used in the video (only for video).
295
+ #
296
+ # @param width [Float] Width of the image in pixels (Only for Images)
297
+
298
+ class AITag < Imagekitio::Internal::Type::BaseModel
299
+ # @!attribute confidence
300
+ # Confidence score of the tag.
301
+ #
302
+ # @return [Float, nil]
303
+ optional :confidence, Float
304
+
305
+ # @!attribute name
306
+ # Name of the tag.
307
+ #
308
+ # @return [String, nil]
309
+ optional :name, String
310
+
311
+ # @!attribute source
312
+ # Array of `AITags` associated with the image. If no `AITags` are set, it will be
313
+ # null. These tags can be added using the `google-auto-tagging` or
314
+ # `aws-auto-tagging` extensions.
315
+ #
316
+ # @return [String, nil]
317
+ optional :source, String
318
+
319
+ # @!method initialize(confidence: nil, name: nil, source: nil)
320
+ # Some parameter documentations has been truncated, see
321
+ # {Imagekitio::Models::UploadPreTransformSuccessEvent::Data::AITag} for more
322
+ # details.
323
+ #
324
+ # @param confidence [Float] Confidence score of the tag.
325
+ #
326
+ # @param name [String] Name of the tag.
327
+ #
328
+ # @param source [String] Array of `AITags` associated with the image. If no `AITags` are set, it will be
329
+ end
330
+
331
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data#extension_status
332
+ class ExtensionStatus < Imagekitio::Internal::Type::BaseModel
333
+ # @!attribute ai_auto_description
334
+ #
335
+ # @return [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AIAutoDescription, nil]
336
+ optional :ai_auto_description,
337
+ enum: -> {
338
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AIAutoDescription
339
+ },
340
+ api_name: :"ai-auto-description"
341
+
342
+ # @!attribute aws_auto_tagging
343
+ #
344
+ # @return [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AwsAutoTagging, nil]
345
+ optional :aws_auto_tagging,
346
+ enum: -> {
347
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AwsAutoTagging
348
+ },
349
+ api_name: :"aws-auto-tagging"
350
+
351
+ # @!attribute google_auto_tagging
352
+ #
353
+ # @return [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::GoogleAutoTagging, nil]
354
+ optional :google_auto_tagging,
355
+ enum: -> {
356
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::GoogleAutoTagging
357
+ },
358
+ api_name: :"google-auto-tagging"
359
+
360
+ # @!attribute remove_bg
361
+ #
362
+ # @return [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::RemoveBg, nil]
363
+ optional :remove_bg,
364
+ enum: -> { Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::RemoveBg },
365
+ api_name: :"remove-bg"
366
+
367
+ # @!method initialize(ai_auto_description: nil, aws_auto_tagging: nil, google_auto_tagging: nil, remove_bg: nil)
368
+ # Extension names with their processing status at the time of completion of the
369
+ # request. It could have one of the following status values:
370
+ #
371
+ # `success`: The extension has been successfully applied. `failed`: The extension
372
+ # has failed and will not be retried. `pending`: The extension will finish
373
+ # processing in some time. On completion, the final status (success / failed) will
374
+ # be sent to the `webhookUrl` provided.
375
+ #
376
+ # If no extension was requested, then this parameter is not returned.
377
+ #
378
+ # @param ai_auto_description [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AIAutoDescription]
379
+ # @param aws_auto_tagging [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AwsAutoTagging]
380
+ # @param google_auto_tagging [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::GoogleAutoTagging]
381
+ # @param remove_bg [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus::RemoveBg]
382
+
383
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus#ai_auto_description
384
+ module AIAutoDescription
385
+ extend Imagekitio::Internal::Type::Enum
386
+
387
+ SUCCESS = :success
388
+ PENDING = :pending
389
+ FAILED = :failed
390
+
391
+ # @!method self.values
392
+ # @return [Array<Symbol>]
393
+ end
394
+
395
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus#aws_auto_tagging
396
+ module AwsAutoTagging
397
+ extend Imagekitio::Internal::Type::Enum
398
+
399
+ SUCCESS = :success
400
+ PENDING = :pending
401
+ FAILED = :failed
402
+
403
+ # @!method self.values
404
+ # @return [Array<Symbol>]
405
+ end
406
+
407
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus#google_auto_tagging
408
+ module GoogleAutoTagging
409
+ extend Imagekitio::Internal::Type::Enum
410
+
411
+ SUCCESS = :success
412
+ PENDING = :pending
413
+ FAILED = :failed
414
+
415
+ # @!method self.values
416
+ # @return [Array<Symbol>]
417
+ end
418
+
419
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::ExtensionStatus#remove_bg
420
+ module RemoveBg
421
+ extend Imagekitio::Internal::Type::Enum
422
+
423
+ SUCCESS = :success
424
+ PENDING = :pending
425
+ FAILED = :failed
426
+
427
+ # @!method self.values
428
+ # @return [Array<Symbol>]
429
+ end
430
+ end
431
+
432
+ class SelectedFieldsSchema < Imagekitio::Internal::Type::BaseModel
433
+ # @!attribute type
434
+ # Type of the custom metadata field.
435
+ #
436
+ # @return [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::Type]
437
+ required :type, enum: -> { Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::Type }
438
+
439
+ # @!attribute default_value
440
+ # The default value for this custom metadata field. The value should match the
441
+ # `type` of custom metadata field.
442
+ #
443
+ # @return [String, Float, Boolean, Array<String, Float, Boolean>, nil]
444
+ optional :default_value,
445
+ union: -> {
446
+ Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::DefaultValue
447
+ },
448
+ api_name: :defaultValue
449
+
450
+ # @!attribute is_value_required
451
+ # Specifies if the custom metadata field is required or not.
452
+ #
453
+ # @return [Boolean, nil]
454
+ optional :is_value_required, Imagekitio::Internal::Type::Boolean, api_name: :isValueRequired
455
+
456
+ # @!attribute max_length
457
+ # Maximum length of string. Only set if `type` is set to `Text` or `Textarea`.
458
+ #
459
+ # @return [Float, nil]
460
+ optional :max_length, Float, api_name: :maxLength
461
+
462
+ # @!attribute max_value
463
+ # Maximum value of the field. Only set if field type is `Date` or `Number`. For
464
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
465
+ # field, it will be a numeric value.
466
+ #
467
+ # @return [String, Float, nil]
468
+ optional :max_value,
469
+ union: -> {
470
+ Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::MaxValue
471
+ },
472
+ api_name: :maxValue
473
+
474
+ # @!attribute min_length
475
+ # Minimum length of string. Only set if `type` is set to `Text` or `Textarea`.
476
+ #
477
+ # @return [Float, nil]
478
+ optional :min_length, Float, api_name: :minLength
479
+
480
+ # @!attribute min_value
481
+ # Minimum value of the field. Only set if field type is `Date` or `Number`. For
482
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
483
+ # field, it will be a numeric value.
484
+ #
485
+ # @return [String, Float, nil]
486
+ optional :min_value,
487
+ union: -> {
488
+ Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::MinValue
489
+ },
490
+ api_name: :minValue
491
+
492
+ # @!attribute read_only
493
+ # Indicates whether the custom metadata field is read only. A read only field
494
+ # cannot be modified after being set. This field is configurable only via the
495
+ # **Path policy** feature.
496
+ #
497
+ # @return [Boolean, nil]
498
+ optional :read_only, Imagekitio::Internal::Type::Boolean, api_name: :readOnly
499
+
500
+ # @!attribute select_options
501
+ # An array of allowed values when field type is `SingleSelect` or `MultiSelect`.
502
+ #
503
+ # @return [Array<String, Float, Boolean>, nil]
504
+ optional :select_options,
505
+ -> {
506
+ Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::SelectOption]
507
+ },
508
+ api_name: :selectOptions
509
+
510
+ # @!attribute select_options_truncated
511
+ # Specifies if the selectOptions array is truncated. It is truncated when number
512
+ # of options are > 100.
513
+ #
514
+ # @return [Boolean, nil]
515
+ optional :select_options_truncated,
516
+ Imagekitio::Internal::Type::Boolean,
517
+ api_name: :selectOptionsTruncated
518
+
519
+ # @!method initialize(type:, default_value: nil, is_value_required: nil, max_length: nil, max_value: nil, min_length: nil, min_value: nil, read_only: nil, select_options: nil, select_options_truncated: nil)
520
+ # Some parameter documentations has been truncated, see
521
+ # {Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema}
522
+ # for more details.
523
+ #
524
+ # @param type [Symbol, Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::Type] Type of the custom metadata field.
525
+ #
526
+ # @param default_value [String, Float, Boolean, Array<String, Float, Boolean>] The default value for this custom metadata field. The value should match the `ty
527
+ #
528
+ # @param is_value_required [Boolean] Specifies if the custom metadata field is required or not.
529
+ #
530
+ # @param max_length [Float] Maximum length of string. Only set if `type` is set to `Text` or `Textarea`.
531
+ #
532
+ # @param max_value [String, Float] Maximum value of the field. Only set if field type is `Date` or `Number`. For `D
533
+ #
534
+ # @param min_length [Float] Minimum length of string. Only set if `type` is set to `Text` or `Textarea`.
535
+ #
536
+ # @param min_value [String, Float] Minimum value of the field. Only set if field type is `Date` or `Number`. For `D
537
+ #
538
+ # @param read_only [Boolean] Indicates whether the custom metadata field is read only. A read only field cann
539
+ #
540
+ # @param select_options [Array<String, Float, Boolean>] An array of allowed values when field type is `SingleSelect` or `MultiSelect`.
541
+ #
542
+ # @param select_options_truncated [Boolean] Specifies if the selectOptions array is truncated. It is truncated when number o
543
+
544
+ # Type of the custom metadata field.
545
+ #
546
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema#type
547
+ module Type
548
+ extend Imagekitio::Internal::Type::Enum
549
+
550
+ TEXT = :Text
551
+ TEXTAREA = :Textarea
552
+ NUMBER = :Number
553
+ DATE = :Date
554
+ BOOLEAN = :Boolean
555
+ SINGLE_SELECT = :SingleSelect
556
+ MULTI_SELECT = :MultiSelect
557
+
558
+ # @!method self.values
559
+ # @return [Array<Symbol>]
560
+ end
561
+
562
+ # The default value for this custom metadata field. The value should match the
563
+ # `type` of custom metadata field.
564
+ #
565
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema#default_value
566
+ module DefaultValue
567
+ extend Imagekitio::Internal::Type::Union
568
+
569
+ variant String
570
+
571
+ variant Float
572
+
573
+ variant Imagekitio::Internal::Type::Boolean
574
+
575
+ # Default value should be of type array when custom metadata field type is set to `MultiSelect`.
576
+ variant -> { Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::DefaultValue::MixedArray }
577
+
578
+ module Mixed
579
+ extend Imagekitio::Internal::Type::Union
580
+
581
+ variant String
582
+
583
+ variant Float
584
+
585
+ variant Imagekitio::Internal::Type::Boolean
586
+
587
+ # @!method self.variants
588
+ # @return [Array(String, Float, Boolean)]
589
+ end
590
+
591
+ # @!method self.variants
592
+ # @return [Array(String, Float, Boolean, Array<String, Float, Boolean>)]
593
+
594
+ # @type [Imagekitio::Internal::Type::Converter]
595
+ MixedArray =
596
+ Imagekitio::Internal::Type::ArrayOf[union: -> {
597
+ Imagekitio::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema::DefaultValue::Mixed
598
+ }]
599
+ end
600
+
601
+ # Maximum value of the field. Only set if field type is `Date` or `Number`. For
602
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
603
+ # field, it will be a numeric value.
604
+ #
605
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema#max_value
606
+ module MaxValue
607
+ extend Imagekitio::Internal::Type::Union
608
+
609
+ variant String
610
+
611
+ variant Float
612
+
613
+ # @!method self.variants
614
+ # @return [Array(String, Float)]
615
+ end
616
+
617
+ # Minimum value of the field. Only set if field type is `Date` or `Number`. For
618
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
619
+ # field, it will be a numeric value.
620
+ #
621
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data::SelectedFieldsSchema#min_value
622
+ module MinValue
623
+ extend Imagekitio::Internal::Type::Union
624
+
625
+ variant String
626
+
627
+ variant Float
628
+
629
+ # @!method self.variants
630
+ # @return [Array(String, Float)]
631
+ end
632
+
633
+ module SelectOption
634
+ extend Imagekitio::Internal::Type::Union
635
+
636
+ variant String
637
+
638
+ variant Float
639
+
640
+ variant Imagekitio::Internal::Type::Boolean
641
+
642
+ # @!method self.variants
643
+ # @return [Array(String, Float, Boolean)]
644
+ end
645
+ end
646
+
647
+ # @see Imagekitio::Models::UploadPreTransformSuccessEvent::Data#version_info
648
+ class VersionInfo < Imagekitio::Internal::Type::BaseModel
649
+ # @!attribute id
650
+ # Unique identifier of the file version.
651
+ #
652
+ # @return [String, nil]
653
+ optional :id, String
654
+
655
+ # @!attribute name
656
+ # Name of the file version.
657
+ #
658
+ # @return [String, nil]
659
+ optional :name, String
660
+
661
+ # @!method initialize(id: nil, name: nil)
662
+ # An object containing the file or file version's `id` (versionId) and `name`.
663
+ #
664
+ # @param id [String] Unique identifier of the file version.
665
+ #
666
+ # @param name [String] Name of the file version.
667
+ end
668
+ end
669
+
670
+ class Request < Imagekitio::Internal::Type::BaseModel
671
+ # @!attribute transformation
672
+ # The requested pre-transformation string.
673
+ #
674
+ # @return [String]
675
+ required :transformation, String
676
+
677
+ # @!attribute x_request_id
678
+ # Unique identifier for the originating request.
679
+ #
680
+ # @return [String]
681
+ required :x_request_id, String
682
+
683
+ # @!method initialize(transformation:, x_request_id:)
684
+ # @param transformation [String] The requested pre-transformation string.
685
+ #
686
+ # @param x_request_id [String] Unique identifier for the originating request.
687
+ end
688
+ end
689
+ end
690
+ end