SetUserPrivacySettingRules::getRules()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
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
 * Changes user privacy settings.
13
 */
14
class SetUserPrivacySettingRules extends TdFunction
15
{
16
    public const TYPE_NAME = 'setUserPrivacySettingRules';
17
18
    /**
19
     * The privacy setting.
20
     */
21
    protected UserPrivacySetting $setting;
22
23
    /**
24
     * The new privacy rules.
25
     */
26
    protected UserPrivacySettingRules $rules;
27
28
    public function __construct(UserPrivacySetting $setting, UserPrivacySettingRules $rules)
29
    {
30
        $this->setting = $setting;
31
        $this->rules   = $rules;
32
    }
33
34
    public static function fromArray(array $array): SetUserPrivacySettingRules
35
    {
36
        return new static(
37
            TdSchemaRegistry::fromArray($array['setting']),
38
            TdSchemaRegistry::fromArray($array['rules']),
39
        );
40
    }
41
42
    public function typeSerialize(): array
43
    {
44
        return [
45
            '@type'   => static::TYPE_NAME,
46
            'setting' => $this->setting->typeSerialize(),
47
            'rules'   => $this->rules->typeSerialize(),
48
        ];
49
    }
50
51
    public function getSetting(): UserPrivacySetting
52
    {
53
        return $this->setting;
54
    }
55
56
    public function getRules(): UserPrivacySettingRules
57
    {
58
        return $this->rules;
59
    }
60
}
61