Parse and validate AT Protocol Lexicons with DTO generation for Laravel
1<?php
2
3namespace SocialDept\AtpSchema\Generated\Tools\Ozone\Moderation\Defs;
4
5use SocialDept\AtpSchema\Data\Data;
6
7/**
8 * GENERATED CODE - DO NOT EDIT
9 *
10 * Lexicon: tools.ozone.moderation.defs.imageDetails
11 * Type: object
12 *
13 * @property int $width
14 * @property int $height
15 *
16 * Constraints:
17 * - Required: width, height
18 */
19class ImageDetails extends Data
20{
21 public function __construct(
22 public readonly int $width,
23 public readonly int $height
24 ) {
25 }
26
27 /**
28 * Get the lexicon NSID for this data type.
29 *
30 * @return string
31 */
32 public static function getLexicon(): string
33 {
34 return 'tools.ozone.moderation.defs.imageDetails';
35 }
36
37
38 /**
39 * Create an instance from an array.
40 *
41 * @param array $data The data array
42 * @return static
43 */
44 public static function fromArray(array $data): static
45 {
46 return new static(
47 width: $data['width'],
48 height: $data['height']
49 );
50 }
51
52}