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,813 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class Metadata < Imagekitio::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Imagekitio::Metadata, Imagekitio::Internal::AnyHash)
9
+ end
10
+
11
+ # The audio codec used in the video (only for video).
12
+ sig { returns(T.nilable(String)) }
13
+ attr_reader :audio_codec
14
+
15
+ sig { params(audio_codec: String).void }
16
+ attr_writer :audio_codec
17
+
18
+ # The bit rate of the video in kbps (only for video).
19
+ sig { returns(T.nilable(Integer)) }
20
+ attr_reader :bit_rate
21
+
22
+ sig { params(bit_rate: Integer).void }
23
+ attr_writer :bit_rate
24
+
25
+ # The density of the image in DPI.
26
+ sig { returns(T.nilable(Integer)) }
27
+ attr_reader :density
28
+
29
+ sig { params(density: Integer).void }
30
+ attr_writer :density
31
+
32
+ # The duration of the video in seconds (only for video).
33
+ sig { returns(T.nilable(Integer)) }
34
+ attr_reader :duration
35
+
36
+ sig { params(duration: Integer).void }
37
+ attr_writer :duration
38
+
39
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif)) }
40
+ attr_reader :exif
41
+
42
+ sig { params(exif: Imagekitio::Metadata::Exif::OrHash).void }
43
+ attr_writer :exif
44
+
45
+ # The format of the file (e.g., 'jpg', 'mp4').
46
+ sig { returns(T.nilable(String)) }
47
+ attr_reader :format_
48
+
49
+ sig { params(format_: String).void }
50
+ attr_writer :format_
51
+
52
+ # Indicates if the image has a color profile.
53
+ sig { returns(T.nilable(T::Boolean)) }
54
+ attr_reader :has_color_profile
55
+
56
+ sig { params(has_color_profile: T::Boolean).void }
57
+ attr_writer :has_color_profile
58
+
59
+ # Indicates if the image contains transparent areas.
60
+ sig { returns(T.nilable(T::Boolean)) }
61
+ attr_reader :has_transparency
62
+
63
+ sig { params(has_transparency: T::Boolean).void }
64
+ attr_writer :has_transparency
65
+
66
+ # The height of the image or video in pixels.
67
+ sig { returns(T.nilable(Integer)) }
68
+ attr_reader :height
69
+
70
+ sig { params(height: Integer).void }
71
+ attr_writer :height
72
+
73
+ # Perceptual hash of the image.
74
+ sig { returns(T.nilable(String)) }
75
+ attr_reader :p_hash
76
+
77
+ sig { params(p_hash: String).void }
78
+ attr_writer :p_hash
79
+
80
+ # The quality indicator of the image.
81
+ sig { returns(T.nilable(Integer)) }
82
+ attr_reader :quality
83
+
84
+ sig { params(quality: Integer).void }
85
+ attr_writer :quality
86
+
87
+ # The file size in bytes.
88
+ sig { returns(T.nilable(Integer)) }
89
+ attr_reader :size
90
+
91
+ sig { params(size: Integer).void }
92
+ attr_writer :size
93
+
94
+ # The video codec used in the video (only for video).
95
+ sig { returns(T.nilable(String)) }
96
+ attr_reader :video_codec
97
+
98
+ sig { params(video_codec: String).void }
99
+ attr_writer :video_codec
100
+
101
+ # The width of the image or video in pixels.
102
+ sig { returns(T.nilable(Integer)) }
103
+ attr_reader :width
104
+
105
+ sig { params(width: Integer).void }
106
+ attr_writer :width
107
+
108
+ # JSON object containing metadata.
109
+ sig do
110
+ params(
111
+ audio_codec: String,
112
+ bit_rate: Integer,
113
+ density: Integer,
114
+ duration: Integer,
115
+ exif: Imagekitio::Metadata::Exif::OrHash,
116
+ format_: String,
117
+ has_color_profile: T::Boolean,
118
+ has_transparency: T::Boolean,
119
+ height: Integer,
120
+ p_hash: String,
121
+ quality: Integer,
122
+ size: Integer,
123
+ video_codec: String,
124
+ width: Integer
125
+ ).returns(T.attached_class)
126
+ end
127
+ def self.new(
128
+ # The audio codec used in the video (only for video).
129
+ audio_codec: nil,
130
+ # The bit rate of the video in kbps (only for video).
131
+ bit_rate: nil,
132
+ # The density of the image in DPI.
133
+ density: nil,
134
+ # The duration of the video in seconds (only for video).
135
+ duration: nil,
136
+ exif: nil,
137
+ # The format of the file (e.g., 'jpg', 'mp4').
138
+ format_: nil,
139
+ # Indicates if the image has a color profile.
140
+ has_color_profile: nil,
141
+ # Indicates if the image contains transparent areas.
142
+ has_transparency: nil,
143
+ # The height of the image or video in pixels.
144
+ height: nil,
145
+ # Perceptual hash of the image.
146
+ p_hash: nil,
147
+ # The quality indicator of the image.
148
+ quality: nil,
149
+ # The file size in bytes.
150
+ size: nil,
151
+ # The video codec used in the video (only for video).
152
+ video_codec: nil,
153
+ # The width of the image or video in pixels.
154
+ width: nil
155
+ )
156
+ end
157
+
158
+ sig do
159
+ override.returns(
160
+ {
161
+ audio_codec: String,
162
+ bit_rate: Integer,
163
+ density: Integer,
164
+ duration: Integer,
165
+ exif: Imagekitio::Metadata::Exif,
166
+ format_: String,
167
+ has_color_profile: T::Boolean,
168
+ has_transparency: T::Boolean,
169
+ height: Integer,
170
+ p_hash: String,
171
+ quality: Integer,
172
+ size: Integer,
173
+ video_codec: String,
174
+ width: Integer
175
+ }
176
+ )
177
+ end
178
+ def to_hash
179
+ end
180
+
181
+ class Exif < Imagekitio::Internal::Type::BaseModel
182
+ OrHash =
183
+ T.type_alias do
184
+ T.any(Imagekitio::Metadata::Exif, Imagekitio::Internal::AnyHash)
185
+ end
186
+
187
+ # Object containing Exif details.
188
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif::Exif)) }
189
+ attr_reader :exif
190
+
191
+ sig { params(exif: Imagekitio::Metadata::Exif::Exif::OrHash).void }
192
+ attr_writer :exif
193
+
194
+ # Object containing GPS information.
195
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif::Gps)) }
196
+ attr_reader :gps
197
+
198
+ sig { params(gps: Imagekitio::Metadata::Exif::Gps::OrHash).void }
199
+ attr_writer :gps
200
+
201
+ # Object containing EXIF image information.
202
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif::Image)) }
203
+ attr_reader :image
204
+
205
+ sig { params(image: Imagekitio::Metadata::Exif::Image::OrHash).void }
206
+ attr_writer :image
207
+
208
+ # JSON object.
209
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif::Interoperability)) }
210
+ attr_reader :interoperability
211
+
212
+ sig do
213
+ params(
214
+ interoperability:
215
+ Imagekitio::Metadata::Exif::Interoperability::OrHash
216
+ ).void
217
+ end
218
+ attr_writer :interoperability
219
+
220
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
221
+ attr_reader :makernote
222
+
223
+ sig { params(makernote: T::Hash[Symbol, T.anything]).void }
224
+ attr_writer :makernote
225
+
226
+ # Object containing Thumbnail information.
227
+ sig { returns(T.nilable(Imagekitio::Metadata::Exif::Thumbnail)) }
228
+ attr_reader :thumbnail
229
+
230
+ sig do
231
+ params(thumbnail: Imagekitio::Metadata::Exif::Thumbnail::OrHash).void
232
+ end
233
+ attr_writer :thumbnail
234
+
235
+ sig do
236
+ params(
237
+ exif: Imagekitio::Metadata::Exif::Exif::OrHash,
238
+ gps: Imagekitio::Metadata::Exif::Gps::OrHash,
239
+ image: Imagekitio::Metadata::Exif::Image::OrHash,
240
+ interoperability:
241
+ Imagekitio::Metadata::Exif::Interoperability::OrHash,
242
+ makernote: T::Hash[Symbol, T.anything],
243
+ thumbnail: Imagekitio::Metadata::Exif::Thumbnail::OrHash
244
+ ).returns(T.attached_class)
245
+ end
246
+ def self.new(
247
+ # Object containing Exif details.
248
+ exif: nil,
249
+ # Object containing GPS information.
250
+ gps: nil,
251
+ # Object containing EXIF image information.
252
+ image: nil,
253
+ # JSON object.
254
+ interoperability: nil,
255
+ makernote: nil,
256
+ # Object containing Thumbnail information.
257
+ thumbnail: nil
258
+ )
259
+ end
260
+
261
+ sig do
262
+ override.returns(
263
+ {
264
+ exif: Imagekitio::Metadata::Exif::Exif,
265
+ gps: Imagekitio::Metadata::Exif::Gps,
266
+ image: Imagekitio::Metadata::Exif::Image,
267
+ interoperability: Imagekitio::Metadata::Exif::Interoperability,
268
+ makernote: T::Hash[Symbol, T.anything],
269
+ thumbnail: Imagekitio::Metadata::Exif::Thumbnail
270
+ }
271
+ )
272
+ end
273
+ def to_hash
274
+ end
275
+
276
+ class Exif < Imagekitio::Internal::Type::BaseModel
277
+ OrHash =
278
+ T.type_alias do
279
+ T.any(
280
+ Imagekitio::Metadata::Exif::Exif,
281
+ Imagekitio::Internal::AnyHash
282
+ )
283
+ end
284
+
285
+ sig { returns(T.nilable(Float)) }
286
+ attr_reader :aperture_value
287
+
288
+ sig { params(aperture_value: Float).void }
289
+ attr_writer :aperture_value
290
+
291
+ sig { returns(T.nilable(Integer)) }
292
+ attr_reader :color_space
293
+
294
+ sig { params(color_space: Integer).void }
295
+ attr_writer :color_space
296
+
297
+ sig { returns(T.nilable(String)) }
298
+ attr_reader :create_date
299
+
300
+ sig { params(create_date: String).void }
301
+ attr_writer :create_date
302
+
303
+ sig { returns(T.nilable(Integer)) }
304
+ attr_reader :custom_rendered
305
+
306
+ sig { params(custom_rendered: Integer).void }
307
+ attr_writer :custom_rendered
308
+
309
+ sig { returns(T.nilable(String)) }
310
+ attr_reader :date_time_original
311
+
312
+ sig { params(date_time_original: String).void }
313
+ attr_writer :date_time_original
314
+
315
+ sig { returns(T.nilable(Integer)) }
316
+ attr_reader :exif_image_height
317
+
318
+ sig { params(exif_image_height: Integer).void }
319
+ attr_writer :exif_image_height
320
+
321
+ sig { returns(T.nilable(Integer)) }
322
+ attr_reader :exif_image_width
323
+
324
+ sig { params(exif_image_width: Integer).void }
325
+ attr_writer :exif_image_width
326
+
327
+ sig { returns(T.nilable(String)) }
328
+ attr_reader :exif_version
329
+
330
+ sig { params(exif_version: String).void }
331
+ attr_writer :exif_version
332
+
333
+ sig { returns(T.nilable(Float)) }
334
+ attr_reader :exposure_compensation
335
+
336
+ sig { params(exposure_compensation: Float).void }
337
+ attr_writer :exposure_compensation
338
+
339
+ sig { returns(T.nilable(Integer)) }
340
+ attr_reader :exposure_mode
341
+
342
+ sig { params(exposure_mode: Integer).void }
343
+ attr_writer :exposure_mode
344
+
345
+ sig { returns(T.nilable(Integer)) }
346
+ attr_reader :exposure_program
347
+
348
+ sig { params(exposure_program: Integer).void }
349
+ attr_writer :exposure_program
350
+
351
+ sig { returns(T.nilable(Float)) }
352
+ attr_reader :exposure_time
353
+
354
+ sig { params(exposure_time: Float).void }
355
+ attr_writer :exposure_time
356
+
357
+ sig { returns(T.nilable(Integer)) }
358
+ attr_reader :flash
359
+
360
+ sig { params(flash: Integer).void }
361
+ attr_writer :flash
362
+
363
+ sig { returns(T.nilable(String)) }
364
+ attr_reader :flashpix_version
365
+
366
+ sig { params(flashpix_version: String).void }
367
+ attr_writer :flashpix_version
368
+
369
+ sig { returns(T.nilable(Float)) }
370
+ attr_reader :f_number
371
+
372
+ sig { params(f_number: Float).void }
373
+ attr_writer :f_number
374
+
375
+ sig { returns(T.nilable(Integer)) }
376
+ attr_reader :focal_length
377
+
378
+ sig { params(focal_length: Integer).void }
379
+ attr_writer :focal_length
380
+
381
+ sig { returns(T.nilable(Integer)) }
382
+ attr_reader :focal_plane_resolution_unit
383
+
384
+ sig { params(focal_plane_resolution_unit: Integer).void }
385
+ attr_writer :focal_plane_resolution_unit
386
+
387
+ sig { returns(T.nilable(Float)) }
388
+ attr_reader :focal_plane_x_resolution
389
+
390
+ sig { params(focal_plane_x_resolution: Float).void }
391
+ attr_writer :focal_plane_x_resolution
392
+
393
+ sig { returns(T.nilable(Float)) }
394
+ attr_reader :focal_plane_y_resolution
395
+
396
+ sig { params(focal_plane_y_resolution: Float).void }
397
+ attr_writer :focal_plane_y_resolution
398
+
399
+ sig { returns(T.nilable(Integer)) }
400
+ attr_reader :interop_offset
401
+
402
+ sig { params(interop_offset: Integer).void }
403
+ attr_writer :interop_offset
404
+
405
+ sig { returns(T.nilable(Integer)) }
406
+ attr_reader :iso
407
+
408
+ sig { params(iso: Integer).void }
409
+ attr_writer :iso
410
+
411
+ sig { returns(T.nilable(Integer)) }
412
+ attr_reader :metering_mode
413
+
414
+ sig { params(metering_mode: Integer).void }
415
+ attr_writer :metering_mode
416
+
417
+ sig { returns(T.nilable(Integer)) }
418
+ attr_reader :scene_capture_type
419
+
420
+ sig { params(scene_capture_type: Integer).void }
421
+ attr_writer :scene_capture_type
422
+
423
+ sig { returns(T.nilable(Float)) }
424
+ attr_reader :shutter_speed_value
425
+
426
+ sig { params(shutter_speed_value: Float).void }
427
+ attr_writer :shutter_speed_value
428
+
429
+ sig { returns(T.nilable(String)) }
430
+ attr_reader :sub_sec_time
431
+
432
+ sig { params(sub_sec_time: String).void }
433
+ attr_writer :sub_sec_time
434
+
435
+ sig { returns(T.nilable(Integer)) }
436
+ attr_reader :white_balance
437
+
438
+ sig { params(white_balance: Integer).void }
439
+ attr_writer :white_balance
440
+
441
+ # Object containing Exif details.
442
+ sig do
443
+ params(
444
+ aperture_value: Float,
445
+ color_space: Integer,
446
+ create_date: String,
447
+ custom_rendered: Integer,
448
+ date_time_original: String,
449
+ exif_image_height: Integer,
450
+ exif_image_width: Integer,
451
+ exif_version: String,
452
+ exposure_compensation: Float,
453
+ exposure_mode: Integer,
454
+ exposure_program: Integer,
455
+ exposure_time: Float,
456
+ flash: Integer,
457
+ flashpix_version: String,
458
+ f_number: Float,
459
+ focal_length: Integer,
460
+ focal_plane_resolution_unit: Integer,
461
+ focal_plane_x_resolution: Float,
462
+ focal_plane_y_resolution: Float,
463
+ interop_offset: Integer,
464
+ iso: Integer,
465
+ metering_mode: Integer,
466
+ scene_capture_type: Integer,
467
+ shutter_speed_value: Float,
468
+ sub_sec_time: String,
469
+ white_balance: Integer
470
+ ).returns(T.attached_class)
471
+ end
472
+ def self.new(
473
+ aperture_value: nil,
474
+ color_space: nil,
475
+ create_date: nil,
476
+ custom_rendered: nil,
477
+ date_time_original: nil,
478
+ exif_image_height: nil,
479
+ exif_image_width: nil,
480
+ exif_version: nil,
481
+ exposure_compensation: nil,
482
+ exposure_mode: nil,
483
+ exposure_program: nil,
484
+ exposure_time: nil,
485
+ flash: nil,
486
+ flashpix_version: nil,
487
+ f_number: nil,
488
+ focal_length: nil,
489
+ focal_plane_resolution_unit: nil,
490
+ focal_plane_x_resolution: nil,
491
+ focal_plane_y_resolution: nil,
492
+ interop_offset: nil,
493
+ iso: nil,
494
+ metering_mode: nil,
495
+ scene_capture_type: nil,
496
+ shutter_speed_value: nil,
497
+ sub_sec_time: nil,
498
+ white_balance: nil
499
+ )
500
+ end
501
+
502
+ sig do
503
+ override.returns(
504
+ {
505
+ aperture_value: Float,
506
+ color_space: Integer,
507
+ create_date: String,
508
+ custom_rendered: Integer,
509
+ date_time_original: String,
510
+ exif_image_height: Integer,
511
+ exif_image_width: Integer,
512
+ exif_version: String,
513
+ exposure_compensation: Float,
514
+ exposure_mode: Integer,
515
+ exposure_program: Integer,
516
+ exposure_time: Float,
517
+ flash: Integer,
518
+ flashpix_version: String,
519
+ f_number: Float,
520
+ focal_length: Integer,
521
+ focal_plane_resolution_unit: Integer,
522
+ focal_plane_x_resolution: Float,
523
+ focal_plane_y_resolution: Float,
524
+ interop_offset: Integer,
525
+ iso: Integer,
526
+ metering_mode: Integer,
527
+ scene_capture_type: Integer,
528
+ shutter_speed_value: Float,
529
+ sub_sec_time: String,
530
+ white_balance: Integer
531
+ }
532
+ )
533
+ end
534
+ def to_hash
535
+ end
536
+ end
537
+
538
+ class Gps < Imagekitio::Internal::Type::BaseModel
539
+ OrHash =
540
+ T.type_alias do
541
+ T.any(
542
+ Imagekitio::Metadata::Exif::Gps,
543
+ Imagekitio::Internal::AnyHash
544
+ )
545
+ end
546
+
547
+ sig { returns(T.nilable(T::Array[Integer])) }
548
+ attr_reader :gps_version_id
549
+
550
+ sig { params(gps_version_id: T::Array[Integer]).void }
551
+ attr_writer :gps_version_id
552
+
553
+ # Object containing GPS information.
554
+ sig do
555
+ params(gps_version_id: T::Array[Integer]).returns(T.attached_class)
556
+ end
557
+ def self.new(gps_version_id: nil)
558
+ end
559
+
560
+ sig { override.returns({ gps_version_id: T::Array[Integer] }) }
561
+ def to_hash
562
+ end
563
+ end
564
+
565
+ class Image < Imagekitio::Internal::Type::BaseModel
566
+ OrHash =
567
+ T.type_alias do
568
+ T.any(
569
+ Imagekitio::Metadata::Exif::Image,
570
+ Imagekitio::Internal::AnyHash
571
+ )
572
+ end
573
+
574
+ sig { returns(T.nilable(Integer)) }
575
+ attr_reader :exif_offset
576
+
577
+ sig { params(exif_offset: Integer).void }
578
+ attr_writer :exif_offset
579
+
580
+ sig { returns(T.nilable(Integer)) }
581
+ attr_reader :gps_info
582
+
583
+ sig { params(gps_info: Integer).void }
584
+ attr_writer :gps_info
585
+
586
+ sig { returns(T.nilable(String)) }
587
+ attr_reader :make
588
+
589
+ sig { params(make: String).void }
590
+ attr_writer :make
591
+
592
+ sig { returns(T.nilable(String)) }
593
+ attr_reader :model
594
+
595
+ sig { params(model: String).void }
596
+ attr_writer :model
597
+
598
+ sig { returns(T.nilable(String)) }
599
+ attr_reader :modify_date
600
+
601
+ sig { params(modify_date: String).void }
602
+ attr_writer :modify_date
603
+
604
+ sig { returns(T.nilable(Integer)) }
605
+ attr_reader :orientation
606
+
607
+ sig { params(orientation: Integer).void }
608
+ attr_writer :orientation
609
+
610
+ sig { returns(T.nilable(Integer)) }
611
+ attr_reader :resolution_unit
612
+
613
+ sig { params(resolution_unit: Integer).void }
614
+ attr_writer :resolution_unit
615
+
616
+ sig { returns(T.nilable(String)) }
617
+ attr_reader :software
618
+
619
+ sig { params(software: String).void }
620
+ attr_writer :software
621
+
622
+ sig { returns(T.nilable(Integer)) }
623
+ attr_reader :x_resolution
624
+
625
+ sig { params(x_resolution: Integer).void }
626
+ attr_writer :x_resolution
627
+
628
+ sig { returns(T.nilable(Integer)) }
629
+ attr_reader :y_cb_cr_positioning
630
+
631
+ sig { params(y_cb_cr_positioning: Integer).void }
632
+ attr_writer :y_cb_cr_positioning
633
+
634
+ sig { returns(T.nilable(Integer)) }
635
+ attr_reader :y_resolution
636
+
637
+ sig { params(y_resolution: Integer).void }
638
+ attr_writer :y_resolution
639
+
640
+ # Object containing EXIF image information.
641
+ sig do
642
+ params(
643
+ exif_offset: Integer,
644
+ gps_info: Integer,
645
+ make: String,
646
+ model: String,
647
+ modify_date: String,
648
+ orientation: Integer,
649
+ resolution_unit: Integer,
650
+ software: String,
651
+ x_resolution: Integer,
652
+ y_cb_cr_positioning: Integer,
653
+ y_resolution: Integer
654
+ ).returns(T.attached_class)
655
+ end
656
+ def self.new(
657
+ exif_offset: nil,
658
+ gps_info: nil,
659
+ make: nil,
660
+ model: nil,
661
+ modify_date: nil,
662
+ orientation: nil,
663
+ resolution_unit: nil,
664
+ software: nil,
665
+ x_resolution: nil,
666
+ y_cb_cr_positioning: nil,
667
+ y_resolution: nil
668
+ )
669
+ end
670
+
671
+ sig do
672
+ override.returns(
673
+ {
674
+ exif_offset: Integer,
675
+ gps_info: Integer,
676
+ make: String,
677
+ model: String,
678
+ modify_date: String,
679
+ orientation: Integer,
680
+ resolution_unit: Integer,
681
+ software: String,
682
+ x_resolution: Integer,
683
+ y_cb_cr_positioning: Integer,
684
+ y_resolution: Integer
685
+ }
686
+ )
687
+ end
688
+ def to_hash
689
+ end
690
+ end
691
+
692
+ class Interoperability < Imagekitio::Internal::Type::BaseModel
693
+ OrHash =
694
+ T.type_alias do
695
+ T.any(
696
+ Imagekitio::Metadata::Exif::Interoperability,
697
+ Imagekitio::Internal::AnyHash
698
+ )
699
+ end
700
+
701
+ sig { returns(T.nilable(String)) }
702
+ attr_reader :interop_index
703
+
704
+ sig { params(interop_index: String).void }
705
+ attr_writer :interop_index
706
+
707
+ sig { returns(T.nilable(String)) }
708
+ attr_reader :interop_version
709
+
710
+ sig { params(interop_version: String).void }
711
+ attr_writer :interop_version
712
+
713
+ # JSON object.
714
+ sig do
715
+ params(interop_index: String, interop_version: String).returns(
716
+ T.attached_class
717
+ )
718
+ end
719
+ def self.new(interop_index: nil, interop_version: nil)
720
+ end
721
+
722
+ sig do
723
+ override.returns({ interop_index: String, interop_version: String })
724
+ end
725
+ def to_hash
726
+ end
727
+ end
728
+
729
+ class Thumbnail < Imagekitio::Internal::Type::BaseModel
730
+ OrHash =
731
+ T.type_alias do
732
+ T.any(
733
+ Imagekitio::Metadata::Exif::Thumbnail,
734
+ Imagekitio::Internal::AnyHash
735
+ )
736
+ end
737
+
738
+ sig { returns(T.nilable(Integer)) }
739
+ attr_reader :compression
740
+
741
+ sig { params(compression: Integer).void }
742
+ attr_writer :compression
743
+
744
+ sig { returns(T.nilable(Integer)) }
745
+ attr_reader :resolution_unit
746
+
747
+ sig { params(resolution_unit: Integer).void }
748
+ attr_writer :resolution_unit
749
+
750
+ sig { returns(T.nilable(Integer)) }
751
+ attr_reader :thumbnail_length
752
+
753
+ sig { params(thumbnail_length: Integer).void }
754
+ attr_writer :thumbnail_length
755
+
756
+ sig { returns(T.nilable(Integer)) }
757
+ attr_reader :thumbnail_offset
758
+
759
+ sig { params(thumbnail_offset: Integer).void }
760
+ attr_writer :thumbnail_offset
761
+
762
+ sig { returns(T.nilable(Integer)) }
763
+ attr_reader :x_resolution
764
+
765
+ sig { params(x_resolution: Integer).void }
766
+ attr_writer :x_resolution
767
+
768
+ sig { returns(T.nilable(Integer)) }
769
+ attr_reader :y_resolution
770
+
771
+ sig { params(y_resolution: Integer).void }
772
+ attr_writer :y_resolution
773
+
774
+ # Object containing Thumbnail information.
775
+ sig do
776
+ params(
777
+ compression: Integer,
778
+ resolution_unit: Integer,
779
+ thumbnail_length: Integer,
780
+ thumbnail_offset: Integer,
781
+ x_resolution: Integer,
782
+ y_resolution: Integer
783
+ ).returns(T.attached_class)
784
+ end
785
+ def self.new(
786
+ compression: nil,
787
+ resolution_unit: nil,
788
+ thumbnail_length: nil,
789
+ thumbnail_offset: nil,
790
+ x_resolution: nil,
791
+ y_resolution: nil
792
+ )
793
+ end
794
+
795
+ sig do
796
+ override.returns(
797
+ {
798
+ compression: Integer,
799
+ resolution_unit: Integer,
800
+ thumbnail_length: Integer,
801
+ thumbnail_offset: Integer,
802
+ x_resolution: Integer,
803
+ y_resolution: Integer
804
+ }
805
+ )
806
+ end
807
+ def to_hash
808
+ end
809
+ end
810
+ end
811
+ end
812
+ end
813
+ end