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
@@ -0,0 +1,606 @@
1
+ module Imagekitio
2
+ module Models
3
+ type extension_config =
4
+ Imagekitio::ExtensionConfig::RemoveBg
5
+ | Imagekitio::ExtensionConfig::AIAutoDescription
6
+ | Imagekitio::ExtensionConfig::AITasks
7
+ | Imagekitio::ExtensionConfig::AutoTaggingExtension
8
+
9
+ module ExtensionConfig
10
+ extend Imagekitio::Internal::Type::Union
11
+
12
+ type remove_bg =
13
+ {
14
+ name: :"remove-bg",
15
+ options: Imagekitio::ExtensionConfig::RemoveBg::Options
16
+ }
17
+
18
+ class RemoveBg < Imagekitio::Internal::Type::BaseModel
19
+ attr_accessor name: :"remove-bg"
20
+
21
+ attr_reader options: Imagekitio::ExtensionConfig::RemoveBg::Options?
22
+
23
+ def options=: (
24
+ Imagekitio::ExtensionConfig::RemoveBg::Options
25
+ ) -> Imagekitio::ExtensionConfig::RemoveBg::Options
26
+
27
+ def initialize: (
28
+ ?options: Imagekitio::ExtensionConfig::RemoveBg::Options,
29
+ ?name: :"remove-bg"
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ name: :"remove-bg",
34
+ options: Imagekitio::ExtensionConfig::RemoveBg::Options
35
+ }
36
+
37
+ type options =
38
+ {
39
+ add_shadow: bool,
40
+ bg_color: String,
41
+ bg_image_url: String,
42
+ semitransparency: bool
43
+ }
44
+
45
+ class Options < Imagekitio::Internal::Type::BaseModel
46
+ attr_reader add_shadow: bool?
47
+
48
+ def add_shadow=: (bool) -> bool
49
+
50
+ attr_reader bg_color: String?
51
+
52
+ def bg_color=: (String) -> String
53
+
54
+ attr_reader bg_image_url: String?
55
+
56
+ def bg_image_url=: (String) -> String
57
+
58
+ attr_reader semitransparency: bool?
59
+
60
+ def semitransparency=: (bool) -> bool
61
+
62
+ def initialize: (
63
+ ?add_shadow: bool,
64
+ ?bg_color: String,
65
+ ?bg_image_url: String,
66
+ ?semitransparency: bool
67
+ ) -> void
68
+
69
+ def to_hash: -> {
70
+ add_shadow: bool,
71
+ bg_color: String,
72
+ bg_image_url: String,
73
+ semitransparency: bool
74
+ }
75
+ end
76
+ end
77
+
78
+ type auto_tagging_extension =
79
+ {
80
+ max_tags: Integer,
81
+ min_confidence: Integer,
82
+ name: Imagekitio::Models::ExtensionConfig::AutoTaggingExtension::name_
83
+ }
84
+
85
+ class AutoTaggingExtension < Imagekitio::Internal::Type::BaseModel
86
+ attr_accessor max_tags: Integer
87
+
88
+ attr_accessor min_confidence: Integer
89
+
90
+ attr_accessor name: Imagekitio::Models::ExtensionConfig::AutoTaggingExtension::name_
91
+
92
+ def initialize: (
93
+ max_tags: Integer,
94
+ min_confidence: Integer,
95
+ name: Imagekitio::Models::ExtensionConfig::AutoTaggingExtension::name_
96
+ ) -> void
97
+
98
+ def to_hash: -> {
99
+ max_tags: Integer,
100
+ min_confidence: Integer,
101
+ name: Imagekitio::Models::ExtensionConfig::AutoTaggingExtension::name_
102
+ }
103
+
104
+ type name_ = :"google-auto-tagging" | :"aws-auto-tagging"
105
+
106
+ module Name
107
+ extend Imagekitio::Internal::Type::Enum
108
+
109
+ GOOGLE_AUTO_TAGGING: :"google-auto-tagging"
110
+ AWS_AUTO_TAGGING: :"aws-auto-tagging"
111
+
112
+ def self?.values: -> ::Array[Imagekitio::Models::ExtensionConfig::AutoTaggingExtension::name_]
113
+ end
114
+ end
115
+
116
+ type ai_auto_description = { name: :"ai-auto-description" }
117
+
118
+ class AIAutoDescription < Imagekitio::Internal::Type::BaseModel
119
+ attr_accessor name: :"ai-auto-description"
120
+
121
+ def initialize: (?name: :"ai-auto-description") -> void
122
+
123
+ def to_hash: -> { name: :"ai-auto-description" }
124
+ end
125
+
126
+ type ai_tasks =
127
+ {
128
+ name: :"ai-tasks",
129
+ tasks: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::task]
130
+ }
131
+
132
+ class AITasks < Imagekitio::Internal::Type::BaseModel
133
+ attr_accessor name: :"ai-tasks"
134
+
135
+ attr_accessor tasks: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::task]
136
+
137
+ def initialize: (
138
+ tasks: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::task],
139
+ ?name: :"ai-tasks"
140
+ ) -> void
141
+
142
+ def to_hash: -> {
143
+ name: :"ai-tasks",
144
+ tasks: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::task]
145
+ }
146
+
147
+ type task =
148
+ Imagekitio::ExtensionConfig::AITasks::Task::SelectTags
149
+ | Imagekitio::ExtensionConfig::AITasks::Task::SelectMetadata
150
+ | Imagekitio::ExtensionConfig::AITasks::Task::YesNo
151
+
152
+ module Task
153
+ extend Imagekitio::Internal::Type::Union
154
+
155
+ type select_tags =
156
+ {
157
+ instruction: String,
158
+ type: :select_tags,
159
+ max_selections: Integer,
160
+ min_selections: Integer,
161
+ vocabulary: ::Array[String]
162
+ }
163
+
164
+ class SelectTags < Imagekitio::Internal::Type::BaseModel
165
+ attr_accessor instruction: String
166
+
167
+ attr_accessor type: :select_tags
168
+
169
+ attr_reader max_selections: Integer?
170
+
171
+ def max_selections=: (Integer) -> Integer
172
+
173
+ attr_reader min_selections: Integer?
174
+
175
+ def min_selections=: (Integer) -> Integer
176
+
177
+ attr_reader vocabulary: ::Array[String]?
178
+
179
+ def vocabulary=: (::Array[String]) -> ::Array[String]
180
+
181
+ def initialize: (
182
+ instruction: String,
183
+ ?max_selections: Integer,
184
+ ?min_selections: Integer,
185
+ ?vocabulary: ::Array[String],
186
+ ?type: :select_tags
187
+ ) -> void
188
+
189
+ def to_hash: -> {
190
+ instruction: String,
191
+ type: :select_tags,
192
+ max_selections: Integer,
193
+ min_selections: Integer,
194
+ vocabulary: ::Array[String]
195
+ }
196
+ end
197
+
198
+ type select_metadata =
199
+ {
200
+ field: String,
201
+ instruction: String,
202
+ type: :select_metadata,
203
+ max_selections: Integer,
204
+ min_selections: Integer,
205
+ vocabulary: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]
206
+ }
207
+
208
+ class SelectMetadata < Imagekitio::Internal::Type::BaseModel
209
+ attr_accessor field: String
210
+
211
+ attr_accessor instruction: String
212
+
213
+ attr_accessor type: :select_metadata
214
+
215
+ attr_reader max_selections: Integer?
216
+
217
+ def max_selections=: (Integer) -> Integer
218
+
219
+ attr_reader min_selections: Integer?
220
+
221
+ def min_selections=: (Integer) -> Integer
222
+
223
+ attr_reader vocabulary: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]?
224
+
225
+ def vocabulary=: (
226
+ ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]
227
+ ) -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]
228
+
229
+ def initialize: (
230
+ field: String,
231
+ instruction: String,
232
+ ?max_selections: Integer,
233
+ ?min_selections: Integer,
234
+ ?vocabulary: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary],
235
+ ?type: :select_metadata
236
+ ) -> void
237
+
238
+ def to_hash: -> {
239
+ field: String,
240
+ instruction: String,
241
+ type: :select_metadata,
242
+ max_selections: Integer,
243
+ min_selections: Integer,
244
+ vocabulary: ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]
245
+ }
246
+
247
+ type vocabulary = String | Float | bool
248
+
249
+ module Vocabulary
250
+ extend Imagekitio::Internal::Type::Union
251
+
252
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::SelectMetadata::vocabulary]
253
+ end
254
+ end
255
+
256
+ type yes_no =
257
+ {
258
+ instruction: String,
259
+ type: :yes_no,
260
+ on_no: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo,
261
+ on_unknown: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown,
262
+ on_yes: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes
263
+ }
264
+
265
+ class YesNo < Imagekitio::Internal::Type::BaseModel
266
+ attr_accessor instruction: String
267
+
268
+ attr_accessor type: :yes_no
269
+
270
+ attr_reader on_no: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo?
271
+
272
+ def on_no=: (
273
+ Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo
274
+ ) -> Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo
275
+
276
+ attr_reader on_unknown: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown?
277
+
278
+ def on_unknown=: (
279
+ Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown
280
+ ) -> Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown
281
+
282
+ attr_reader on_yes: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes?
283
+
284
+ def on_yes=: (
285
+ Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes
286
+ ) -> Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes
287
+
288
+ def initialize: (
289
+ instruction: String,
290
+ ?on_no: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo,
291
+ ?on_unknown: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown,
292
+ ?on_yes: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes,
293
+ ?type: :yes_no
294
+ ) -> void
295
+
296
+ def to_hash: -> {
297
+ instruction: String,
298
+ type: :yes_no,
299
+ on_no: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo,
300
+ on_unknown: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown,
301
+ on_yes: Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes
302
+ }
303
+
304
+ type on_no =
305
+ {
306
+ add_tags: ::Array[String],
307
+ remove_tags: ::Array[String],
308
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata],
309
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]
310
+ }
311
+
312
+ class OnNo < Imagekitio::Internal::Type::BaseModel
313
+ attr_reader add_tags: ::Array[String]?
314
+
315
+ def add_tags=: (::Array[String]) -> ::Array[String]
316
+
317
+ attr_reader remove_tags: ::Array[String]?
318
+
319
+ def remove_tags=: (::Array[String]) -> ::Array[String]
320
+
321
+ attr_reader set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata]?
322
+
323
+ def set_metadata=: (
324
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata]
325
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata]
326
+
327
+ attr_reader unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]?
328
+
329
+ def unset_metadata=: (
330
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]
331
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]
332
+
333
+ def initialize: (
334
+ ?add_tags: ::Array[String],
335
+ ?remove_tags: ::Array[String],
336
+ ?set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata],
337
+ ?unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]
338
+ ) -> void
339
+
340
+ def to_hash: -> {
341
+ add_tags: ::Array[String],
342
+ remove_tags: ::Array[String],
343
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata],
344
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnNo::UnsetMetadata]
345
+ }
346
+
347
+ type set_metadata =
348
+ {
349
+ field: String,
350
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::value
351
+ }
352
+
353
+ class SetMetadata < Imagekitio::Internal::Type::BaseModel
354
+ attr_accessor field: String
355
+
356
+ attr_accessor value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::value
357
+
358
+ def initialize: (
359
+ field: String,
360
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::value
361
+ ) -> void
362
+
363
+ def to_hash: -> {
364
+ field: String,
365
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::value
366
+ }
367
+
368
+ type value =
369
+ String
370
+ | Float
371
+ | bool
372
+ | ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::Value::mixed]
373
+
374
+ module Value
375
+ extend Imagekitio::Internal::Type::Union
376
+
377
+ type mixed = String | Float | bool
378
+
379
+ module Mixed
380
+ extend Imagekitio::Internal::Type::Union
381
+
382
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::Value::mixed]
383
+ end
384
+
385
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnNo::SetMetadata::value]
386
+
387
+ MixedArray: Imagekitio::Internal::Type::Converter
388
+ end
389
+ end
390
+
391
+ type unset_metadata = { field: String }
392
+
393
+ class UnsetMetadata < Imagekitio::Internal::Type::BaseModel
394
+ attr_accessor field: String
395
+
396
+ def initialize: (field: String) -> void
397
+
398
+ def to_hash: -> { field: String }
399
+ end
400
+ end
401
+
402
+ type on_unknown =
403
+ {
404
+ add_tags: ::Array[String],
405
+ remove_tags: ::Array[String],
406
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata],
407
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]
408
+ }
409
+
410
+ class OnUnknown < Imagekitio::Internal::Type::BaseModel
411
+ attr_reader add_tags: ::Array[String]?
412
+
413
+ def add_tags=: (::Array[String]) -> ::Array[String]
414
+
415
+ attr_reader remove_tags: ::Array[String]?
416
+
417
+ def remove_tags=: (::Array[String]) -> ::Array[String]
418
+
419
+ attr_reader set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata]?
420
+
421
+ def set_metadata=: (
422
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata]
423
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata]
424
+
425
+ attr_reader unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]?
426
+
427
+ def unset_metadata=: (
428
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]
429
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]
430
+
431
+ def initialize: (
432
+ ?add_tags: ::Array[String],
433
+ ?remove_tags: ::Array[String],
434
+ ?set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata],
435
+ ?unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]
436
+ ) -> void
437
+
438
+ def to_hash: -> {
439
+ add_tags: ::Array[String],
440
+ remove_tags: ::Array[String],
441
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata],
442
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::UnsetMetadata]
443
+ }
444
+
445
+ type set_metadata =
446
+ {
447
+ field: String,
448
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::value
449
+ }
450
+
451
+ class SetMetadata < Imagekitio::Internal::Type::BaseModel
452
+ attr_accessor field: String
453
+
454
+ attr_accessor value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::value
455
+
456
+ def initialize: (
457
+ field: String,
458
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::value
459
+ ) -> void
460
+
461
+ def to_hash: -> {
462
+ field: String,
463
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::value
464
+ }
465
+
466
+ type value =
467
+ String
468
+ | Float
469
+ | bool
470
+ | ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::Value::mixed]
471
+
472
+ module Value
473
+ extend Imagekitio::Internal::Type::Union
474
+
475
+ type mixed = String | Float | bool
476
+
477
+ module Mixed
478
+ extend Imagekitio::Internal::Type::Union
479
+
480
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::Value::mixed]
481
+ end
482
+
483
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnUnknown::SetMetadata::value]
484
+
485
+ MixedArray: Imagekitio::Internal::Type::Converter
486
+ end
487
+ end
488
+
489
+ type unset_metadata = { field: String }
490
+
491
+ class UnsetMetadata < Imagekitio::Internal::Type::BaseModel
492
+ attr_accessor field: String
493
+
494
+ def initialize: (field: String) -> void
495
+
496
+ def to_hash: -> { field: String }
497
+ end
498
+ end
499
+
500
+ type on_yes =
501
+ {
502
+ add_tags: ::Array[String],
503
+ remove_tags: ::Array[String],
504
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata],
505
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]
506
+ }
507
+
508
+ class OnYes < Imagekitio::Internal::Type::BaseModel
509
+ attr_reader add_tags: ::Array[String]?
510
+
511
+ def add_tags=: (::Array[String]) -> ::Array[String]
512
+
513
+ attr_reader remove_tags: ::Array[String]?
514
+
515
+ def remove_tags=: (::Array[String]) -> ::Array[String]
516
+
517
+ attr_reader set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata]?
518
+
519
+ def set_metadata=: (
520
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata]
521
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata]
522
+
523
+ attr_reader unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]?
524
+
525
+ def unset_metadata=: (
526
+ ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]
527
+ ) -> ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]
528
+
529
+ def initialize: (
530
+ ?add_tags: ::Array[String],
531
+ ?remove_tags: ::Array[String],
532
+ ?set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata],
533
+ ?unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]
534
+ ) -> void
535
+
536
+ def to_hash: -> {
537
+ add_tags: ::Array[String],
538
+ remove_tags: ::Array[String],
539
+ set_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata],
540
+ unset_metadata: ::Array[Imagekitio::ExtensionConfig::AITasks::Task::YesNo::OnYes::UnsetMetadata]
541
+ }
542
+
543
+ type set_metadata =
544
+ {
545
+ field: String,
546
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::value
547
+ }
548
+
549
+ class SetMetadata < Imagekitio::Internal::Type::BaseModel
550
+ attr_accessor field: String
551
+
552
+ attr_accessor value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::value
553
+
554
+ def initialize: (
555
+ field: String,
556
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::value
557
+ ) -> void
558
+
559
+ def to_hash: -> {
560
+ field: String,
561
+ value: Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::value
562
+ }
563
+
564
+ type value =
565
+ String
566
+ | Float
567
+ | bool
568
+ | ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::Value::mixed]
569
+
570
+ module Value
571
+ extend Imagekitio::Internal::Type::Union
572
+
573
+ type mixed = String | Float | bool
574
+
575
+ module Mixed
576
+ extend Imagekitio::Internal::Type::Union
577
+
578
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::Value::mixed]
579
+ end
580
+
581
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::Task::YesNo::OnYes::SetMetadata::value]
582
+
583
+ MixedArray: Imagekitio::Internal::Type::Converter
584
+ end
585
+ end
586
+
587
+ type unset_metadata = { field: String }
588
+
589
+ class UnsetMetadata < Imagekitio::Internal::Type::BaseModel
590
+ attr_accessor field: String
591
+
592
+ def initialize: (field: String) -> void
593
+
594
+ def to_hash: -> { field: String }
595
+ end
596
+ end
597
+ end
598
+
599
+ def self?.variants: -> ::Array[Imagekitio::Models::ExtensionConfig::AITasks::task]
600
+ end
601
+ end
602
+
603
+ def self?.variants: -> ::Array[Imagekitio::Models::extension_config]
604
+ end
605
+ end
606
+ end