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,376 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class CustomMetadataFieldUpdateParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::CustomMetadataFieldUpdateParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Human readable name of the custom metadata field. This should be unique across
18
+ # all non deleted custom metadata fields. This name is displayed as form field
19
+ # label to the users while setting field value on an asset in the media library
20
+ # UI. This parameter is required if `schema` is not provided.
21
+ sig { returns(T.nilable(String)) }
22
+ attr_reader :label
23
+
24
+ sig { params(label: String).void }
25
+ attr_writer :label
26
+
27
+ # An object that describes the rules for the custom metadata key. This parameter
28
+ # is required if `label` is not provided. Note: `type` cannot be updated and will
29
+ # be ignored if sent with the `schema`. The schema will be validated as per the
30
+ # existing `type`.
31
+ sig do
32
+ returns(T.nilable(Imagekitio::CustomMetadataFieldUpdateParams::Schema))
33
+ end
34
+ attr_reader :schema
35
+
36
+ sig do
37
+ params(
38
+ schema: Imagekitio::CustomMetadataFieldUpdateParams::Schema::OrHash
39
+ ).void
40
+ end
41
+ attr_writer :schema
42
+
43
+ sig do
44
+ params(
45
+ label: String,
46
+ schema: Imagekitio::CustomMetadataFieldUpdateParams::Schema::OrHash,
47
+ request_options: Imagekitio::RequestOptions::OrHash
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ # Human readable name of the custom metadata field. This should be unique across
52
+ # all non deleted custom metadata fields. This name is displayed as form field
53
+ # label to the users while setting field value on an asset in the media library
54
+ # UI. This parameter is required if `schema` is not provided.
55
+ label: nil,
56
+ # An object that describes the rules for the custom metadata key. This parameter
57
+ # is required if `label` is not provided. Note: `type` cannot be updated and will
58
+ # be ignored if sent with the `schema`. The schema will be validated as per the
59
+ # existing `type`.
60
+ schema: nil,
61
+ request_options: {}
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ label: String,
69
+ schema: Imagekitio::CustomMetadataFieldUpdateParams::Schema,
70
+ request_options: Imagekitio::RequestOptions
71
+ }
72
+ )
73
+ end
74
+ def to_hash
75
+ end
76
+
77
+ class Schema < Imagekitio::Internal::Type::BaseModel
78
+ OrHash =
79
+ T.type_alias do
80
+ T.any(
81
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema,
82
+ Imagekitio::Internal::AnyHash
83
+ )
84
+ end
85
+
86
+ # The default value for this custom metadata field. This property is only required
87
+ # if `isValueRequired` property is set to `true`. The value should match the
88
+ # `type` of custom metadata field.
89
+ sig do
90
+ returns(
91
+ T.nilable(
92
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Variants
93
+ )
94
+ )
95
+ end
96
+ attr_reader :default_value
97
+
98
+ sig do
99
+ params(
100
+ default_value:
101
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Variants
102
+ ).void
103
+ end
104
+ attr_writer :default_value
105
+
106
+ # Sets this custom metadata field as required. Setting custom metadata fields on
107
+ # an asset will throw error if the value for all required fields are not present
108
+ # in upload or update asset API request body.
109
+ sig { returns(T.nilable(T::Boolean)) }
110
+ attr_reader :is_value_required
111
+
112
+ sig { params(is_value_required: T::Boolean).void }
113
+ attr_writer :is_value_required
114
+
115
+ # Maximum length of string. Only set this property if `type` is set to `Text` or
116
+ # `Textarea`.
117
+ sig { returns(T.nilable(Float)) }
118
+ attr_reader :max_length
119
+
120
+ sig { params(max_length: Float).void }
121
+ attr_writer :max_length
122
+
123
+ # Maximum value of the field. Only set this property if field type is `Date` or
124
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
125
+ # For `Number` type field, set the minimum numeric value.
126
+ sig do
127
+ returns(
128
+ T.nilable(
129
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MaxValue::Variants
130
+ )
131
+ )
132
+ end
133
+ attr_reader :max_value
134
+
135
+ sig do
136
+ params(
137
+ max_value:
138
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MaxValue::Variants
139
+ ).void
140
+ end
141
+ attr_writer :max_value
142
+
143
+ # Minimum length of string. Only set this property if `type` is set to `Text` or
144
+ # `Textarea`.
145
+ sig { returns(T.nilable(Float)) }
146
+ attr_reader :min_length
147
+
148
+ sig { params(min_length: Float).void }
149
+ attr_writer :min_length
150
+
151
+ # Minimum value of the field. Only set this property if field type is `Date` or
152
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
153
+ # For `Number` type field, set the minimum numeric value.
154
+ sig do
155
+ returns(
156
+ T.nilable(
157
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MinValue::Variants
158
+ )
159
+ )
160
+ end
161
+ attr_reader :min_value
162
+
163
+ sig do
164
+ params(
165
+ min_value:
166
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MinValue::Variants
167
+ ).void
168
+ end
169
+ attr_writer :min_value
170
+
171
+ # An array of allowed values. This property is only required if `type` property is
172
+ # set to `SingleSelect` or `MultiSelect`.
173
+ sig do
174
+ returns(
175
+ T.nilable(
176
+ T::Array[
177
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::SelectOption::Variants
178
+ ]
179
+ )
180
+ )
181
+ end
182
+ attr_reader :select_options
183
+
184
+ sig do
185
+ params(
186
+ select_options:
187
+ T::Array[
188
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::SelectOption::Variants
189
+ ]
190
+ ).void
191
+ end
192
+ attr_writer :select_options
193
+
194
+ # An object that describes the rules for the custom metadata key. This parameter
195
+ # is required if `label` is not provided. Note: `type` cannot be updated and will
196
+ # be ignored if sent with the `schema`. The schema will be validated as per the
197
+ # existing `type`.
198
+ sig do
199
+ params(
200
+ default_value:
201
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Variants,
202
+ is_value_required: T::Boolean,
203
+ max_length: Float,
204
+ max_value:
205
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MaxValue::Variants,
206
+ min_length: Float,
207
+ min_value:
208
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MinValue::Variants,
209
+ select_options:
210
+ T::Array[
211
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::SelectOption::Variants
212
+ ]
213
+ ).returns(T.attached_class)
214
+ end
215
+ def self.new(
216
+ # The default value for this custom metadata field. This property is only required
217
+ # if `isValueRequired` property is set to `true`. The value should match the
218
+ # `type` of custom metadata field.
219
+ default_value: nil,
220
+ # Sets this custom metadata field as required. Setting custom metadata fields on
221
+ # an asset will throw error if the value for all required fields are not present
222
+ # in upload or update asset API request body.
223
+ is_value_required: nil,
224
+ # Maximum length of string. Only set this property if `type` is set to `Text` or
225
+ # `Textarea`.
226
+ max_length: nil,
227
+ # Maximum value of the field. Only set this property if field type is `Date` or
228
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
229
+ # For `Number` type field, set the minimum numeric value.
230
+ max_value: nil,
231
+ # Minimum length of string. Only set this property if `type` is set to `Text` or
232
+ # `Textarea`.
233
+ min_length: nil,
234
+ # Minimum value of the field. Only set this property if field type is `Date` or
235
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
236
+ # For `Number` type field, set the minimum numeric value.
237
+ min_value: nil,
238
+ # An array of allowed values. This property is only required if `type` property is
239
+ # set to `SingleSelect` or `MultiSelect`.
240
+ select_options: nil
241
+ )
242
+ end
243
+
244
+ sig do
245
+ override.returns(
246
+ {
247
+ default_value:
248
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Variants,
249
+ is_value_required: T::Boolean,
250
+ max_length: Float,
251
+ max_value:
252
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MaxValue::Variants,
253
+ min_length: Float,
254
+ min_value:
255
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MinValue::Variants,
256
+ select_options:
257
+ T::Array[
258
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::SelectOption::Variants
259
+ ]
260
+ }
261
+ )
262
+ end
263
+ def to_hash
264
+ end
265
+
266
+ # The default value for this custom metadata field. This property is only required
267
+ # if `isValueRequired` property is set to `true`. The value should match the
268
+ # `type` of custom metadata field.
269
+ module DefaultValue
270
+ extend Imagekitio::Internal::Type::Union
271
+
272
+ Variants =
273
+ T.type_alias do
274
+ T.any(
275
+ String,
276
+ Float,
277
+ T::Boolean,
278
+ T::Array[
279
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Mixed::Variants
280
+ ]
281
+ )
282
+ end
283
+
284
+ module Mixed
285
+ extend Imagekitio::Internal::Type::Union
286
+
287
+ Variants = T.type_alias { T.any(String, Float, T::Boolean) }
288
+
289
+ sig do
290
+ override.returns(
291
+ T::Array[
292
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Mixed::Variants
293
+ ]
294
+ )
295
+ end
296
+ def self.variants
297
+ end
298
+ end
299
+
300
+ sig do
301
+ override.returns(
302
+ T::Array[
303
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Variants
304
+ ]
305
+ )
306
+ end
307
+ def self.variants
308
+ end
309
+
310
+ MixedArray =
311
+ T.let(
312
+ Imagekitio::Internal::Type::ArrayOf[
313
+ union:
314
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::DefaultValue::Mixed
315
+ ],
316
+ Imagekitio::Internal::Type::Converter
317
+ )
318
+ end
319
+
320
+ # Maximum value of the field. Only set this property if field type is `Date` or
321
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
322
+ # For `Number` type field, set the minimum numeric value.
323
+ module MaxValue
324
+ extend Imagekitio::Internal::Type::Union
325
+
326
+ Variants = T.type_alias { T.any(String, Float) }
327
+
328
+ sig do
329
+ override.returns(
330
+ T::Array[
331
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MaxValue::Variants
332
+ ]
333
+ )
334
+ end
335
+ def self.variants
336
+ end
337
+ end
338
+
339
+ # Minimum value of the field. Only set this property if field type is `Date` or
340
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
341
+ # For `Number` type field, set the minimum numeric value.
342
+ module MinValue
343
+ extend Imagekitio::Internal::Type::Union
344
+
345
+ Variants = T.type_alias { T.any(String, Float) }
346
+
347
+ sig do
348
+ override.returns(
349
+ T::Array[
350
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::MinValue::Variants
351
+ ]
352
+ )
353
+ end
354
+ def self.variants
355
+ end
356
+ end
357
+
358
+ module SelectOption
359
+ extend Imagekitio::Internal::Type::Union
360
+
361
+ Variants = T.type_alias { T.any(String, Float, T::Boolean) }
362
+
363
+ sig do
364
+ override.returns(
365
+ T::Array[
366
+ Imagekitio::CustomMetadataFieldUpdateParams::Schema::SelectOption::Variants
367
+ ]
368
+ )
369
+ end
370
+ def self.variants
371
+ end
372
+ end
373
+ end
374
+ end
375
+ end
376
+ end
@@ -0,0 +1,274 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ module ExtensionItem
6
+ extend Imagekitio::Internal::Type::Union
7
+
8
+ Variants =
9
+ T.type_alias do
10
+ T.any(
11
+ Imagekitio::ExtensionItem::RemoveBg,
12
+ Imagekitio::ExtensionItem::AIAutoDescription,
13
+ Imagekitio::ExtensionItem::AutoTaggingExtension
14
+ )
15
+ end
16
+
17
+ class RemoveBg < Imagekitio::Internal::Type::BaseModel
18
+ OrHash =
19
+ T.type_alias do
20
+ T.any(
21
+ Imagekitio::ExtensionItem::RemoveBg,
22
+ Imagekitio::Internal::AnyHash
23
+ )
24
+ end
25
+
26
+ # Specifies the background removal extension.
27
+ sig { returns(Symbol) }
28
+ attr_accessor :name
29
+
30
+ sig { returns(T.nilable(Imagekitio::ExtensionItem::RemoveBg::Options)) }
31
+ attr_reader :options
32
+
33
+ sig do
34
+ params(
35
+ options: Imagekitio::ExtensionItem::RemoveBg::Options::OrHash
36
+ ).void
37
+ end
38
+ attr_writer :options
39
+
40
+ sig do
41
+ params(
42
+ options: Imagekitio::ExtensionItem::RemoveBg::Options::OrHash,
43
+ name: Symbol
44
+ ).returns(T.attached_class)
45
+ end
46
+ def self.new(
47
+ options: nil,
48
+ # Specifies the background removal extension.
49
+ name: :"remove-bg"
50
+ )
51
+ end
52
+
53
+ sig do
54
+ override.returns(
55
+ {
56
+ name: Symbol,
57
+ options: Imagekitio::ExtensionItem::RemoveBg::Options
58
+ }
59
+ )
60
+ end
61
+ def to_hash
62
+ end
63
+
64
+ class Options < Imagekitio::Internal::Type::BaseModel
65
+ OrHash =
66
+ T.type_alias do
67
+ T.any(
68
+ Imagekitio::ExtensionItem::RemoveBg::Options,
69
+ Imagekitio::Internal::AnyHash
70
+ )
71
+ end
72
+
73
+ # Whether to add an artificial shadow to the result. Default is false. Note:
74
+ # Adding shadows is currently only supported for car photos.
75
+ sig { returns(T.nilable(T::Boolean)) }
76
+ attr_reader :add_shadow
77
+
78
+ sig { params(add_shadow: T::Boolean).void }
79
+ attr_writer :add_shadow
80
+
81
+ # Specifies a solid color background using hex code (e.g., "81d4fa", "fff") or
82
+ # color name (e.g., "green"). If this parameter is set, `bg_image_url` must be
83
+ # empty.
84
+ sig { returns(T.nilable(String)) }
85
+ attr_reader :bg_color
86
+
87
+ sig { params(bg_color: String).void }
88
+ attr_writer :bg_color
89
+
90
+ # Sets a background image from a URL. If this parameter is set, `bg_color` must be
91
+ # empty.
92
+ sig { returns(T.nilable(String)) }
93
+ attr_reader :bg_image_url
94
+
95
+ sig { params(bg_image_url: String).void }
96
+ attr_writer :bg_image_url
97
+
98
+ # Allows semi-transparent regions in the result. Default is true. Note:
99
+ # Semitransparency is currently only supported for car windows.
100
+ sig { returns(T.nilable(T::Boolean)) }
101
+ attr_reader :semitransparency
102
+
103
+ sig { params(semitransparency: T::Boolean).void }
104
+ attr_writer :semitransparency
105
+
106
+ sig do
107
+ params(
108
+ add_shadow: T::Boolean,
109
+ bg_color: String,
110
+ bg_image_url: String,
111
+ semitransparency: T::Boolean
112
+ ).returns(T.attached_class)
113
+ end
114
+ def self.new(
115
+ # Whether to add an artificial shadow to the result. Default is false. Note:
116
+ # Adding shadows is currently only supported for car photos.
117
+ add_shadow: nil,
118
+ # Specifies a solid color background using hex code (e.g., "81d4fa", "fff") or
119
+ # color name (e.g., "green"). If this parameter is set, `bg_image_url` must be
120
+ # empty.
121
+ bg_color: nil,
122
+ # Sets a background image from a URL. If this parameter is set, `bg_color` must be
123
+ # empty.
124
+ bg_image_url: nil,
125
+ # Allows semi-transparent regions in the result. Default is true. Note:
126
+ # Semitransparency is currently only supported for car windows.
127
+ semitransparency: nil
128
+ )
129
+ end
130
+
131
+ sig do
132
+ override.returns(
133
+ {
134
+ add_shadow: T::Boolean,
135
+ bg_color: String,
136
+ bg_image_url: String,
137
+ semitransparency: T::Boolean
138
+ }
139
+ )
140
+ end
141
+ def to_hash
142
+ end
143
+ end
144
+ end
145
+
146
+ class AutoTaggingExtension < Imagekitio::Internal::Type::BaseModel
147
+ OrHash =
148
+ T.type_alias do
149
+ T.any(
150
+ Imagekitio::ExtensionItem::AutoTaggingExtension,
151
+ Imagekitio::Internal::AnyHash
152
+ )
153
+ end
154
+
155
+ # Maximum number of tags to attach to the asset.
156
+ sig { returns(Integer) }
157
+ attr_accessor :max_tags
158
+
159
+ # Minimum confidence level for tags to be considered valid.
160
+ sig { returns(Integer) }
161
+ attr_accessor :min_confidence
162
+
163
+ # Specifies the auto-tagging extension used.
164
+ sig do
165
+ returns(
166
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::OrSymbol
167
+ )
168
+ end
169
+ attr_accessor :name
170
+
171
+ sig do
172
+ params(
173
+ max_tags: Integer,
174
+ min_confidence: Integer,
175
+ name:
176
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::OrSymbol
177
+ ).returns(T.attached_class)
178
+ end
179
+ def self.new(
180
+ # Maximum number of tags to attach to the asset.
181
+ max_tags:,
182
+ # Minimum confidence level for tags to be considered valid.
183
+ min_confidence:,
184
+ # Specifies the auto-tagging extension used.
185
+ name:
186
+ )
187
+ end
188
+
189
+ sig do
190
+ override.returns(
191
+ {
192
+ max_tags: Integer,
193
+ min_confidence: Integer,
194
+ name:
195
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::OrSymbol
196
+ }
197
+ )
198
+ end
199
+ def to_hash
200
+ end
201
+
202
+ # Specifies the auto-tagging extension used.
203
+ module Name
204
+ extend Imagekitio::Internal::Type::Enum
205
+
206
+ TaggedSymbol =
207
+ T.type_alias do
208
+ T.all(
209
+ Symbol,
210
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name
211
+ )
212
+ end
213
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
214
+
215
+ GOOGLE_AUTO_TAGGING =
216
+ T.let(
217
+ :"google-auto-tagging",
218
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::TaggedSymbol
219
+ )
220
+ AWS_AUTO_TAGGING =
221
+ T.let(
222
+ :"aws-auto-tagging",
223
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::TaggedSymbol
224
+ )
225
+
226
+ sig do
227
+ override.returns(
228
+ T::Array[
229
+ Imagekitio::ExtensionItem::AutoTaggingExtension::Name::TaggedSymbol
230
+ ]
231
+ )
232
+ end
233
+ def self.values
234
+ end
235
+ end
236
+ end
237
+
238
+ class AIAutoDescription < Imagekitio::Internal::Type::BaseModel
239
+ OrHash =
240
+ T.type_alias do
241
+ T.any(
242
+ Imagekitio::ExtensionItem::AIAutoDescription,
243
+ Imagekitio::Internal::AnyHash
244
+ )
245
+ end
246
+
247
+ # Specifies the auto description extension.
248
+ sig { returns(Symbol) }
249
+ attr_accessor :name
250
+
251
+ sig { params(name: Symbol).returns(T.attached_class) }
252
+ def self.new(
253
+ # Specifies the auto description extension.
254
+ name: :"ai-auto-description"
255
+ )
256
+ end
257
+
258
+ sig { override.returns({ name: Symbol }) }
259
+ def to_hash
260
+ end
261
+ end
262
+
263
+ sig { override.returns(T::Array[Imagekitio::ExtensionItem::Variants]) }
264
+ def self.variants
265
+ end
266
+ end
267
+
268
+ Extensions =
269
+ T.let(
270
+ Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::ExtensionItem],
271
+ Imagekitio::Internal::Type::Converter
272
+ )
273
+ end
274
+ end