ChangeImportedContacts   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 34
rs 10
c 0
b 0
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A typeSerialize() 0 5 1
A __construct() 0 3 1
A fromArray() 0 4 1
A getContacts() 0 3 1
1
<?php
2
3
/**
4
 * This phpFile is auto-generated.
5
 */
6
7
declare(strict_types=1);
8
9
namespace AurimasNiekis\TdLibSchema;
10
11
/**
12
 * Changes imported contacts using the list of current user contacts saved on the device. Imports newly added contacts and, if at least the file database is enabled, deletes recently deleted contacts. Query result depends on the result of the previous query, so only one query is possible at the same time.
13
 */
14
class ChangeImportedContacts extends TdFunction
15
{
16
    public const TYPE_NAME = 'changeImportedContacts';
17
18
    /**
19
     * The new list of contacts, contact's vCard are ignored and are not imported.
20
     *
21
     * @var Contact[]
22
     */
23
    protected array $contacts;
24
25
    public function __construct(array $contacts)
26
    {
27
        $this->contacts = $contacts;
28
    }
29
30
    public static function fromArray(array $array): ChangeImportedContacts
31
    {
32
        return new static(
33
            array_map(fn ($x) => TdSchemaRegistry::fromArray($x), $array['contacts']),
34
        );
35
    }
36
37
    public function typeSerialize(): array
38
    {
39
        return [
40
            '@type'           => static::TYPE_NAME,
41
            array_map(fn ($x) => $x->typeSerialize(), $this->contacts),
42
        ];
43
    }
44
45
    public function getContacts(): array
46
    {
47
        return $this->contacts;
48
    }
49
}
50