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
@@ -73,6 +73,23 @@ module Imagekitio
73
73
  end
74
74
  attr_writer :ai_auto_description
75
75
 
76
+ sig do
77
+ returns(
78
+ T.nilable(
79
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol
80
+ )
81
+ )
82
+ end
83
+ attr_reader :ai_tasks
84
+
85
+ sig do
86
+ params(
87
+ ai_tasks:
88
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::OrSymbol
89
+ ).void
90
+ end
91
+ attr_writer :ai_tasks
92
+
76
93
  sig do
77
94
  returns(
78
95
  T.nilable(
@@ -128,6 +145,8 @@ module Imagekitio
128
145
  params(
129
146
  ai_auto_description:
130
147
  Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AIAutoDescription::OrSymbol,
148
+ ai_tasks:
149
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::OrSymbol,
131
150
  aws_auto_tagging:
132
151
  Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AwsAutoTagging::OrSymbol,
133
152
  google_auto_tagging:
@@ -138,6 +157,7 @@ module Imagekitio
138
157
  end
139
158
  def self.new(
140
159
  ai_auto_description: nil,
160
+ ai_tasks: nil,
141
161
  aws_auto_tagging: nil,
142
162
  google_auto_tagging: nil,
143
163
  remove_bg: nil
@@ -149,6 +169,8 @@ module Imagekitio
149
169
  {
150
170
  ai_auto_description:
151
171
  Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AIAutoDescription::TaggedSymbol,
172
+ ai_tasks:
173
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol,
152
174
  aws_auto_tagging:
153
175
  Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AwsAutoTagging::TaggedSymbol,
154
176
  google_auto_tagging:
@@ -200,6 +222,45 @@ module Imagekitio
200
222
  end
201
223
  end
202
224
 
225
+ module AITasks
226
+ extend Imagekitio::Internal::Type::Enum
227
+
228
+ TaggedSymbol =
229
+ T.type_alias do
230
+ T.all(
231
+ Symbol,
232
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks
233
+ )
234
+ end
235
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
236
+
237
+ SUCCESS =
238
+ T.let(
239
+ :success,
240
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol
241
+ )
242
+ PENDING =
243
+ T.let(
244
+ :pending,
245
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol
246
+ )
247
+ FAILED =
248
+ T.let(
249
+ :failed,
250
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol
251
+ )
252
+
253
+ sig do
254
+ override.returns(
255
+ T::Array[
256
+ Imagekitio::Models::FileUpdateResponse::ExtensionStatus::AITasks::TaggedSymbol
257
+ ]
258
+ )
259
+ end
260
+ def self.values
261
+ end
262
+ end
263
+
203
264
  module AwsAutoTagging
204
265
  extend Imagekitio::Internal::Type::Enum
205
266
 
@@ -103,6 +103,8 @@ module Imagekitio
103
103
  T.any(
104
104
  Imagekitio::ExtensionItem::RemoveBg,
105
105
  Imagekitio::ExtensionItem::AIAutoDescription,
106
+ Imagekitio::ExtensionItem::AITasks,
107
+ Imagekitio::ExtensionItem::SavedExtension,
106
108
  Imagekitio::ExtensionItem::AutoTaggingExtension
107
109
  )
108
110
  ]
@@ -118,6 +120,8 @@ module Imagekitio
118
120
  T.any(
119
121
  Imagekitio::ExtensionItem::RemoveBg::OrHash,
120
122
  Imagekitio::ExtensionItem::AIAutoDescription::OrHash,
123
+ Imagekitio::ExtensionItem::AITasks::OrHash,
124
+ Imagekitio::ExtensionItem::SavedExtension::OrHash,
121
125
  Imagekitio::ExtensionItem::AutoTaggingExtension::OrHash
122
126
  )
123
127
  ]
@@ -303,6 +307,8 @@ module Imagekitio
303
307
  T.any(
304
308
  Imagekitio::ExtensionItem::RemoveBg::OrHash,
305
309
  Imagekitio::ExtensionItem::AIAutoDescription::OrHash,
310
+ Imagekitio::ExtensionItem::AITasks::OrHash,
311
+ Imagekitio::ExtensionItem::SavedExtension::OrHash,
306
312
  Imagekitio::ExtensionItem::AutoTaggingExtension::OrHash
307
313
  )
308
314
  ],
@@ -475,6 +481,8 @@ module Imagekitio
475
481
  T.any(
476
482
  Imagekitio::ExtensionItem::RemoveBg,
477
483
  Imagekitio::ExtensionItem::AIAutoDescription,
484
+ Imagekitio::ExtensionItem::AITasks,
485
+ Imagekitio::ExtensionItem::SavedExtension,
478
486
  Imagekitio::ExtensionItem::AutoTaggingExtension
479
487
  )
480
488
  ],
@@ -497,6 +497,23 @@ module Imagekitio
497
497
  end
498
498
  attr_writer :ai_auto_description
499
499
 
500
+ sig do
501
+ returns(
502
+ T.nilable(
503
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol
504
+ )
505
+ )
506
+ end
507
+ attr_reader :ai_tasks
508
+
509
+ sig do
510
+ params(
511
+ ai_tasks:
512
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::OrSymbol
513
+ ).void
514
+ end
515
+ attr_writer :ai_tasks
516
+
500
517
  sig do
501
518
  returns(
502
519
  T.nilable(
@@ -561,6 +578,8 @@ module Imagekitio
561
578
  params(
562
579
  ai_auto_description:
563
580
  Imagekitio::Models::FileUploadResponse::ExtensionStatus::AIAutoDescription::OrSymbol,
581
+ ai_tasks:
582
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::OrSymbol,
564
583
  aws_auto_tagging:
565
584
  Imagekitio::Models::FileUploadResponse::ExtensionStatus::AwsAutoTagging::OrSymbol,
566
585
  google_auto_tagging:
@@ -571,6 +590,7 @@ module Imagekitio
571
590
  end
572
591
  def self.new(
573
592
  ai_auto_description: nil,
593
+ ai_tasks: nil,
574
594
  aws_auto_tagging: nil,
575
595
  google_auto_tagging: nil,
576
596
  remove_bg: nil
@@ -582,6 +602,8 @@ module Imagekitio
582
602
  {
583
603
  ai_auto_description:
584
604
  Imagekitio::Models::FileUploadResponse::ExtensionStatus::AIAutoDescription::TaggedSymbol,
605
+ ai_tasks:
606
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol,
585
607
  aws_auto_tagging:
586
608
  Imagekitio::Models::FileUploadResponse::ExtensionStatus::AwsAutoTagging::TaggedSymbol,
587
609
  google_auto_tagging:
@@ -633,6 +655,45 @@ module Imagekitio
633
655
  end
634
656
  end
635
657
 
658
+ module AITasks
659
+ extend Imagekitio::Internal::Type::Enum
660
+
661
+ TaggedSymbol =
662
+ T.type_alias do
663
+ T.all(
664
+ Symbol,
665
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks
666
+ )
667
+ end
668
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
669
+
670
+ SUCCESS =
671
+ T.let(
672
+ :success,
673
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol
674
+ )
675
+ PENDING =
676
+ T.let(
677
+ :pending,
678
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol
679
+ )
680
+ FAILED =
681
+ T.let(
682
+ :failed,
683
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol
684
+ )
685
+
686
+ sig do
687
+ override.returns(
688
+ T::Array[
689
+ Imagekitio::Models::FileUploadResponse::ExtensionStatus::AITasks::TaggedSymbol
690
+ ]
691
+ )
692
+ end
693
+ def self.values
694
+ end
695
+ end
696
+
636
697
  module AwsAutoTagging
637
698
  extend Imagekitio::Internal::Type::Enum
638
699
 
@@ -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::ImageOverlay::Encoding::OrSymbol)) }
24
30
  attr_reader :encoding
25
31
 
@@ -55,6 +61,12 @@ module Imagekitio
55
61
  # format automatically. To always use base64 encoding (`ie-{base64}`), set this
56
62
  # parameter to `base64`. To always use plain text (`i-{input}`), set it to
57
63
  # `plain`.
64
+ #
65
+ # Regardless of the encoding method:
66
+ #
67
+ # - Leading and trailing slashes are removed.
68
+ # - Remaining slashes within the path are replaced with `@@` when using plain
69
+ # text.
58
70
  encoding: nil,
59
71
  # Array of transformations to be applied to the overlay image. Supported
60
72
  # transformations depends on the base/parent asset. See overlays on
@@ -84,6 +96,12 @@ module Imagekitio
84
96
  # format automatically. To always use base64 encoding (`ie-{base64}`), set this
85
97
  # parameter to `base64`. To always use plain text (`i-{input}`), set it to
86
98
  # `plain`.
99
+ #
100
+ # Regardless of the encoding method:
101
+ #
102
+ # - Leading and trailing slashes are removed.
103
+ # - Remaining slashes within the path are replaced with `@@` when using plain
104
+ # text.
87
105
  module Encoding
88
106
  extend Imagekitio::Internal::Type::Enum
89
107
 
@@ -0,0 +1,114 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtension < Imagekitio::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Imagekitio::SavedExtension, Imagekitio::Internal::AnyHash)
9
+ end
10
+
11
+ # Unique identifier of the saved extension.
12
+ sig { returns(T.nilable(String)) }
13
+ attr_reader :id
14
+
15
+ sig { params(id: String).void }
16
+ attr_writer :id
17
+
18
+ # Configuration object for an extension (base extensions only, not saved extension
19
+ # references).
20
+ sig { returns(T.nilable(Imagekitio::ExtensionConfig::Variants)) }
21
+ attr_reader :config
22
+
23
+ sig do
24
+ params(
25
+ config:
26
+ T.any(
27
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
28
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
29
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
30
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
31
+ )
32
+ ).void
33
+ end
34
+ attr_writer :config
35
+
36
+ # Timestamp when the saved extension was created.
37
+ sig { returns(T.nilable(Time)) }
38
+ attr_reader :created_at
39
+
40
+ sig { params(created_at: Time).void }
41
+ attr_writer :created_at
42
+
43
+ # Description of the saved extension.
44
+ sig { returns(T.nilable(String)) }
45
+ attr_reader :description
46
+
47
+ sig { params(description: String).void }
48
+ attr_writer :description
49
+
50
+ # Name of the saved extension.
51
+ sig { returns(T.nilable(String)) }
52
+ attr_reader :name
53
+
54
+ sig { params(name: String).void }
55
+ attr_writer :name
56
+
57
+ # Timestamp when the saved extension was last updated.
58
+ sig { returns(T.nilable(Time)) }
59
+ attr_reader :updated_at
60
+
61
+ sig { params(updated_at: Time).void }
62
+ attr_writer :updated_at
63
+
64
+ # Saved extension object containing extension configuration.
65
+ sig do
66
+ params(
67
+ id: String,
68
+ config:
69
+ T.any(
70
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
71
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
72
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
73
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
74
+ ),
75
+ created_at: Time,
76
+ description: String,
77
+ name: String,
78
+ updated_at: Time
79
+ ).returns(T.attached_class)
80
+ end
81
+ def self.new(
82
+ # Unique identifier of the saved extension.
83
+ id: nil,
84
+ # Configuration object for an extension (base extensions only, not saved extension
85
+ # references).
86
+ config: nil,
87
+ # Timestamp when the saved extension was created.
88
+ created_at: nil,
89
+ # Description of the saved extension.
90
+ description: nil,
91
+ # Name of the saved extension.
92
+ name: nil,
93
+ # Timestamp when the saved extension was last updated.
94
+ updated_at: nil
95
+ )
96
+ end
97
+
98
+ sig do
99
+ override.returns(
100
+ {
101
+ id: String,
102
+ config: Imagekitio::ExtensionConfig::Variants,
103
+ created_at: Time,
104
+ description: String,
105
+ name: String,
106
+ updated_at: Time
107
+ }
108
+ )
109
+ end
110
+ def to_hash
111
+ end
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,85 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtensionCreateParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::SavedExtensionCreateParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Configuration object for an extension (base extensions only, not saved extension
18
+ # references).
19
+ sig do
20
+ returns(
21
+ T.any(
22
+ Imagekitio::ExtensionConfig::RemoveBg,
23
+ Imagekitio::ExtensionConfig::AIAutoDescription,
24
+ Imagekitio::ExtensionConfig::AITasks,
25
+ Imagekitio::ExtensionConfig::AutoTaggingExtension
26
+ )
27
+ )
28
+ end
29
+ attr_accessor :config
30
+
31
+ # Description of what the saved extension does.
32
+ sig { returns(String) }
33
+ attr_accessor :description
34
+
35
+ # Name of the saved extension.
36
+ sig { returns(String) }
37
+ attr_accessor :name
38
+
39
+ sig do
40
+ params(
41
+ config:
42
+ T.any(
43
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
44
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
45
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
46
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
47
+ ),
48
+ description: String,
49
+ name: String,
50
+ request_options: Imagekitio::RequestOptions::OrHash
51
+ ).returns(T.attached_class)
52
+ end
53
+ def self.new(
54
+ # Configuration object for an extension (base extensions only, not saved extension
55
+ # references).
56
+ config:,
57
+ # Description of what the saved extension does.
58
+ description:,
59
+ # Name of the saved extension.
60
+ name:,
61
+ request_options: {}
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ config:
69
+ T.any(
70
+ Imagekitio::ExtensionConfig::RemoveBg,
71
+ Imagekitio::ExtensionConfig::AIAutoDescription,
72
+ Imagekitio::ExtensionConfig::AITasks,
73
+ Imagekitio::ExtensionConfig::AutoTaggingExtension
74
+ ),
75
+ description: String,
76
+ name: String,
77
+ request_options: Imagekitio::RequestOptions
78
+ }
79
+ )
80
+ end
81
+ def to_hash
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtensionDeleteParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::SavedExtensionDeleteParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: Imagekitio::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: Imagekitio::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtensionGetParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::SavedExtensionGetParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: Imagekitio::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: Imagekitio::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtensionListParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::SavedExtensionListParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: Imagekitio::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: Imagekitio::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,11 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ SavedExtensionListResponse =
6
+ T.let(
7
+ Imagekitio::Internal::Type::ArrayOf[Imagekitio::SavedExtension],
8
+ Imagekitio::Internal::Type::Converter
9
+ )
10
+ end
11
+ end
@@ -0,0 +1,106 @@
1
+ # typed: strong
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class SavedExtensionUpdateParams < Imagekitio::Internal::Type::BaseModel
6
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
7
+ include Imagekitio::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Imagekitio::SavedExtensionUpdateParams,
13
+ Imagekitio::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Configuration object for an extension (base extensions only, not saved extension
18
+ # references).
19
+ sig do
20
+ returns(
21
+ T.nilable(
22
+ T.any(
23
+ Imagekitio::ExtensionConfig::RemoveBg,
24
+ Imagekitio::ExtensionConfig::AIAutoDescription,
25
+ Imagekitio::ExtensionConfig::AITasks,
26
+ Imagekitio::ExtensionConfig::AutoTaggingExtension
27
+ )
28
+ )
29
+ )
30
+ end
31
+ attr_reader :config
32
+
33
+ sig do
34
+ params(
35
+ config:
36
+ T.any(
37
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
38
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
39
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
40
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
41
+ )
42
+ ).void
43
+ end
44
+ attr_writer :config
45
+
46
+ # Updated description of the saved extension.
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :description
49
+
50
+ sig { params(description: String).void }
51
+ attr_writer :description
52
+
53
+ # Updated name of the saved extension.
54
+ sig { returns(T.nilable(String)) }
55
+ attr_reader :name
56
+
57
+ sig { params(name: String).void }
58
+ attr_writer :name
59
+
60
+ sig do
61
+ params(
62
+ config:
63
+ T.any(
64
+ Imagekitio::ExtensionConfig::RemoveBg::OrHash,
65
+ Imagekitio::ExtensionConfig::AIAutoDescription::OrHash,
66
+ Imagekitio::ExtensionConfig::AITasks::OrHash,
67
+ Imagekitio::ExtensionConfig::AutoTaggingExtension::OrHash
68
+ ),
69
+ description: String,
70
+ name: String,
71
+ request_options: Imagekitio::RequestOptions::OrHash
72
+ ).returns(T.attached_class)
73
+ end
74
+ def self.new(
75
+ # Configuration object for an extension (base extensions only, not saved extension
76
+ # references).
77
+ config: nil,
78
+ # Updated description of the saved extension.
79
+ description: nil,
80
+ # Updated name of the saved extension.
81
+ name: nil,
82
+ request_options: {}
83
+ )
84
+ end
85
+
86
+ sig do
87
+ override.returns(
88
+ {
89
+ config:
90
+ T.any(
91
+ Imagekitio::ExtensionConfig::RemoveBg,
92
+ Imagekitio::ExtensionConfig::AIAutoDescription,
93
+ Imagekitio::ExtensionConfig::AITasks,
94
+ Imagekitio::ExtensionConfig::AutoTaggingExtension
95
+ ),
96
+ description: String,
97
+ name: String,
98
+ request_options: Imagekitio::RequestOptions
99
+ }
100
+ )
101
+ end
102
+ def to_hash
103
+ end
104
+ end
105
+ end
106
+ end