brand.dev 0.1.0.pre.alpha.8 → 0.1.0.pre.alpha.9

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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/brand_dev/errors.rb +22 -0
  5. data/lib/brand_dev/internal/type/array_of.rb +6 -1
  6. data/lib/brand_dev/internal/type/base_model.rb +77 -25
  7. data/lib/brand_dev/internal/type/boolean.rb +7 -1
  8. data/lib/brand_dev/internal/type/converter.rb +42 -34
  9. data/lib/brand_dev/internal/type/enum.rb +10 -2
  10. data/lib/brand_dev/internal/type/file_input.rb +6 -1
  11. data/lib/brand_dev/internal/type/hash_of.rb +6 -1
  12. data/lib/brand_dev/internal/type/union.rb +12 -7
  13. data/lib/brand_dev/internal/type/unknown.rb +7 -1
  14. data/lib/brand_dev/models/brand_retrieve_simplified_params.rb +35 -0
  15. data/lib/brand_dev/models/brand_retrieve_simplified_response.rb +280 -0
  16. data/lib/brand_dev/models/brand_screenshot_params.rb +49 -0
  17. data/lib/brand_dev/models/brand_screenshot_response.rb +64 -0
  18. data/lib/brand_dev/models/brand_styleguide_params.rb +36 -0
  19. data/lib/brand_dev/models/brand_styleguide_response.rb +769 -0
  20. data/lib/brand_dev/models.rb +6 -0
  21. data/lib/brand_dev/resources/brand.rb +88 -0
  22. data/lib/brand_dev/version.rb +1 -1
  23. data/lib/brand_dev.rb +6 -0
  24. data/rbi/brand_dev/errors.rbi +16 -0
  25. data/rbi/brand_dev/internal/type/boolean.rbi +2 -0
  26. data/rbi/brand_dev/internal/type/converter.rbi +15 -15
  27. data/rbi/brand_dev/internal/type/union.rbi +5 -0
  28. data/rbi/brand_dev/internal/type/unknown.rbi +2 -0
  29. data/rbi/brand_dev/models/brand_retrieve_simplified_params.rbi +61 -0
  30. data/rbi/brand_dev/models/brand_retrieve_simplified_response.rbi +667 -0
  31. data/rbi/brand_dev/models/brand_screenshot_params.rbi +105 -0
  32. data/rbi/brand_dev/models/brand_screenshot_response.rbi +135 -0
  33. data/rbi/brand_dev/models/brand_styleguide_params.rbi +60 -0
  34. data/rbi/brand_dev/models/brand_styleguide_response.rbi +1648 -0
  35. data/rbi/brand_dev/models.rbi +7 -0
  36. data/rbi/brand_dev/resources/brand.rbi +67 -0
  37. data/sig/brand_dev/errors.rbs +9 -0
  38. data/sig/brand_dev/internal/type/converter.rbs +7 -1
  39. data/sig/brand_dev/models/brand_retrieve_simplified_params.rbs +30 -0
  40. data/sig/brand_dev/models/brand_retrieve_simplified_response.rbs +292 -0
  41. data/sig/brand_dev/models/brand_screenshot_params.rbs +46 -0
  42. data/sig/brand_dev/models/brand_screenshot_response.rbs +63 -0
  43. data/sig/brand_dev/models/brand_styleguide_params.rbs +30 -0
  44. data/sig/brand_dev/models/brand_styleguide_response.rbs +925 -0
  45. data/sig/brand_dev/models.rbs +6 -0
  46. data/sig/brand_dev/resources/brand.rbs +18 -0
  47. metadata +20 -2
@@ -0,0 +1,1648 @@
1
+ # typed: strong
2
+
3
+ module BrandDev
4
+ module Models
5
+ class BrandStyleguideResponse < BrandDev::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ BrandDev::Models::BrandStyleguideResponse,
10
+ BrandDev::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # HTTP status code
15
+ sig { returns(T.nilable(Integer)) }
16
+ attr_reader :code
17
+
18
+ sig { params(code: Integer).void }
19
+ attr_writer :code
20
+
21
+ # The normalized domain that was processed
22
+ sig { returns(T.nilable(String)) }
23
+ attr_reader :domain
24
+
25
+ sig { params(domain: String).void }
26
+ attr_writer :domain
27
+
28
+ # Status of the response, e.g., 'ok'
29
+ sig { returns(T.nilable(String)) }
30
+ attr_reader :status
31
+
32
+ sig { params(status: String).void }
33
+ attr_writer :status
34
+
35
+ # Comprehensive styleguide data extracted from the website
36
+ sig do
37
+ returns(
38
+ T.nilable(BrandDev::Models::BrandStyleguideResponse::Styleguide)
39
+ )
40
+ end
41
+ attr_reader :styleguide
42
+
43
+ sig do
44
+ params(
45
+ styleguide:
46
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::OrHash
47
+ ).void
48
+ end
49
+ attr_writer :styleguide
50
+
51
+ sig do
52
+ params(
53
+ code: Integer,
54
+ domain: String,
55
+ status: String,
56
+ styleguide:
57
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::OrHash
58
+ ).returns(T.attached_class)
59
+ end
60
+ def self.new(
61
+ # HTTP status code
62
+ code: nil,
63
+ # The normalized domain that was processed
64
+ domain: nil,
65
+ # Status of the response, e.g., 'ok'
66
+ status: nil,
67
+ # Comprehensive styleguide data extracted from the website
68
+ styleguide: nil
69
+ )
70
+ end
71
+
72
+ sig do
73
+ override.returns(
74
+ {
75
+ code: Integer,
76
+ domain: String,
77
+ status: String,
78
+ styleguide: BrandDev::Models::BrandStyleguideResponse::Styleguide
79
+ }
80
+ )
81
+ end
82
+ def to_hash
83
+ end
84
+
85
+ class Styleguide < BrandDev::Internal::Type::BaseModel
86
+ OrHash =
87
+ T.type_alias do
88
+ T.any(
89
+ BrandDev::Models::BrandStyleguideResponse::Styleguide,
90
+ BrandDev::Internal::AnyHash
91
+ )
92
+ end
93
+
94
+ # Primary colors used on the website
95
+ sig do
96
+ returns(
97
+ T.nilable(
98
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Colors
99
+ )
100
+ )
101
+ end
102
+ attr_reader :colors
103
+
104
+ sig do
105
+ params(
106
+ colors:
107
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Colors::OrHash
108
+ ).void
109
+ end
110
+ attr_writer :colors
111
+
112
+ # UI component styles
113
+ sig do
114
+ returns(
115
+ T.nilable(
116
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components
117
+ )
118
+ )
119
+ end
120
+ attr_reader :components
121
+
122
+ sig do
123
+ params(
124
+ components:
125
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::OrHash
126
+ ).void
127
+ end
128
+ attr_writer :components
129
+
130
+ # Spacing system used on the website
131
+ sig do
132
+ returns(
133
+ T.nilable(
134
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::ElementSpacing
135
+ )
136
+ )
137
+ end
138
+ attr_reader :element_spacing
139
+
140
+ sig do
141
+ params(
142
+ element_spacing:
143
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::ElementSpacing::OrHash
144
+ ).void
145
+ end
146
+ attr_writer :element_spacing
147
+
148
+ # Shadow styles used on the website
149
+ sig do
150
+ returns(
151
+ T.nilable(
152
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Shadows
153
+ )
154
+ )
155
+ end
156
+ attr_reader :shadows
157
+
158
+ sig do
159
+ params(
160
+ shadows:
161
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Shadows::OrHash
162
+ ).void
163
+ end
164
+ attr_writer :shadows
165
+
166
+ # Typography styles used on the website
167
+ sig do
168
+ returns(
169
+ T.nilable(
170
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography
171
+ )
172
+ )
173
+ end
174
+ attr_reader :typography
175
+
176
+ sig do
177
+ params(
178
+ typography:
179
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::OrHash
180
+ ).void
181
+ end
182
+ attr_writer :typography
183
+
184
+ # Comprehensive styleguide data extracted from the website
185
+ sig do
186
+ params(
187
+ colors:
188
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Colors::OrHash,
189
+ components:
190
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::OrHash,
191
+ element_spacing:
192
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::ElementSpacing::OrHash,
193
+ shadows:
194
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Shadows::OrHash,
195
+ typography:
196
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::OrHash
197
+ ).returns(T.attached_class)
198
+ end
199
+ def self.new(
200
+ # Primary colors used on the website
201
+ colors: nil,
202
+ # UI component styles
203
+ components: nil,
204
+ # Spacing system used on the website
205
+ element_spacing: nil,
206
+ # Shadow styles used on the website
207
+ shadows: nil,
208
+ # Typography styles used on the website
209
+ typography: nil
210
+ )
211
+ end
212
+
213
+ sig do
214
+ override.returns(
215
+ {
216
+ colors:
217
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Colors,
218
+ components:
219
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components,
220
+ element_spacing:
221
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::ElementSpacing,
222
+ shadows:
223
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Shadows,
224
+ typography:
225
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography
226
+ }
227
+ )
228
+ end
229
+ def to_hash
230
+ end
231
+
232
+ class Colors < BrandDev::Internal::Type::BaseModel
233
+ OrHash =
234
+ T.type_alias do
235
+ T.any(
236
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Colors,
237
+ BrandDev::Internal::AnyHash
238
+ )
239
+ end
240
+
241
+ # Accent color of the website (hex format)
242
+ sig { returns(T.nilable(String)) }
243
+ attr_reader :accent
244
+
245
+ sig { params(accent: String).void }
246
+ attr_writer :accent
247
+
248
+ # Background color of the website (hex format)
249
+ sig { returns(T.nilable(String)) }
250
+ attr_reader :background
251
+
252
+ sig { params(background: String).void }
253
+ attr_writer :background
254
+
255
+ # Text color of the website (hex format)
256
+ sig { returns(T.nilable(String)) }
257
+ attr_reader :text
258
+
259
+ sig { params(text: String).void }
260
+ attr_writer :text
261
+
262
+ # Primary colors used on the website
263
+ sig do
264
+ params(accent: String, background: String, text: String).returns(
265
+ T.attached_class
266
+ )
267
+ end
268
+ def self.new(
269
+ # Accent color of the website (hex format)
270
+ accent: nil,
271
+ # Background color of the website (hex format)
272
+ background: nil,
273
+ # Text color of the website (hex format)
274
+ text: nil
275
+ )
276
+ end
277
+
278
+ sig do
279
+ override.returns(
280
+ { accent: String, background: String, text: String }
281
+ )
282
+ end
283
+ def to_hash
284
+ end
285
+ end
286
+
287
+ class Components < BrandDev::Internal::Type::BaseModel
288
+ OrHash =
289
+ T.type_alias do
290
+ T.any(
291
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components,
292
+ BrandDev::Internal::AnyHash
293
+ )
294
+ end
295
+
296
+ # Button component styles
297
+ sig do
298
+ returns(
299
+ T.nilable(
300
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button
301
+ )
302
+ )
303
+ end
304
+ attr_reader :button
305
+
306
+ sig do
307
+ params(
308
+ button:
309
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::OrHash
310
+ ).void
311
+ end
312
+ attr_writer :button
313
+
314
+ # Card component style
315
+ sig do
316
+ returns(
317
+ T.nilable(
318
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Card
319
+ )
320
+ )
321
+ end
322
+ attr_reader :card
323
+
324
+ sig do
325
+ params(
326
+ card:
327
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Card::OrHash
328
+ ).void
329
+ end
330
+ attr_writer :card
331
+
332
+ # UI component styles
333
+ sig do
334
+ params(
335
+ button:
336
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::OrHash,
337
+ card:
338
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Card::OrHash
339
+ ).returns(T.attached_class)
340
+ end
341
+ def self.new(
342
+ # Button component styles
343
+ button: nil,
344
+ # Card component style
345
+ card: nil
346
+ )
347
+ end
348
+
349
+ sig do
350
+ override.returns(
351
+ {
352
+ button:
353
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button,
354
+ card:
355
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Card
356
+ }
357
+ )
358
+ end
359
+ def to_hash
360
+ end
361
+
362
+ class Button < BrandDev::Internal::Type::BaseModel
363
+ OrHash =
364
+ T.type_alias do
365
+ T.any(
366
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button,
367
+ BrandDev::Internal::AnyHash
368
+ )
369
+ end
370
+
371
+ # Link button style
372
+ sig do
373
+ returns(
374
+ T.nilable(
375
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Link
376
+ )
377
+ )
378
+ end
379
+ attr_reader :link
380
+
381
+ sig do
382
+ params(
383
+ link:
384
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Link::OrHash
385
+ ).void
386
+ end
387
+ attr_writer :link
388
+
389
+ # Primary button style
390
+ sig do
391
+ returns(
392
+ T.nilable(
393
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Primary
394
+ )
395
+ )
396
+ end
397
+ attr_reader :primary
398
+
399
+ sig do
400
+ params(
401
+ primary:
402
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Primary::OrHash
403
+ ).void
404
+ end
405
+ attr_writer :primary
406
+
407
+ # Secondary button style
408
+ sig do
409
+ returns(
410
+ T.nilable(
411
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Secondary
412
+ )
413
+ )
414
+ end
415
+ attr_reader :secondary
416
+
417
+ sig do
418
+ params(
419
+ secondary:
420
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Secondary::OrHash
421
+ ).void
422
+ end
423
+ attr_writer :secondary
424
+
425
+ # Button component styles
426
+ sig do
427
+ params(
428
+ link:
429
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Link::OrHash,
430
+ primary:
431
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Primary::OrHash,
432
+ secondary:
433
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Secondary::OrHash
434
+ ).returns(T.attached_class)
435
+ end
436
+ def self.new(
437
+ # Link button style
438
+ link: nil,
439
+ # Primary button style
440
+ primary: nil,
441
+ # Secondary button style
442
+ secondary: nil
443
+ )
444
+ end
445
+
446
+ sig do
447
+ override.returns(
448
+ {
449
+ link:
450
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Link,
451
+ primary:
452
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Primary,
453
+ secondary:
454
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Secondary
455
+ }
456
+ )
457
+ end
458
+ def to_hash
459
+ end
460
+
461
+ class Link < BrandDev::Internal::Type::BaseModel
462
+ OrHash =
463
+ T.type_alias do
464
+ T.any(
465
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Link,
466
+ BrandDev::Internal::AnyHash
467
+ )
468
+ end
469
+
470
+ sig { returns(T.nilable(String)) }
471
+ attr_reader :background_color
472
+
473
+ sig { params(background_color: String).void }
474
+ attr_writer :background_color
475
+
476
+ sig { returns(T.nilable(String)) }
477
+ attr_reader :border_color
478
+
479
+ sig { params(border_color: String).void }
480
+ attr_writer :border_color
481
+
482
+ sig { returns(T.nilable(String)) }
483
+ attr_reader :border_radius
484
+
485
+ sig { params(border_radius: String).void }
486
+ attr_writer :border_radius
487
+
488
+ sig { returns(T.nilable(String)) }
489
+ attr_reader :border_style
490
+
491
+ sig { params(border_style: String).void }
492
+ attr_writer :border_style
493
+
494
+ sig { returns(T.nilable(String)) }
495
+ attr_reader :border_width
496
+
497
+ sig { params(border_width: String).void }
498
+ attr_writer :border_width
499
+
500
+ sig { returns(T.nilable(String)) }
501
+ attr_reader :box_shadow
502
+
503
+ sig { params(box_shadow: String).void }
504
+ attr_writer :box_shadow
505
+
506
+ sig { returns(T.nilable(String)) }
507
+ attr_reader :color
508
+
509
+ sig { params(color: String).void }
510
+ attr_writer :color
511
+
512
+ sig { returns(T.nilable(String)) }
513
+ attr_reader :font_size
514
+
515
+ sig { params(font_size: String).void }
516
+ attr_writer :font_size
517
+
518
+ sig { returns(T.nilable(Float)) }
519
+ attr_reader :font_weight
520
+
521
+ sig { params(font_weight: Float).void }
522
+ attr_writer :font_weight
523
+
524
+ sig { returns(T.nilable(String)) }
525
+ attr_reader :padding
526
+
527
+ sig { params(padding: String).void }
528
+ attr_writer :padding
529
+
530
+ sig { returns(T.nilable(String)) }
531
+ attr_reader :text_decoration
532
+
533
+ sig { params(text_decoration: String).void }
534
+ attr_writer :text_decoration
535
+
536
+ # Link button style
537
+ sig do
538
+ params(
539
+ background_color: String,
540
+ border_color: String,
541
+ border_radius: String,
542
+ border_style: String,
543
+ border_width: String,
544
+ box_shadow: String,
545
+ color: String,
546
+ font_size: String,
547
+ font_weight: Float,
548
+ padding: String,
549
+ text_decoration: String
550
+ ).returns(T.attached_class)
551
+ end
552
+ def self.new(
553
+ background_color: nil,
554
+ border_color: nil,
555
+ border_radius: nil,
556
+ border_style: nil,
557
+ border_width: nil,
558
+ box_shadow: nil,
559
+ color: nil,
560
+ font_size: nil,
561
+ font_weight: nil,
562
+ padding: nil,
563
+ text_decoration: nil
564
+ )
565
+ end
566
+
567
+ sig do
568
+ override.returns(
569
+ {
570
+ background_color: String,
571
+ border_color: String,
572
+ border_radius: String,
573
+ border_style: String,
574
+ border_width: String,
575
+ box_shadow: String,
576
+ color: String,
577
+ font_size: String,
578
+ font_weight: Float,
579
+ padding: String,
580
+ text_decoration: String
581
+ }
582
+ )
583
+ end
584
+ def to_hash
585
+ end
586
+ end
587
+
588
+ class Primary < BrandDev::Internal::Type::BaseModel
589
+ OrHash =
590
+ T.type_alias do
591
+ T.any(
592
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Primary,
593
+ BrandDev::Internal::AnyHash
594
+ )
595
+ end
596
+
597
+ sig { returns(T.nilable(String)) }
598
+ attr_reader :background_color
599
+
600
+ sig { params(background_color: String).void }
601
+ attr_writer :background_color
602
+
603
+ sig { returns(T.nilable(String)) }
604
+ attr_reader :border_color
605
+
606
+ sig { params(border_color: String).void }
607
+ attr_writer :border_color
608
+
609
+ sig { returns(T.nilable(String)) }
610
+ attr_reader :border_radius
611
+
612
+ sig { params(border_radius: String).void }
613
+ attr_writer :border_radius
614
+
615
+ sig { returns(T.nilable(String)) }
616
+ attr_reader :border_style
617
+
618
+ sig { params(border_style: String).void }
619
+ attr_writer :border_style
620
+
621
+ sig { returns(T.nilable(String)) }
622
+ attr_reader :border_width
623
+
624
+ sig { params(border_width: String).void }
625
+ attr_writer :border_width
626
+
627
+ sig { returns(T.nilable(String)) }
628
+ attr_reader :box_shadow
629
+
630
+ sig { params(box_shadow: String).void }
631
+ attr_writer :box_shadow
632
+
633
+ sig { returns(T.nilable(String)) }
634
+ attr_reader :color
635
+
636
+ sig { params(color: String).void }
637
+ attr_writer :color
638
+
639
+ sig { returns(T.nilable(String)) }
640
+ attr_reader :font_size
641
+
642
+ sig { params(font_size: String).void }
643
+ attr_writer :font_size
644
+
645
+ sig { returns(T.nilable(Float)) }
646
+ attr_reader :font_weight
647
+
648
+ sig { params(font_weight: Float).void }
649
+ attr_writer :font_weight
650
+
651
+ sig { returns(T.nilable(String)) }
652
+ attr_reader :padding
653
+
654
+ sig { params(padding: String).void }
655
+ attr_writer :padding
656
+
657
+ sig { returns(T.nilable(String)) }
658
+ attr_reader :text_decoration
659
+
660
+ sig { params(text_decoration: String).void }
661
+ attr_writer :text_decoration
662
+
663
+ # Primary button style
664
+ sig do
665
+ params(
666
+ background_color: String,
667
+ border_color: String,
668
+ border_radius: String,
669
+ border_style: String,
670
+ border_width: String,
671
+ box_shadow: String,
672
+ color: String,
673
+ font_size: String,
674
+ font_weight: Float,
675
+ padding: String,
676
+ text_decoration: String
677
+ ).returns(T.attached_class)
678
+ end
679
+ def self.new(
680
+ background_color: nil,
681
+ border_color: nil,
682
+ border_radius: nil,
683
+ border_style: nil,
684
+ border_width: nil,
685
+ box_shadow: nil,
686
+ color: nil,
687
+ font_size: nil,
688
+ font_weight: nil,
689
+ padding: nil,
690
+ text_decoration: nil
691
+ )
692
+ end
693
+
694
+ sig do
695
+ override.returns(
696
+ {
697
+ background_color: String,
698
+ border_color: String,
699
+ border_radius: String,
700
+ border_style: String,
701
+ border_width: String,
702
+ box_shadow: String,
703
+ color: String,
704
+ font_size: String,
705
+ font_weight: Float,
706
+ padding: String,
707
+ text_decoration: String
708
+ }
709
+ )
710
+ end
711
+ def to_hash
712
+ end
713
+ end
714
+
715
+ class Secondary < BrandDev::Internal::Type::BaseModel
716
+ OrHash =
717
+ T.type_alias do
718
+ T.any(
719
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Button::Secondary,
720
+ BrandDev::Internal::AnyHash
721
+ )
722
+ end
723
+
724
+ sig { returns(T.nilable(String)) }
725
+ attr_reader :background_color
726
+
727
+ sig { params(background_color: String).void }
728
+ attr_writer :background_color
729
+
730
+ sig { returns(T.nilable(String)) }
731
+ attr_reader :border_color
732
+
733
+ sig { params(border_color: String).void }
734
+ attr_writer :border_color
735
+
736
+ sig { returns(T.nilable(String)) }
737
+ attr_reader :border_radius
738
+
739
+ sig { params(border_radius: String).void }
740
+ attr_writer :border_radius
741
+
742
+ sig { returns(T.nilable(String)) }
743
+ attr_reader :border_style
744
+
745
+ sig { params(border_style: String).void }
746
+ attr_writer :border_style
747
+
748
+ sig { returns(T.nilable(String)) }
749
+ attr_reader :border_width
750
+
751
+ sig { params(border_width: String).void }
752
+ attr_writer :border_width
753
+
754
+ sig { returns(T.nilable(String)) }
755
+ attr_reader :box_shadow
756
+
757
+ sig { params(box_shadow: String).void }
758
+ attr_writer :box_shadow
759
+
760
+ sig { returns(T.nilable(String)) }
761
+ attr_reader :color
762
+
763
+ sig { params(color: String).void }
764
+ attr_writer :color
765
+
766
+ sig { returns(T.nilable(String)) }
767
+ attr_reader :font_size
768
+
769
+ sig { params(font_size: String).void }
770
+ attr_writer :font_size
771
+
772
+ sig { returns(T.nilable(Float)) }
773
+ attr_reader :font_weight
774
+
775
+ sig { params(font_weight: Float).void }
776
+ attr_writer :font_weight
777
+
778
+ sig { returns(T.nilable(String)) }
779
+ attr_reader :padding
780
+
781
+ sig { params(padding: String).void }
782
+ attr_writer :padding
783
+
784
+ sig { returns(T.nilable(String)) }
785
+ attr_reader :text_decoration
786
+
787
+ sig { params(text_decoration: String).void }
788
+ attr_writer :text_decoration
789
+
790
+ # Secondary button style
791
+ sig do
792
+ params(
793
+ background_color: String,
794
+ border_color: String,
795
+ border_radius: String,
796
+ border_style: String,
797
+ border_width: String,
798
+ box_shadow: String,
799
+ color: String,
800
+ font_size: String,
801
+ font_weight: Float,
802
+ padding: String,
803
+ text_decoration: String
804
+ ).returns(T.attached_class)
805
+ end
806
+ def self.new(
807
+ background_color: nil,
808
+ border_color: nil,
809
+ border_radius: nil,
810
+ border_style: nil,
811
+ border_width: nil,
812
+ box_shadow: nil,
813
+ color: nil,
814
+ font_size: nil,
815
+ font_weight: nil,
816
+ padding: nil,
817
+ text_decoration: nil
818
+ )
819
+ end
820
+
821
+ sig do
822
+ override.returns(
823
+ {
824
+ background_color: String,
825
+ border_color: String,
826
+ border_radius: String,
827
+ border_style: String,
828
+ border_width: String,
829
+ box_shadow: String,
830
+ color: String,
831
+ font_size: String,
832
+ font_weight: Float,
833
+ padding: String,
834
+ text_decoration: String
835
+ }
836
+ )
837
+ end
838
+ def to_hash
839
+ end
840
+ end
841
+ end
842
+
843
+ class Card < BrandDev::Internal::Type::BaseModel
844
+ OrHash =
845
+ T.type_alias do
846
+ T.any(
847
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Components::Card,
848
+ BrandDev::Internal::AnyHash
849
+ )
850
+ end
851
+
852
+ sig { returns(T.nilable(String)) }
853
+ attr_reader :background_color
854
+
855
+ sig { params(background_color: String).void }
856
+ attr_writer :background_color
857
+
858
+ sig { returns(T.nilable(String)) }
859
+ attr_reader :border_color
860
+
861
+ sig { params(border_color: String).void }
862
+ attr_writer :border_color
863
+
864
+ sig { returns(T.nilable(String)) }
865
+ attr_reader :border_radius
866
+
867
+ sig { params(border_radius: String).void }
868
+ attr_writer :border_radius
869
+
870
+ sig { returns(T.nilable(String)) }
871
+ attr_reader :border_style
872
+
873
+ sig { params(border_style: String).void }
874
+ attr_writer :border_style
875
+
876
+ sig { returns(T.nilable(String)) }
877
+ attr_reader :border_width
878
+
879
+ sig { params(border_width: String).void }
880
+ attr_writer :border_width
881
+
882
+ sig { returns(T.nilable(String)) }
883
+ attr_reader :box_shadow
884
+
885
+ sig { params(box_shadow: String).void }
886
+ attr_writer :box_shadow
887
+
888
+ sig { returns(T.nilable(String)) }
889
+ attr_reader :padding
890
+
891
+ sig { params(padding: String).void }
892
+ attr_writer :padding
893
+
894
+ sig { returns(T.nilable(String)) }
895
+ attr_reader :text_color
896
+
897
+ sig { params(text_color: String).void }
898
+ attr_writer :text_color
899
+
900
+ # Card component style
901
+ sig do
902
+ params(
903
+ background_color: String,
904
+ border_color: String,
905
+ border_radius: String,
906
+ border_style: String,
907
+ border_width: String,
908
+ box_shadow: String,
909
+ padding: String,
910
+ text_color: String
911
+ ).returns(T.attached_class)
912
+ end
913
+ def self.new(
914
+ background_color: nil,
915
+ border_color: nil,
916
+ border_radius: nil,
917
+ border_style: nil,
918
+ border_width: nil,
919
+ box_shadow: nil,
920
+ padding: nil,
921
+ text_color: nil
922
+ )
923
+ end
924
+
925
+ sig do
926
+ override.returns(
927
+ {
928
+ background_color: String,
929
+ border_color: String,
930
+ border_radius: String,
931
+ border_style: String,
932
+ border_width: String,
933
+ box_shadow: String,
934
+ padding: String,
935
+ text_color: String
936
+ }
937
+ )
938
+ end
939
+ def to_hash
940
+ end
941
+ end
942
+ end
943
+
944
+ class ElementSpacing < BrandDev::Internal::Type::BaseModel
945
+ OrHash =
946
+ T.type_alias do
947
+ T.any(
948
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::ElementSpacing,
949
+ BrandDev::Internal::AnyHash
950
+ )
951
+ end
952
+
953
+ # Large spacing value
954
+ sig { returns(T.nilable(String)) }
955
+ attr_reader :lg
956
+
957
+ sig { params(lg: String).void }
958
+ attr_writer :lg
959
+
960
+ # Medium spacing value
961
+ sig { returns(T.nilable(String)) }
962
+ attr_reader :md
963
+
964
+ sig { params(md: String).void }
965
+ attr_writer :md
966
+
967
+ # Small spacing value
968
+ sig { returns(T.nilable(String)) }
969
+ attr_reader :sm
970
+
971
+ sig { params(sm: String).void }
972
+ attr_writer :sm
973
+
974
+ # Extra large spacing value
975
+ sig { returns(T.nilable(String)) }
976
+ attr_reader :xl
977
+
978
+ sig { params(xl: String).void }
979
+ attr_writer :xl
980
+
981
+ # Extra small spacing value
982
+ sig { returns(T.nilable(String)) }
983
+ attr_reader :xs
984
+
985
+ sig { params(xs: String).void }
986
+ attr_writer :xs
987
+
988
+ # Spacing system used on the website
989
+ sig do
990
+ params(
991
+ lg: String,
992
+ md: String,
993
+ sm: String,
994
+ xl: String,
995
+ xs: String
996
+ ).returns(T.attached_class)
997
+ end
998
+ def self.new(
999
+ # Large spacing value
1000
+ lg: nil,
1001
+ # Medium spacing value
1002
+ md: nil,
1003
+ # Small spacing value
1004
+ sm: nil,
1005
+ # Extra large spacing value
1006
+ xl: nil,
1007
+ # Extra small spacing value
1008
+ xs: nil
1009
+ )
1010
+ end
1011
+
1012
+ sig do
1013
+ override.returns(
1014
+ { lg: String, md: String, sm: String, xl: String, xs: String }
1015
+ )
1016
+ end
1017
+ def to_hash
1018
+ end
1019
+ end
1020
+
1021
+ class Shadows < BrandDev::Internal::Type::BaseModel
1022
+ OrHash =
1023
+ T.type_alias do
1024
+ T.any(
1025
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Shadows,
1026
+ BrandDev::Internal::AnyHash
1027
+ )
1028
+ end
1029
+
1030
+ # Inner shadow value
1031
+ sig { returns(T.nilable(String)) }
1032
+ attr_reader :inner
1033
+
1034
+ sig { params(inner: String).void }
1035
+ attr_writer :inner
1036
+
1037
+ # Large shadow value
1038
+ sig { returns(T.nilable(String)) }
1039
+ attr_reader :lg
1040
+
1041
+ sig { params(lg: String).void }
1042
+ attr_writer :lg
1043
+
1044
+ # Medium shadow value
1045
+ sig { returns(T.nilable(String)) }
1046
+ attr_reader :md
1047
+
1048
+ sig { params(md: String).void }
1049
+ attr_writer :md
1050
+
1051
+ # Small shadow value
1052
+ sig { returns(T.nilable(String)) }
1053
+ attr_reader :sm
1054
+
1055
+ sig { params(sm: String).void }
1056
+ attr_writer :sm
1057
+
1058
+ # Extra large shadow value
1059
+ sig { returns(T.nilable(String)) }
1060
+ attr_reader :xl
1061
+
1062
+ sig { params(xl: String).void }
1063
+ attr_writer :xl
1064
+
1065
+ # Shadow styles used on the website
1066
+ sig do
1067
+ params(
1068
+ inner: String,
1069
+ lg: String,
1070
+ md: String,
1071
+ sm: String,
1072
+ xl: String
1073
+ ).returns(T.attached_class)
1074
+ end
1075
+ def self.new(
1076
+ # Inner shadow value
1077
+ inner: nil,
1078
+ # Large shadow value
1079
+ lg: nil,
1080
+ # Medium shadow value
1081
+ md: nil,
1082
+ # Small shadow value
1083
+ sm: nil,
1084
+ # Extra large shadow value
1085
+ xl: nil
1086
+ )
1087
+ end
1088
+
1089
+ sig do
1090
+ override.returns(
1091
+ { inner: String, lg: String, md: String, sm: String, xl: String }
1092
+ )
1093
+ end
1094
+ def to_hash
1095
+ end
1096
+ end
1097
+
1098
+ class Typography < BrandDev::Internal::Type::BaseModel
1099
+ OrHash =
1100
+ T.type_alias do
1101
+ T.any(
1102
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography,
1103
+ BrandDev::Internal::AnyHash
1104
+ )
1105
+ end
1106
+
1107
+ # Heading styles
1108
+ sig do
1109
+ returns(
1110
+ T.nilable(
1111
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings
1112
+ )
1113
+ )
1114
+ end
1115
+ attr_reader :headings
1116
+
1117
+ sig do
1118
+ params(
1119
+ headings:
1120
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::OrHash
1121
+ ).void
1122
+ end
1123
+ attr_writer :headings
1124
+
1125
+ # Paragraph text styles
1126
+ sig do
1127
+ returns(
1128
+ T.nilable(
1129
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::P
1130
+ )
1131
+ )
1132
+ end
1133
+ attr_reader :p_
1134
+
1135
+ sig do
1136
+ params(
1137
+ p_:
1138
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::P::OrHash
1139
+ ).void
1140
+ end
1141
+ attr_writer :p_
1142
+
1143
+ # Typography styles used on the website
1144
+ sig do
1145
+ params(
1146
+ headings:
1147
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::OrHash,
1148
+ p_:
1149
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::P::OrHash
1150
+ ).returns(T.attached_class)
1151
+ end
1152
+ def self.new(
1153
+ # Heading styles
1154
+ headings: nil,
1155
+ # Paragraph text styles
1156
+ p_: nil
1157
+ )
1158
+ end
1159
+
1160
+ sig do
1161
+ override.returns(
1162
+ {
1163
+ headings:
1164
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings,
1165
+ p_:
1166
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::P
1167
+ }
1168
+ )
1169
+ end
1170
+ def to_hash
1171
+ end
1172
+
1173
+ class Headings < BrandDev::Internal::Type::BaseModel
1174
+ OrHash =
1175
+ T.type_alias do
1176
+ T.any(
1177
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings,
1178
+ BrandDev::Internal::AnyHash
1179
+ )
1180
+ end
1181
+
1182
+ sig do
1183
+ returns(
1184
+ T.nilable(
1185
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H1
1186
+ )
1187
+ )
1188
+ end
1189
+ attr_reader :h1
1190
+
1191
+ sig do
1192
+ params(
1193
+ h1:
1194
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H1::OrHash
1195
+ ).void
1196
+ end
1197
+ attr_writer :h1
1198
+
1199
+ sig do
1200
+ returns(
1201
+ T.nilable(
1202
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H2
1203
+ )
1204
+ )
1205
+ end
1206
+ attr_reader :h2
1207
+
1208
+ sig do
1209
+ params(
1210
+ h2:
1211
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H2::OrHash
1212
+ ).void
1213
+ end
1214
+ attr_writer :h2
1215
+
1216
+ sig do
1217
+ returns(
1218
+ T.nilable(
1219
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H3
1220
+ )
1221
+ )
1222
+ end
1223
+ attr_reader :h3
1224
+
1225
+ sig do
1226
+ params(
1227
+ h3:
1228
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H3::OrHash
1229
+ ).void
1230
+ end
1231
+ attr_writer :h3
1232
+
1233
+ sig do
1234
+ returns(
1235
+ T.nilable(
1236
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H4
1237
+ )
1238
+ )
1239
+ end
1240
+ attr_reader :h4
1241
+
1242
+ sig do
1243
+ params(
1244
+ h4:
1245
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H4::OrHash
1246
+ ).void
1247
+ end
1248
+ attr_writer :h4
1249
+
1250
+ # Heading styles
1251
+ sig do
1252
+ params(
1253
+ h1:
1254
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H1::OrHash,
1255
+ h2:
1256
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H2::OrHash,
1257
+ h3:
1258
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H3::OrHash,
1259
+ h4:
1260
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H4::OrHash
1261
+ ).returns(T.attached_class)
1262
+ end
1263
+ def self.new(h1: nil, h2: nil, h3: nil, h4: nil)
1264
+ end
1265
+
1266
+ sig do
1267
+ override.returns(
1268
+ {
1269
+ h1:
1270
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H1,
1271
+ h2:
1272
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H2,
1273
+ h3:
1274
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H3,
1275
+ h4:
1276
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H4
1277
+ }
1278
+ )
1279
+ end
1280
+ def to_hash
1281
+ end
1282
+
1283
+ class H1 < BrandDev::Internal::Type::BaseModel
1284
+ OrHash =
1285
+ T.type_alias do
1286
+ T.any(
1287
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H1,
1288
+ BrandDev::Internal::AnyHash
1289
+ )
1290
+ end
1291
+
1292
+ sig { returns(T.nilable(String)) }
1293
+ attr_reader :font_family
1294
+
1295
+ sig { params(font_family: String).void }
1296
+ attr_writer :font_family
1297
+
1298
+ sig { returns(T.nilable(String)) }
1299
+ attr_reader :font_size
1300
+
1301
+ sig { params(font_size: String).void }
1302
+ attr_writer :font_size
1303
+
1304
+ sig { returns(T.nilable(Float)) }
1305
+ attr_reader :font_weight
1306
+
1307
+ sig { params(font_weight: Float).void }
1308
+ attr_writer :font_weight
1309
+
1310
+ sig { returns(T.nilable(String)) }
1311
+ attr_reader :letter_spacing
1312
+
1313
+ sig { params(letter_spacing: String).void }
1314
+ attr_writer :letter_spacing
1315
+
1316
+ sig { returns(T.nilable(String)) }
1317
+ attr_reader :line_height
1318
+
1319
+ sig { params(line_height: String).void }
1320
+ attr_writer :line_height
1321
+
1322
+ sig do
1323
+ params(
1324
+ font_family: String,
1325
+ font_size: String,
1326
+ font_weight: Float,
1327
+ letter_spacing: String,
1328
+ line_height: String
1329
+ ).returns(T.attached_class)
1330
+ end
1331
+ def self.new(
1332
+ font_family: nil,
1333
+ font_size: nil,
1334
+ font_weight: nil,
1335
+ letter_spacing: nil,
1336
+ line_height: nil
1337
+ )
1338
+ end
1339
+
1340
+ sig do
1341
+ override.returns(
1342
+ {
1343
+ font_family: String,
1344
+ font_size: String,
1345
+ font_weight: Float,
1346
+ letter_spacing: String,
1347
+ line_height: String
1348
+ }
1349
+ )
1350
+ end
1351
+ def to_hash
1352
+ end
1353
+ end
1354
+
1355
+ class H2 < BrandDev::Internal::Type::BaseModel
1356
+ OrHash =
1357
+ T.type_alias do
1358
+ T.any(
1359
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H2,
1360
+ BrandDev::Internal::AnyHash
1361
+ )
1362
+ end
1363
+
1364
+ sig { returns(T.nilable(String)) }
1365
+ attr_reader :font_family
1366
+
1367
+ sig { params(font_family: String).void }
1368
+ attr_writer :font_family
1369
+
1370
+ sig { returns(T.nilable(String)) }
1371
+ attr_reader :font_size
1372
+
1373
+ sig { params(font_size: String).void }
1374
+ attr_writer :font_size
1375
+
1376
+ sig { returns(T.nilable(Float)) }
1377
+ attr_reader :font_weight
1378
+
1379
+ sig { params(font_weight: Float).void }
1380
+ attr_writer :font_weight
1381
+
1382
+ sig { returns(T.nilable(String)) }
1383
+ attr_reader :letter_spacing
1384
+
1385
+ sig { params(letter_spacing: String).void }
1386
+ attr_writer :letter_spacing
1387
+
1388
+ sig { returns(T.nilable(String)) }
1389
+ attr_reader :line_height
1390
+
1391
+ sig { params(line_height: String).void }
1392
+ attr_writer :line_height
1393
+
1394
+ sig do
1395
+ params(
1396
+ font_family: String,
1397
+ font_size: String,
1398
+ font_weight: Float,
1399
+ letter_spacing: String,
1400
+ line_height: String
1401
+ ).returns(T.attached_class)
1402
+ end
1403
+ def self.new(
1404
+ font_family: nil,
1405
+ font_size: nil,
1406
+ font_weight: nil,
1407
+ letter_spacing: nil,
1408
+ line_height: nil
1409
+ )
1410
+ end
1411
+
1412
+ sig do
1413
+ override.returns(
1414
+ {
1415
+ font_family: String,
1416
+ font_size: String,
1417
+ font_weight: Float,
1418
+ letter_spacing: String,
1419
+ line_height: String
1420
+ }
1421
+ )
1422
+ end
1423
+ def to_hash
1424
+ end
1425
+ end
1426
+
1427
+ class H3 < BrandDev::Internal::Type::BaseModel
1428
+ OrHash =
1429
+ T.type_alias do
1430
+ T.any(
1431
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H3,
1432
+ BrandDev::Internal::AnyHash
1433
+ )
1434
+ end
1435
+
1436
+ sig { returns(T.nilable(String)) }
1437
+ attr_reader :font_family
1438
+
1439
+ sig { params(font_family: String).void }
1440
+ attr_writer :font_family
1441
+
1442
+ sig { returns(T.nilable(String)) }
1443
+ attr_reader :font_size
1444
+
1445
+ sig { params(font_size: String).void }
1446
+ attr_writer :font_size
1447
+
1448
+ sig { returns(T.nilable(Float)) }
1449
+ attr_reader :font_weight
1450
+
1451
+ sig { params(font_weight: Float).void }
1452
+ attr_writer :font_weight
1453
+
1454
+ sig { returns(T.nilable(String)) }
1455
+ attr_reader :letter_spacing
1456
+
1457
+ sig { params(letter_spacing: String).void }
1458
+ attr_writer :letter_spacing
1459
+
1460
+ sig { returns(T.nilable(String)) }
1461
+ attr_reader :line_height
1462
+
1463
+ sig { params(line_height: String).void }
1464
+ attr_writer :line_height
1465
+
1466
+ sig do
1467
+ params(
1468
+ font_family: String,
1469
+ font_size: String,
1470
+ font_weight: Float,
1471
+ letter_spacing: String,
1472
+ line_height: String
1473
+ ).returns(T.attached_class)
1474
+ end
1475
+ def self.new(
1476
+ font_family: nil,
1477
+ font_size: nil,
1478
+ font_weight: nil,
1479
+ letter_spacing: nil,
1480
+ line_height: nil
1481
+ )
1482
+ end
1483
+
1484
+ sig do
1485
+ override.returns(
1486
+ {
1487
+ font_family: String,
1488
+ font_size: String,
1489
+ font_weight: Float,
1490
+ letter_spacing: String,
1491
+ line_height: String
1492
+ }
1493
+ )
1494
+ end
1495
+ def to_hash
1496
+ end
1497
+ end
1498
+
1499
+ class H4 < BrandDev::Internal::Type::BaseModel
1500
+ OrHash =
1501
+ T.type_alias do
1502
+ T.any(
1503
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::Headings::H4,
1504
+ BrandDev::Internal::AnyHash
1505
+ )
1506
+ end
1507
+
1508
+ sig { returns(T.nilable(String)) }
1509
+ attr_reader :font_family
1510
+
1511
+ sig { params(font_family: String).void }
1512
+ attr_writer :font_family
1513
+
1514
+ sig { returns(T.nilable(String)) }
1515
+ attr_reader :font_size
1516
+
1517
+ sig { params(font_size: String).void }
1518
+ attr_writer :font_size
1519
+
1520
+ sig { returns(T.nilable(Float)) }
1521
+ attr_reader :font_weight
1522
+
1523
+ sig { params(font_weight: Float).void }
1524
+ attr_writer :font_weight
1525
+
1526
+ sig { returns(T.nilable(String)) }
1527
+ attr_reader :letter_spacing
1528
+
1529
+ sig { params(letter_spacing: String).void }
1530
+ attr_writer :letter_spacing
1531
+
1532
+ sig { returns(T.nilable(String)) }
1533
+ attr_reader :line_height
1534
+
1535
+ sig { params(line_height: String).void }
1536
+ attr_writer :line_height
1537
+
1538
+ sig do
1539
+ params(
1540
+ font_family: String,
1541
+ font_size: String,
1542
+ font_weight: Float,
1543
+ letter_spacing: String,
1544
+ line_height: String
1545
+ ).returns(T.attached_class)
1546
+ end
1547
+ def self.new(
1548
+ font_family: nil,
1549
+ font_size: nil,
1550
+ font_weight: nil,
1551
+ letter_spacing: nil,
1552
+ line_height: nil
1553
+ )
1554
+ end
1555
+
1556
+ sig do
1557
+ override.returns(
1558
+ {
1559
+ font_family: String,
1560
+ font_size: String,
1561
+ font_weight: Float,
1562
+ letter_spacing: String,
1563
+ line_height: String
1564
+ }
1565
+ )
1566
+ end
1567
+ def to_hash
1568
+ end
1569
+ end
1570
+ end
1571
+
1572
+ class P < BrandDev::Internal::Type::BaseModel
1573
+ OrHash =
1574
+ T.type_alias do
1575
+ T.any(
1576
+ BrandDev::Models::BrandStyleguideResponse::Styleguide::Typography::P,
1577
+ BrandDev::Internal::AnyHash
1578
+ )
1579
+ end
1580
+
1581
+ sig { returns(T.nilable(String)) }
1582
+ attr_reader :font_family
1583
+
1584
+ sig { params(font_family: String).void }
1585
+ attr_writer :font_family
1586
+
1587
+ sig { returns(T.nilable(String)) }
1588
+ attr_reader :font_size
1589
+
1590
+ sig { params(font_size: String).void }
1591
+ attr_writer :font_size
1592
+
1593
+ sig { returns(T.nilable(Float)) }
1594
+ attr_reader :font_weight
1595
+
1596
+ sig { params(font_weight: Float).void }
1597
+ attr_writer :font_weight
1598
+
1599
+ sig { returns(T.nilable(String)) }
1600
+ attr_reader :letter_spacing
1601
+
1602
+ sig { params(letter_spacing: String).void }
1603
+ attr_writer :letter_spacing
1604
+
1605
+ sig { returns(T.nilable(String)) }
1606
+ attr_reader :line_height
1607
+
1608
+ sig { params(line_height: String).void }
1609
+ attr_writer :line_height
1610
+
1611
+ # Paragraph text styles
1612
+ sig do
1613
+ params(
1614
+ font_family: String,
1615
+ font_size: String,
1616
+ font_weight: Float,
1617
+ letter_spacing: String,
1618
+ line_height: String
1619
+ ).returns(T.attached_class)
1620
+ end
1621
+ def self.new(
1622
+ font_family: nil,
1623
+ font_size: nil,
1624
+ font_weight: nil,
1625
+ letter_spacing: nil,
1626
+ line_height: nil
1627
+ )
1628
+ end
1629
+
1630
+ sig do
1631
+ override.returns(
1632
+ {
1633
+ font_family: String,
1634
+ font_size: String,
1635
+ font_weight: Float,
1636
+ letter_spacing: String,
1637
+ line_height: String
1638
+ }
1639
+ )
1640
+ end
1641
+ def to_hash
1642
+ end
1643
+ end
1644
+ end
1645
+ end
1646
+ end
1647
+ end
1648
+ end