brand.dev 0.0.1.pre.alpha.0 → 0.0.2

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 (89) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +188 -0
  3. data/README.md +7 -3
  4. data/lib/brand_dev/errors.rb +22 -0
  5. data/lib/brand_dev/internal/transport/base_client.rb +10 -2
  6. data/lib/brand_dev/internal/type/array_of.rb +6 -1
  7. data/lib/brand_dev/internal/type/base_model.rb +77 -25
  8. data/lib/brand_dev/internal/type/boolean.rb +7 -1
  9. data/lib/brand_dev/internal/type/converter.rb +42 -34
  10. data/lib/brand_dev/internal/type/enum.rb +16 -5
  11. data/lib/brand_dev/internal/type/file_input.rb +6 -1
  12. data/lib/brand_dev/internal/type/hash_of.rb +6 -1
  13. data/lib/brand_dev/internal/type/union.rb +17 -9
  14. data/lib/brand_dev/internal/type/unknown.rb +7 -1
  15. data/lib/brand_dev/internal/util.rb +8 -9
  16. data/lib/brand_dev/models/brand_ai_query_params.rb +173 -0
  17. data/lib/brand_dev/models/brand_ai_query_response.rb +80 -0
  18. data/lib/brand_dev/models/brand_identify_from_transaction_params.rb +14 -1
  19. data/lib/brand_dev/models/brand_identify_from_transaction_response.rb +1 -29
  20. data/lib/brand_dev/models/brand_prefetch_params.rb +35 -0
  21. data/lib/brand_dev/models/brand_prefetch_response.rb +33 -0
  22. data/lib/brand_dev/models/brand_retrieve_by_ticker_params.rb +14 -1
  23. data/lib/brand_dev/models/brand_retrieve_by_ticker_response.rb +1 -29
  24. data/lib/brand_dev/models/brand_retrieve_naics_params.rb +11 -1
  25. data/lib/brand_dev/models/brand_retrieve_params.rb +24 -1
  26. data/lib/brand_dev/models/brand_retrieve_response.rb +1 -29
  27. data/lib/brand_dev/models/brand_retrieve_simplified_params.rb +35 -0
  28. data/lib/brand_dev/models/brand_retrieve_simplified_response.rb +280 -0
  29. data/lib/brand_dev/models/brand_screenshot_params.rb +49 -0
  30. data/lib/brand_dev/models/brand_screenshot_response.rb +64 -0
  31. data/lib/brand_dev/models/brand_styleguide_params.rb +36 -0
  32. data/lib/brand_dev/models/brand_styleguide_response.rb +769 -0
  33. data/lib/brand_dev/models.rb +13 -5
  34. data/lib/brand_dev/resources/brand.rb +165 -18
  35. data/lib/brand_dev/version.rb +1 -1
  36. data/lib/brand_dev.rb +10 -2
  37. data/rbi/brand_dev/errors.rbi +16 -0
  38. data/rbi/brand_dev/internal/type/boolean.rbi +2 -0
  39. data/rbi/brand_dev/internal/type/converter.rbi +15 -15
  40. data/rbi/brand_dev/internal/type/union.rbi +5 -0
  41. data/rbi/brand_dev/internal/type/unknown.rbi +2 -0
  42. data/rbi/brand_dev/internal/util.rbi +2 -0
  43. data/rbi/brand_dev/models/brand_ai_query_params.rbi +319 -0
  44. data/rbi/brand_dev/models/brand_ai_query_response.rbi +182 -0
  45. data/rbi/brand_dev/models/brand_identify_from_transaction_params.rbi +15 -0
  46. data/rbi/brand_dev/models/brand_identify_from_transaction_response.rbi +0 -69
  47. data/rbi/brand_dev/models/brand_prefetch_params.rbi +58 -0
  48. data/rbi/brand_dev/models/brand_prefetch_response.rbi +57 -0
  49. data/rbi/brand_dev/models/brand_retrieve_by_ticker_params.rbi +19 -1
  50. data/rbi/brand_dev/models/brand_retrieve_by_ticker_response.rbi +0 -69
  51. data/rbi/brand_dev/models/brand_retrieve_naics_params.rbi +19 -1
  52. data/rbi/brand_dev/models/brand_retrieve_params.rbi +30 -0
  53. data/rbi/brand_dev/models/brand_retrieve_response.rbi +0 -65
  54. data/rbi/brand_dev/models/brand_retrieve_simplified_params.rbi +61 -0
  55. data/rbi/brand_dev/models/brand_retrieve_simplified_response.rbi +667 -0
  56. data/rbi/brand_dev/models/brand_screenshot_params.rbi +105 -0
  57. data/rbi/brand_dev/models/brand_screenshot_response.rbi +135 -0
  58. data/rbi/brand_dev/models/brand_styleguide_params.rbi +60 -0
  59. data/rbi/brand_dev/models/brand_styleguide_response.rbi +1648 -0
  60. data/rbi/brand_dev/models.rbi +10 -1
  61. data/rbi/brand_dev/resources/brand.rbi +133 -6
  62. data/sig/brand_dev/errors.rbs +9 -0
  63. data/sig/brand_dev/internal/type/converter.rbs +7 -1
  64. data/sig/brand_dev/models/brand_ai_query_params.rbs +162 -0
  65. data/sig/brand_dev/models/brand_ai_query_response.rbs +79 -0
  66. data/sig/brand_dev/models/brand_identify_from_transaction_params.rbs +7 -1
  67. data/sig/brand_dev/models/brand_identify_from_transaction_response.rbs +0 -25
  68. data/sig/brand_dev/models/brand_prefetch_params.rbs +30 -0
  69. data/sig/brand_dev/models/brand_prefetch_response.rbs +28 -0
  70. data/sig/brand_dev/models/brand_retrieve_by_ticker_params.rbs +8 -1
  71. data/sig/brand_dev/models/brand_retrieve_by_ticker_response.rbs +0 -25
  72. data/sig/brand_dev/models/brand_retrieve_naics_params.rbs +8 -1
  73. data/sig/brand_dev/models/brand_retrieve_params.rbs +15 -1
  74. data/sig/brand_dev/models/brand_retrieve_response.rbs +0 -25
  75. data/sig/brand_dev/models/brand_retrieve_simplified_params.rbs +30 -0
  76. data/sig/brand_dev/models/brand_retrieve_simplified_response.rbs +292 -0
  77. data/sig/brand_dev/models/brand_screenshot_params.rbs +46 -0
  78. data/sig/brand_dev/models/brand_screenshot_response.rbs +63 -0
  79. data/sig/brand_dev/models/brand_styleguide_params.rbs +30 -0
  80. data/sig/brand_dev/models/brand_styleguide_response.rbs +925 -0
  81. data/sig/brand_dev/models.rbs +9 -1
  82. data/sig/brand_dev/resources/brand.rbs +35 -3
  83. metadata +46 -22
  84. data/lib/brand_dev/models/brand_search_params.rb +0 -22
  85. data/lib/brand_dev/models/brand_search_response.rb +0 -35
  86. data/rbi/brand_dev/models/brand_search_params.rbi +0 -40
  87. data/rbi/brand_dev/models/brand_search_response.rbi +0 -63
  88. data/sig/brand_dev/models/brand_search_params.rbs +0 -23
  89. data/sig/brand_dev/models/brand_search_response.rbs +0 -29
@@ -0,0 +1,667 @@
1
+ # typed: strong
2
+
3
+ module BrandDev
4
+ module Models
5
+ class BrandRetrieveSimplifiedResponse < BrandDev::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ BrandDev::Models::BrandRetrieveSimplifiedResponse,
10
+ BrandDev::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Simplified brand information
15
+ sig do
16
+ returns(
17
+ T.nilable(BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand)
18
+ )
19
+ end
20
+ attr_reader :brand
21
+
22
+ sig do
23
+ params(
24
+ brand:
25
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::OrHash
26
+ ).void
27
+ end
28
+ attr_writer :brand
29
+
30
+ # HTTP status code of the response
31
+ sig { returns(T.nilable(Integer)) }
32
+ attr_reader :code
33
+
34
+ sig { params(code: Integer).void }
35
+ attr_writer :code
36
+
37
+ # Status of the response, e.g., 'ok'
38
+ sig { returns(T.nilable(String)) }
39
+ attr_reader :status
40
+
41
+ sig { params(status: String).void }
42
+ attr_writer :status
43
+
44
+ sig do
45
+ params(
46
+ brand:
47
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::OrHash,
48
+ code: Integer,
49
+ status: String
50
+ ).returns(T.attached_class)
51
+ end
52
+ def self.new(
53
+ # Simplified brand information
54
+ brand: nil,
55
+ # HTTP status code of the response
56
+ code: nil,
57
+ # Status of the response, e.g., 'ok'
58
+ status: nil
59
+ )
60
+ end
61
+
62
+ sig do
63
+ override.returns(
64
+ {
65
+ brand: BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand,
66
+ code: Integer,
67
+ status: String
68
+ }
69
+ )
70
+ end
71
+ def to_hash
72
+ end
73
+
74
+ class Brand < BrandDev::Internal::Type::BaseModel
75
+ OrHash =
76
+ T.type_alias do
77
+ T.any(
78
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand,
79
+ BrandDev::Internal::AnyHash
80
+ )
81
+ end
82
+
83
+ # An array of backdrop images for the brand
84
+ sig do
85
+ returns(
86
+ T.nilable(
87
+ T::Array[
88
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop
89
+ ]
90
+ )
91
+ )
92
+ end
93
+ attr_reader :backdrops
94
+
95
+ sig do
96
+ params(
97
+ backdrops:
98
+ T::Array[
99
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::OrHash
100
+ ]
101
+ ).void
102
+ end
103
+ attr_writer :backdrops
104
+
105
+ # An array of brand colors
106
+ sig do
107
+ returns(
108
+ T.nilable(
109
+ T::Array[
110
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color
111
+ ]
112
+ )
113
+ )
114
+ end
115
+ attr_reader :colors
116
+
117
+ sig do
118
+ params(
119
+ colors:
120
+ T::Array[
121
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::OrHash
122
+ ]
123
+ ).void
124
+ end
125
+ attr_writer :colors
126
+
127
+ # The domain name of the brand
128
+ sig { returns(T.nilable(String)) }
129
+ attr_reader :domain
130
+
131
+ sig { params(domain: String).void }
132
+ attr_writer :domain
133
+
134
+ # An array of logos associated with the brand
135
+ sig do
136
+ returns(
137
+ T.nilable(
138
+ T::Array[
139
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo
140
+ ]
141
+ )
142
+ )
143
+ end
144
+ attr_reader :logos
145
+
146
+ sig do
147
+ params(
148
+ logos:
149
+ T::Array[
150
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::OrHash
151
+ ]
152
+ ).void
153
+ end
154
+ attr_writer :logos
155
+
156
+ # The title or name of the brand
157
+ sig { returns(T.nilable(String)) }
158
+ attr_reader :title
159
+
160
+ sig { params(title: String).void }
161
+ attr_writer :title
162
+
163
+ # Simplified brand information
164
+ sig do
165
+ params(
166
+ backdrops:
167
+ T::Array[
168
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::OrHash
169
+ ],
170
+ colors:
171
+ T::Array[
172
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color::OrHash
173
+ ],
174
+ domain: String,
175
+ logos:
176
+ T::Array[
177
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::OrHash
178
+ ],
179
+ title: String
180
+ ).returns(T.attached_class)
181
+ end
182
+ def self.new(
183
+ # An array of backdrop images for the brand
184
+ backdrops: nil,
185
+ # An array of brand colors
186
+ colors: nil,
187
+ # The domain name of the brand
188
+ domain: nil,
189
+ # An array of logos associated with the brand
190
+ logos: nil,
191
+ # The title or name of the brand
192
+ title: nil
193
+ )
194
+ end
195
+
196
+ sig do
197
+ override.returns(
198
+ {
199
+ backdrops:
200
+ T::Array[
201
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop
202
+ ],
203
+ colors:
204
+ T::Array[
205
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color
206
+ ],
207
+ domain: String,
208
+ logos:
209
+ T::Array[
210
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo
211
+ ],
212
+ title: String
213
+ }
214
+ )
215
+ end
216
+ def to_hash
217
+ end
218
+
219
+ class Backdrop < BrandDev::Internal::Type::BaseModel
220
+ OrHash =
221
+ T.type_alias do
222
+ T.any(
223
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop,
224
+ BrandDev::Internal::AnyHash
225
+ )
226
+ end
227
+
228
+ # Array of colors in the backdrop image
229
+ sig do
230
+ returns(
231
+ T.nilable(
232
+ T::Array[
233
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Color
234
+ ]
235
+ )
236
+ )
237
+ end
238
+ attr_reader :colors
239
+
240
+ sig do
241
+ params(
242
+ colors:
243
+ T::Array[
244
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Color::OrHash
245
+ ]
246
+ ).void
247
+ end
248
+ attr_writer :colors
249
+
250
+ # Resolution of the backdrop image
251
+ sig do
252
+ returns(
253
+ T.nilable(
254
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Resolution
255
+ )
256
+ )
257
+ end
258
+ attr_reader :resolution
259
+
260
+ sig do
261
+ params(
262
+ resolution:
263
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Resolution::OrHash
264
+ ).void
265
+ end
266
+ attr_writer :resolution
267
+
268
+ # URL of the backdrop image
269
+ sig { returns(T.nilable(String)) }
270
+ attr_reader :url
271
+
272
+ sig { params(url: String).void }
273
+ attr_writer :url
274
+
275
+ sig do
276
+ params(
277
+ colors:
278
+ T::Array[
279
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Color::OrHash
280
+ ],
281
+ resolution:
282
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Resolution::OrHash,
283
+ url: String
284
+ ).returns(T.attached_class)
285
+ end
286
+ def self.new(
287
+ # Array of colors in the backdrop image
288
+ colors: nil,
289
+ # Resolution of the backdrop image
290
+ resolution: nil,
291
+ # URL of the backdrop image
292
+ url: nil
293
+ )
294
+ end
295
+
296
+ sig do
297
+ override.returns(
298
+ {
299
+ colors:
300
+ T::Array[
301
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Color
302
+ ],
303
+ resolution:
304
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Resolution,
305
+ url: String
306
+ }
307
+ )
308
+ end
309
+ def to_hash
310
+ end
311
+
312
+ class Color < BrandDev::Internal::Type::BaseModel
313
+ OrHash =
314
+ T.type_alias do
315
+ T.any(
316
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Color,
317
+ BrandDev::Internal::AnyHash
318
+ )
319
+ end
320
+
321
+ # Color in hexadecimal format
322
+ sig { returns(T.nilable(String)) }
323
+ attr_reader :hex
324
+
325
+ sig { params(hex: String).void }
326
+ attr_writer :hex
327
+
328
+ # Name of the color
329
+ sig { returns(T.nilable(String)) }
330
+ attr_reader :name
331
+
332
+ sig { params(name: String).void }
333
+ attr_writer :name
334
+
335
+ sig { params(hex: String, name: String).returns(T.attached_class) }
336
+ def self.new(
337
+ # Color in hexadecimal format
338
+ hex: nil,
339
+ # Name of the color
340
+ name: nil
341
+ )
342
+ end
343
+
344
+ sig { override.returns({ hex: String, name: String }) }
345
+ def to_hash
346
+ end
347
+ end
348
+
349
+ class Resolution < BrandDev::Internal::Type::BaseModel
350
+ OrHash =
351
+ T.type_alias do
352
+ T.any(
353
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Backdrop::Resolution,
354
+ BrandDev::Internal::AnyHash
355
+ )
356
+ end
357
+
358
+ # Aspect ratio of the image (width/height)
359
+ sig { returns(T.nilable(Float)) }
360
+ attr_reader :aspect_ratio
361
+
362
+ sig { params(aspect_ratio: Float).void }
363
+ attr_writer :aspect_ratio
364
+
365
+ # Height of the image in pixels
366
+ sig { returns(T.nilable(Integer)) }
367
+ attr_reader :height
368
+
369
+ sig { params(height: Integer).void }
370
+ attr_writer :height
371
+
372
+ # Width of the image in pixels
373
+ sig { returns(T.nilable(Integer)) }
374
+ attr_reader :width
375
+
376
+ sig { params(width: Integer).void }
377
+ attr_writer :width
378
+
379
+ # Resolution of the backdrop image
380
+ sig do
381
+ params(
382
+ aspect_ratio: Float,
383
+ height: Integer,
384
+ width: Integer
385
+ ).returns(T.attached_class)
386
+ end
387
+ def self.new(
388
+ # Aspect ratio of the image (width/height)
389
+ aspect_ratio: nil,
390
+ # Height of the image in pixels
391
+ height: nil,
392
+ # Width of the image in pixels
393
+ width: nil
394
+ )
395
+ end
396
+
397
+ sig do
398
+ override.returns(
399
+ { aspect_ratio: Float, height: Integer, width: Integer }
400
+ )
401
+ end
402
+ def to_hash
403
+ end
404
+ end
405
+ end
406
+
407
+ class Color < BrandDev::Internal::Type::BaseModel
408
+ OrHash =
409
+ T.type_alias do
410
+ T.any(
411
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Color,
412
+ BrandDev::Internal::AnyHash
413
+ )
414
+ end
415
+
416
+ # Color in hexadecimal format
417
+ sig { returns(T.nilable(String)) }
418
+ attr_reader :hex
419
+
420
+ sig { params(hex: String).void }
421
+ attr_writer :hex
422
+
423
+ # Name of the color
424
+ sig { returns(T.nilable(String)) }
425
+ attr_reader :name
426
+
427
+ sig { params(name: String).void }
428
+ attr_writer :name
429
+
430
+ sig { params(hex: String, name: String).returns(T.attached_class) }
431
+ def self.new(
432
+ # Color in hexadecimal format
433
+ hex: nil,
434
+ # Name of the color
435
+ name: nil
436
+ )
437
+ end
438
+
439
+ sig { override.returns({ hex: String, name: String }) }
440
+ def to_hash
441
+ end
442
+ end
443
+
444
+ class Logo < BrandDev::Internal::Type::BaseModel
445
+ OrHash =
446
+ T.type_alias do
447
+ T.any(
448
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo,
449
+ BrandDev::Internal::AnyHash
450
+ )
451
+ end
452
+
453
+ # Array of colors in the logo
454
+ sig do
455
+ returns(
456
+ T.nilable(
457
+ T::Array[
458
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Color
459
+ ]
460
+ )
461
+ )
462
+ end
463
+ attr_reader :colors
464
+
465
+ sig do
466
+ params(
467
+ colors:
468
+ T::Array[
469
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Color::OrHash
470
+ ]
471
+ ).void
472
+ end
473
+ attr_writer :colors
474
+
475
+ # Group identifier for logos
476
+ sig { returns(T.nilable(Integer)) }
477
+ attr_reader :group
478
+
479
+ sig { params(group: Integer).void }
480
+ attr_writer :group
481
+
482
+ # Mode of the logo, e.g., 'dark', 'light'
483
+ sig { returns(T.nilable(String)) }
484
+ attr_reader :mode
485
+
486
+ sig { params(mode: String).void }
487
+ attr_writer :mode
488
+
489
+ # Resolution of the logo image
490
+ sig do
491
+ returns(
492
+ T.nilable(
493
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Resolution
494
+ )
495
+ )
496
+ end
497
+ attr_reader :resolution
498
+
499
+ sig do
500
+ params(
501
+ resolution:
502
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Resolution::OrHash
503
+ ).void
504
+ end
505
+ attr_writer :resolution
506
+
507
+ # Type of the logo based on resolution (e.g., 'icon', 'logo', 'banner')
508
+ sig { returns(T.nilable(String)) }
509
+ attr_reader :type
510
+
511
+ sig { params(type: String).void }
512
+ attr_writer :type
513
+
514
+ # URL of the logo image
515
+ sig { returns(T.nilable(String)) }
516
+ attr_reader :url
517
+
518
+ sig { params(url: String).void }
519
+ attr_writer :url
520
+
521
+ sig do
522
+ params(
523
+ colors:
524
+ T::Array[
525
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Color::OrHash
526
+ ],
527
+ group: Integer,
528
+ mode: String,
529
+ resolution:
530
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Resolution::OrHash,
531
+ type: String,
532
+ url: String
533
+ ).returns(T.attached_class)
534
+ end
535
+ def self.new(
536
+ # Array of colors in the logo
537
+ colors: nil,
538
+ # Group identifier for logos
539
+ group: nil,
540
+ # Mode of the logo, e.g., 'dark', 'light'
541
+ mode: nil,
542
+ # Resolution of the logo image
543
+ resolution: nil,
544
+ # Type of the logo based on resolution (e.g., 'icon', 'logo', 'banner')
545
+ type: nil,
546
+ # URL of the logo image
547
+ url: nil
548
+ )
549
+ end
550
+
551
+ sig do
552
+ override.returns(
553
+ {
554
+ colors:
555
+ T::Array[
556
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Color
557
+ ],
558
+ group: Integer,
559
+ mode: String,
560
+ resolution:
561
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Resolution,
562
+ type: String,
563
+ url: String
564
+ }
565
+ )
566
+ end
567
+ def to_hash
568
+ end
569
+
570
+ class Color < BrandDev::Internal::Type::BaseModel
571
+ OrHash =
572
+ T.type_alias do
573
+ T.any(
574
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Color,
575
+ BrandDev::Internal::AnyHash
576
+ )
577
+ end
578
+
579
+ # Color in hexadecimal format
580
+ sig { returns(T.nilable(String)) }
581
+ attr_reader :hex
582
+
583
+ sig { params(hex: String).void }
584
+ attr_writer :hex
585
+
586
+ # Name of the color
587
+ sig { returns(T.nilable(String)) }
588
+ attr_reader :name
589
+
590
+ sig { params(name: String).void }
591
+ attr_writer :name
592
+
593
+ sig { params(hex: String, name: String).returns(T.attached_class) }
594
+ def self.new(
595
+ # Color in hexadecimal format
596
+ hex: nil,
597
+ # Name of the color
598
+ name: nil
599
+ )
600
+ end
601
+
602
+ sig { override.returns({ hex: String, name: String }) }
603
+ def to_hash
604
+ end
605
+ end
606
+
607
+ class Resolution < BrandDev::Internal::Type::BaseModel
608
+ OrHash =
609
+ T.type_alias do
610
+ T.any(
611
+ BrandDev::Models::BrandRetrieveSimplifiedResponse::Brand::Logo::Resolution,
612
+ BrandDev::Internal::AnyHash
613
+ )
614
+ end
615
+
616
+ # Aspect ratio of the image (width/height)
617
+ sig { returns(T.nilable(Float)) }
618
+ attr_reader :aspect_ratio
619
+
620
+ sig { params(aspect_ratio: Float).void }
621
+ attr_writer :aspect_ratio
622
+
623
+ # Height of the image in pixels
624
+ sig { returns(T.nilable(Integer)) }
625
+ attr_reader :height
626
+
627
+ sig { params(height: Integer).void }
628
+ attr_writer :height
629
+
630
+ # Width of the image in pixels
631
+ sig { returns(T.nilable(Integer)) }
632
+ attr_reader :width
633
+
634
+ sig { params(width: Integer).void }
635
+ attr_writer :width
636
+
637
+ # Resolution of the logo image
638
+ sig do
639
+ params(
640
+ aspect_ratio: Float,
641
+ height: Integer,
642
+ width: Integer
643
+ ).returns(T.attached_class)
644
+ end
645
+ def self.new(
646
+ # Aspect ratio of the image (width/height)
647
+ aspect_ratio: nil,
648
+ # Height of the image in pixels
649
+ height: nil,
650
+ # Width of the image in pixels
651
+ width: nil
652
+ )
653
+ end
654
+
655
+ sig do
656
+ override.returns(
657
+ { aspect_ratio: Float, height: Integer, width: Integer }
658
+ )
659
+ end
660
+ def to_hash
661
+ end
662
+ end
663
+ end
664
+ end
665
+ end
666
+ end
667
+ end