SetPassportElementErrors::fromArray()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 1
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * This phpFile is auto-generated.
5
 */
6
7
declare(strict_types=1);
8
9
namespace PHPTdGram\Schema;
10
11
/**
12
 * Informs the user that some of the elements in their Telegram Passport contain errors; for bots only. The user will not be able to resend the elements, until the errors are fixed.
13
 */
14
class SetPassportElementErrors extends TdFunction
15
{
16
    public const TYPE_NAME = 'setPassportElementErrors';
17
18
    /**
19
     * User identifier.
20
     */
21
    protected int $userId;
22
23
    /**
24
     * The errors.
25
     *
26
     * @var InputPassportElementError[]
27
     */
28
    protected array $errors;
29
30
    public function __construct(int $userId, array $errors)
31
    {
32
        $this->userId = $userId;
33
        $this->errors = $errors;
34
    }
35
36
    public static function fromArray(array $array): SetPassportElementErrors
37
    {
38
        return new static(
39
            $array['user_id'],
40
            array_map(fn ($x) => TdSchemaRegistry::fromArray($x), $array['errors']),
41
        );
42
    }
43
44
    public function typeSerialize(): array
45
    {
46
        return [
47
            '@type'           => static::TYPE_NAME,
48
            'user_id'         => $this->userId,
49
            array_map(fn ($x) => $x->typeSerialize(), $this->errors),
50
        ];
51
    }
52
53
    public function getUserId(): int
54
    {
55
        return $this->userId;
56
    }
57
58
    public function getErrors(): array
59
    {
60
        return $this->errors;
61
    }
62
}
63