imagekitio 4.0.0 → 4.1.1

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 (102) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +47 -0
  3. data/README.md +1 -1
  4. data/lib/imagekitio/client.rb +4 -0
  5. data/lib/imagekitio/helpers/helper.rb +4 -0
  6. data/lib/imagekitio/helpers/transformation_utils.rb +7 -0
  7. data/lib/imagekitio/internal/transport/base_client.rb +7 -1
  8. data/lib/imagekitio/internal/transport/pooled_net_requester.rb +17 -24
  9. data/lib/imagekitio/internal/type/base_model.rb +1 -0
  10. data/lib/imagekitio/internal/type/union.rb +20 -8
  11. data/lib/imagekitio/internal/util.rb +7 -2
  12. data/lib/imagekitio/models/base_overlay.rb +73 -3
  13. data/lib/imagekitio/models/beta/v2/file_upload_params.rb +2 -2
  14. data/lib/imagekitio/models/beta/v2/file_upload_response.rb +21 -1
  15. data/lib/imagekitio/models/extension_config.rb +674 -0
  16. data/lib/imagekitio/models/extensions.rb +559 -1
  17. data/lib/imagekitio/models/file_update_response.rb +21 -1
  18. data/lib/imagekitio/models/file_upload_params.rb +2 -2
  19. data/lib/imagekitio/models/file_upload_response.rb +21 -1
  20. data/lib/imagekitio/models/image_overlay.rb +12 -0
  21. data/lib/imagekitio/models/saved_extension.rb +62 -0
  22. data/lib/imagekitio/models/saved_extension_create_params.rb +42 -0
  23. data/lib/imagekitio/models/saved_extension_delete_params.rb +14 -0
  24. data/lib/imagekitio/models/saved_extension_get_params.rb +14 -0
  25. data/lib/imagekitio/models/saved_extension_list_params.rb +14 -0
  26. data/lib/imagekitio/models/saved_extension_list_response.rb +8 -0
  27. data/lib/imagekitio/models/saved_extension_update_params.rb +42 -0
  28. data/lib/imagekitio/models/solid_color_overlay_transformation.rb +24 -12
  29. data/lib/imagekitio/models/subtitle_overlay.rb +12 -0
  30. data/lib/imagekitio/models/subtitle_overlay_transformation.rb +4 -3
  31. data/lib/imagekitio/models/text_overlay.rb +6 -0
  32. data/lib/imagekitio/models/text_overlay_transformation.rb +35 -19
  33. data/lib/imagekitio/models/transformation.rb +62 -12
  34. data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +2 -0
  35. data/lib/imagekitio/models/unwrap_webhook_event.rb +2 -0
  36. data/lib/imagekitio/models/update_file_request.rb +2 -2
  37. data/lib/imagekitio/models/upload_pre_transform_success_event.rb +21 -1
  38. data/lib/imagekitio/models/video_overlay.rb +12 -0
  39. data/lib/imagekitio/models.rb +14 -0
  40. data/lib/imagekitio/resources/beta/v2/files.rb +1 -1
  41. data/lib/imagekitio/resources/files/metadata.rb +1 -1
  42. data/lib/imagekitio/resources/files.rb +1 -1
  43. data/lib/imagekitio/resources/saved_extensions.rb +146 -0
  44. data/lib/imagekitio/version.rb +1 -1
  45. data/lib/imagekitio.rb +11 -1
  46. data/manifest.yaml +2 -0
  47. data/rbi/imagekitio/client.rbi +3 -0
  48. data/rbi/imagekitio/internal/transport/base_client.rbi +5 -0
  49. data/rbi/imagekitio/internal/transport/pooled_net_requester.rbi +6 -2
  50. data/rbi/imagekitio/internal/type/base_model.rbi +8 -4
  51. data/rbi/imagekitio/models/base_overlay.rbi +110 -1
  52. data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +8 -0
  53. data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +61 -0
  54. data/rbi/imagekitio/models/extension_config.rbi +1406 -0
  55. data/rbi/imagekitio/models/extensions.rbi +1162 -0
  56. data/rbi/imagekitio/models/file_update_response.rbi +61 -0
  57. data/rbi/imagekitio/models/file_upload_params.rbi +8 -0
  58. data/rbi/imagekitio/models/file_upload_response.rbi +61 -0
  59. data/rbi/imagekitio/models/image_overlay.rbi +18 -0
  60. data/rbi/imagekitio/models/saved_extension.rbi +114 -0
  61. data/rbi/imagekitio/models/saved_extension_create_params.rbi +85 -0
  62. data/rbi/imagekitio/models/saved_extension_delete_params.rbi +30 -0
  63. data/rbi/imagekitio/models/saved_extension_get_params.rbi +30 -0
  64. data/rbi/imagekitio/models/saved_extension_list_params.rbi +30 -0
  65. data/rbi/imagekitio/models/saved_extension_list_response.rbi +11 -0
  66. data/rbi/imagekitio/models/saved_extension_update_params.rbi +106 -0
  67. data/rbi/imagekitio/models/solid_color_overlay_transformation.rbi +33 -18
  68. data/rbi/imagekitio/models/subtitle_overlay.rbi +18 -0
  69. data/rbi/imagekitio/models/subtitle_overlay_transformation.rbi +6 -4
  70. data/rbi/imagekitio/models/text_overlay.rbi +9 -0
  71. data/rbi/imagekitio/models/text_overlay_transformation.rbi +47 -26
  72. data/rbi/imagekitio/models/transformation.rbi +99 -18
  73. data/rbi/imagekitio/models/update_file_request.rbi +8 -0
  74. data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +61 -0
  75. data/rbi/imagekitio/models/video_overlay.rbi +18 -0
  76. data/rbi/imagekitio/models.rbi +14 -0
  77. data/rbi/imagekitio/resources/beta/v2/files.rbi +2 -0
  78. data/rbi/imagekitio/resources/files.rbi +2 -0
  79. data/rbi/imagekitio/resources/saved_extensions.rbi +114 -0
  80. data/sig/imagekitio/client.rbs +2 -0
  81. data/sig/imagekitio/internal/transport/base_client.rbs +2 -0
  82. data/sig/imagekitio/internal/transport/pooled_net_requester.rbs +4 -1
  83. data/sig/imagekitio/models/base_overlay.rbs +22 -0
  84. data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +21 -0
  85. data/sig/imagekitio/models/extension_config.rbs +606 -0
  86. data/sig/imagekitio/models/extensions.rbs +491 -0
  87. data/sig/imagekitio/models/file_update_response.rbs +21 -0
  88. data/sig/imagekitio/models/file_upload_response.rbs +21 -0
  89. data/sig/imagekitio/models/saved_extension.rbs +59 -0
  90. data/sig/imagekitio/models/saved_extension_create_params.rbs +36 -0
  91. data/sig/imagekitio/models/saved_extension_delete_params.rbs +15 -0
  92. data/sig/imagekitio/models/saved_extension_get_params.rbs +15 -0
  93. data/sig/imagekitio/models/saved_extension_list_params.rbs +15 -0
  94. data/sig/imagekitio/models/saved_extension_list_response.rbs +7 -0
  95. data/sig/imagekitio/models/saved_extension_update_params.rbs +44 -0
  96. data/sig/imagekitio/models/solid_color_overlay_transformation.rbs +1 -1
  97. data/sig/imagekitio/models/text_overlay_transformation.rbs +1 -1
  98. data/sig/imagekitio/models/transformation.rbs +15 -1
  99. data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +21 -0
  100. data/sig/imagekitio/models.rbs +14 -0
  101. data/sig/imagekitio/resources/saved_extensions.rbs +33 -0
  102. metadata +43 -2
@@ -583,6 +583,23 @@ module Imagekitio
583
583
  end
584
584
  attr_writer :ai_auto_description
585
585
 
586
+ sig do
587
+ returns(
588
+ T.nilable(
589
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol
590
+ )
591
+ )
592
+ end
593
+ attr_reader :ai_tasks
594
+
595
+ sig do
596
+ params(
597
+ ai_tasks:
598
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::OrSymbol
599
+ ).void
600
+ end
601
+ attr_writer :ai_tasks
602
+
586
603
  sig do
587
604
  returns(
588
605
  T.nilable(
@@ -647,6 +664,8 @@ module Imagekitio
647
664
  params(
648
665
  ai_auto_description:
649
666
  Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AIAutoDescription::OrSymbol,
667
+ ai_tasks:
668
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::OrSymbol,
650
669
  aws_auto_tagging:
651
670
  Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AwsAutoTagging::OrSymbol,
652
671
  google_auto_tagging:
@@ -657,6 +676,7 @@ module Imagekitio
657
676
  end
658
677
  def self.new(
659
678
  ai_auto_description: nil,
679
+ ai_tasks: nil,
660
680
  aws_auto_tagging: nil,
661
681
  google_auto_tagging: nil,
662
682
  remove_bg: nil
@@ -668,6 +688,8 @@ module Imagekitio
668
688
  {
669
689
  ai_auto_description:
670
690
  Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AIAutoDescription::TaggedSymbol,
691
+ ai_tasks:
692
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol,
671
693
  aws_auto_tagging:
672
694
  Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AwsAutoTagging::TaggedSymbol,
673
695
  google_auto_tagging:
@@ -719,6 +741,45 @@ module Imagekitio
719
741
  end
720
742
  end
721
743
 
744
+ module AITasks
745
+ extend Imagekitio::Internal::Type::Enum
746
+
747
+ TaggedSymbol =
748
+ T.type_alias do
749
+ T.all(
750
+ Symbol,
751
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks
752
+ )
753
+ end
754
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
755
+
756
+ SUCCESS =
757
+ T.let(
758
+ :success,
759
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol
760
+ )
761
+ PENDING =
762
+ T.let(
763
+ :pending,
764
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol
765
+ )
766
+ FAILED =
767
+ T.let(
768
+ :failed,
769
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol
770
+ )
771
+
772
+ sig do
773
+ override.returns(
774
+ T::Array[
775
+ Imagekitio::UploadPreTransformSuccessEvent::Data::ExtensionStatus::AITasks::TaggedSymbol
776
+ ]
777
+ )
778
+ end
779
+ def self.values
780
+ end
781
+ end
782
+
722
783
  module AwsAutoTagging
723
784
  extend Imagekitio::Internal::Type::Enum
724
785
 
@@ -20,6 +20,12 @@ module Imagekitio
20
20
  # format automatically. To always use base64 encoding (`ie-{base64}`), set this
21
21
  # parameter to `base64`. To always use plain text (`i-{input}`), set it to
22
22
  # `plain`.
23
+ #
24
+ # Regardless of the encoding method:
25
+ #
26
+ # - Leading and trailing slashes are removed.
27
+ # - Remaining slashes within the path are replaced with `@@` when using plain
28
+ # text.
23
29
  sig { returns(T.nilable(Imagekitio::VideoOverlay::Encoding::OrSymbol)) }
24
30
  attr_reader :encoding
25
31
 
@@ -53,6 +59,12 @@ module Imagekitio
53
59
  # format automatically. To always use base64 encoding (`ie-{base64}`), set this
54
60
  # parameter to `base64`. To always use plain text (`i-{input}`), set it to
55
61
  # `plain`.
62
+ #
63
+ # Regardless of the encoding method:
64
+ #
65
+ # - Leading and trailing slashes are removed.
66
+ # - Remaining slashes within the path are replaced with `@@` when using plain
67
+ # text.
56
68
  encoding: nil,
57
69
  # Array of transformation to be applied to the overlay video. Except
58
70
  # `streamingResolutions`, all other video transformations are supported. See
@@ -80,6 +92,12 @@ module Imagekitio
80
92
  # format automatically. To always use base64 encoding (`ie-{base64}`), set this
81
93
  # parameter to `base64`. To always use plain text (`i-{input}`), set it to
82
94
  # `plain`.
95
+ #
96
+ # Regardless of the encoding method:
97
+ #
98
+ # - Leading and trailing slashes are removed.
99
+ # - Remaining slashes within the path are replaced with `@@` when using plain
100
+ # text.
83
101
  module Encoding
84
102
  extend Imagekitio::Internal::Type::Enum
85
103
 
@@ -27,6 +27,8 @@ module Imagekitio
27
27
  CustomMetadataFieldUpdateParams =
28
28
  Imagekitio::Models::CustomMetadataFieldUpdateParams
29
29
 
30
+ ExtensionConfig = Imagekitio::Models::ExtensionConfig
31
+
30
32
  ExtensionItem = Imagekitio::Models::ExtensionItem
31
33
 
32
34
  Extensions =
@@ -78,6 +80,18 @@ module Imagekitio
78
80
 
79
81
  ResponsiveImageAttributes = Imagekitio::Models::ResponsiveImageAttributes
80
82
 
83
+ SavedExtension = Imagekitio::Models::SavedExtension
84
+
85
+ SavedExtensionCreateParams = Imagekitio::Models::SavedExtensionCreateParams
86
+
87
+ SavedExtensionDeleteParams = Imagekitio::Models::SavedExtensionDeleteParams
88
+
89
+ SavedExtensionGetParams = Imagekitio::Models::SavedExtensionGetParams
90
+
91
+ SavedExtensionListParams = Imagekitio::Models::SavedExtensionListParams
92
+
93
+ SavedExtensionUpdateParams = Imagekitio::Models::SavedExtensionUpdateParams
94
+
81
95
  SolidColorOverlay = Imagekitio::Models::SolidColorOverlay
82
96
 
83
97
  SolidColorOverlayTransformation =
@@ -46,6 +46,8 @@ module Imagekitio
46
46
  T.any(
47
47
  Imagekitio::ExtensionItem::RemoveBg::OrHash,
48
48
  Imagekitio::ExtensionItem::AIAutoDescription::OrHash,
49
+ Imagekitio::ExtensionItem::AITasks::OrHash,
50
+ Imagekitio::ExtensionItem::SavedExtension::OrHash,
49
51
  Imagekitio::ExtensionItem::AutoTaggingExtension::OrHash
50
52
  )
51
53
  ],
@@ -199,6 +199,8 @@ module Imagekitio
199
199
  T.any(
200
200
  Imagekitio::ExtensionItem::RemoveBg::OrHash,
201
201
  Imagekitio::ExtensionItem::AIAutoDescription::OrHash,
202
+ Imagekitio::ExtensionItem::AITasks::OrHash,
203
+ Imagekitio::ExtensionItem::SavedExtension::OrHash,
202
204
  Imagekitio::ExtensionItem::AutoTaggingExtension::OrHash
203
205
  )
204
206
  ],
@@ -0,0 +1,114 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Resources
5
+ class SavedExtensions
6
+ # This API creates a new saved extension. Saved extensions allow you to save
7
+ # complex extension configurations (like AI tasks) and reuse them by referencing
8
+ # the ID in upload or update file APIs.
9
+ #
10
+ # **Saved extension limit** \
11
+ # You can create a maximum of 100 saved extensions per account.
12
+ sig do
13
+ params(
14
+ config:
15
+ T.any(
16
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
17
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
18
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
19
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
20
+ ),
21
+ description: String,
22
+ name: String,
23
+ request_options: Imagekitio::RequestOptions::OrHash
24
+ ).returns(Imagekitio::SavedExtension)
25
+ end
26
+ def create(
27
+ # Configuration object for an extension (base extensions only, not saved extension
28
+ # references).
29
+ config:,
30
+ # Description of what the saved extension does.
31
+ description:,
32
+ # Name of the saved extension.
33
+ name:,
34
+ request_options: {}
35
+ )
36
+ end
37
+
38
+ # This API updates an existing saved extension. You can update the name,
39
+ # description, or config.
40
+ sig do
41
+ params(
42
+ id: String,
43
+ config:
44
+ T.any(
45
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
46
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
47
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
48
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
49
+ ),
50
+ description: String,
51
+ name: String,
52
+ request_options: Imagekitio::RequestOptions::OrHash
53
+ ).returns(Imagekitio::SavedExtension)
54
+ end
55
+ def update(
56
+ # The unique ID of the saved extension.
57
+ id,
58
+ # Configuration object for an extension (base extensions only, not saved extension
59
+ # references).
60
+ config: nil,
61
+ # Updated description of the saved extension.
62
+ description: nil,
63
+ # Updated name of the saved extension.
64
+ name: nil,
65
+ request_options: {}
66
+ )
67
+ end
68
+
69
+ # This API returns an array of all saved extensions for your account. Saved
70
+ # extensions allow you to save complex extension configurations and reuse them by
71
+ # referencing them by ID in upload or update file APIs.
72
+ sig do
73
+ params(request_options: Imagekitio::RequestOptions::OrHash).returns(
74
+ T::Array[Imagekitio::SavedExtension]
75
+ )
76
+ end
77
+ def list(request_options: {})
78
+ end
79
+
80
+ # This API deletes a saved extension permanently.
81
+ sig do
82
+ params(
83
+ id: String,
84
+ request_options: Imagekitio::RequestOptions::OrHash
85
+ ).void
86
+ end
87
+ def delete(
88
+ # The unique ID of the saved extension.
89
+ id,
90
+ request_options: {}
91
+ )
92
+ end
93
+
94
+ # This API returns details of a specific saved extension by ID.
95
+ sig do
96
+ params(
97
+ id: String,
98
+ request_options: Imagekitio::RequestOptions::OrHash
99
+ ).returns(Imagekitio::SavedExtension)
100
+ end
101
+ def get(
102
+ # The unique ID of the saved extension.
103
+ id,
104
+ request_options: {}
105
+ )
106
+ end
107
+
108
+ # @api private
109
+ sig { params(client: Imagekitio::Client).returns(T.attached_class) }
110
+ def self.new(client:)
111
+ end
112
+ end
113
+ end
114
+ end
@@ -16,6 +16,8 @@ module Imagekitio
16
16
 
17
17
  attr_reader files: Imagekitio::Resources::Files
18
18
 
19
+ attr_reader saved_extensions: Imagekitio::Resources::SavedExtensions
20
+
19
21
  attr_reader assets: Imagekitio::Resources::Assets
20
22
 
21
23
  attr_reader cache: Imagekitio::Resources::Cache
@@ -87,6 +87,8 @@ module Imagekitio
87
87
 
88
88
  private def auth_headers: -> ::Hash[String, String]
89
89
 
90
+ private def user_agent: -> String
91
+
90
92
  private def generate_idempotency_key: -> String
91
93
 
92
94
  private def build_request: (
@@ -17,7 +17,10 @@ module Imagekitio
17
17
 
18
18
  DEFAULT_MAX_CONNECTIONS: Integer
19
19
 
20
- def self.connect: (URI::Generic url) -> top
20
+ def self.connect: (
21
+ cert_store: OpenSSL::X509::Store,
22
+ url: URI::Generic
23
+ ) -> top
21
24
 
22
25
  def self.calibrate_socket_timeout: (top conn, Float deadline) -> void
23
26
 
@@ -2,11 +2,18 @@ module Imagekitio
2
2
  module Models
3
3
  type base_overlay =
4
4
  {
5
+ layer_mode: Imagekitio::Models::BaseOverlay::layer_mode,
5
6
  position: Imagekitio::OverlayPosition,
6
7
  timing: Imagekitio::OverlayTiming
7
8
  }
8
9
 
9
10
  class BaseOverlay < Imagekitio::Internal::Type::BaseModel
11
+ attr_reader layer_mode: Imagekitio::Models::BaseOverlay::layer_mode?
12
+
13
+ def layer_mode=: (
14
+ Imagekitio::Models::BaseOverlay::layer_mode
15
+ ) -> Imagekitio::Models::BaseOverlay::layer_mode
16
+
10
17
  attr_reader position: Imagekitio::OverlayPosition?
11
18
 
12
19
  def position=: (
@@ -18,14 +25,29 @@ module Imagekitio
18
25
  def timing=: (Imagekitio::OverlayTiming) -> Imagekitio::OverlayTiming
19
26
 
20
27
  def initialize: (
28
+ ?layer_mode: Imagekitio::Models::BaseOverlay::layer_mode,
21
29
  ?position: Imagekitio::OverlayPosition,
22
30
  ?timing: Imagekitio::OverlayTiming
23
31
  ) -> void
24
32
 
25
33
  def to_hash: -> {
34
+ layer_mode: Imagekitio::Models::BaseOverlay::layer_mode,
26
35
  position: Imagekitio::OverlayPosition,
27
36
  timing: Imagekitio::OverlayTiming
28
37
  }
38
+
39
+ type layer_mode = :multiply | :cutter | :cutout | :displace
40
+
41
+ module LayerMode
42
+ extend Imagekitio::Internal::Type::Enum
43
+
44
+ MULTIPLY: :multiply
45
+ CUTTER: :cutter
46
+ CUTOUT: :cutout
47
+ DISPLACE: :displace
48
+
49
+ def self?.values: -> ::Array[Imagekitio::Models::BaseOverlay::layer_mode]
50
+ end
29
51
  end
30
52
  end
31
53
  end
@@ -215,6 +215,7 @@ module Imagekitio
215
215
  type extension_status =
216
216
  {
217
217
  ai_auto_description: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description,
218
+ ai_tasks: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks,
218
219
  aws_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::aws_auto_tagging,
219
220
  google_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::google_auto_tagging,
220
221
  remove_bg: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::remove_bg
@@ -227,6 +228,12 @@ module Imagekitio
227
228
  Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description
228
229
  ) -> Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description
229
230
 
231
+ attr_reader ai_tasks: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks?
232
+
233
+ def ai_tasks=: (
234
+ Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks
235
+ ) -> Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks
236
+
230
237
  attr_reader aws_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::aws_auto_tagging?
231
238
 
232
239
  def aws_auto_tagging=: (
@@ -247,6 +254,7 @@ module Imagekitio
247
254
 
248
255
  def initialize: (
249
256
  ?ai_auto_description: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description,
257
+ ?ai_tasks: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks,
250
258
  ?aws_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::aws_auto_tagging,
251
259
  ?google_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::google_auto_tagging,
252
260
  ?remove_bg: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::remove_bg
@@ -254,6 +262,7 @@ module Imagekitio
254
262
 
255
263
  def to_hash: -> {
256
264
  ai_auto_description: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description,
265
+ ai_tasks: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks,
257
266
  aws_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::aws_auto_tagging,
258
267
  google_auto_tagging: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::google_auto_tagging,
259
268
  remove_bg: Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::remove_bg
@@ -271,6 +280,18 @@ module Imagekitio
271
280
  def self?.values: -> ::Array[Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_auto_description]
272
281
  end
273
282
 
283
+ type ai_tasks = :success | :pending | :failed
284
+
285
+ module AITasks
286
+ extend Imagekitio::Internal::Type::Enum
287
+
288
+ SUCCESS: :success
289
+ PENDING: :pending
290
+ FAILED: :failed
291
+
292
+ def self?.values: -> ::Array[Imagekitio::Models::Beta::V2::FileUploadResponse::ExtensionStatus::ai_tasks]
293
+ end
294
+
274
295
  type aws_auto_tagging = :success | :pending | :failed
275
296
 
276
297
  module AwsAutoTagging