Passed
Push — main ( 36dc31...e0778d )
by Miaad
10:46
created

chatFullInfo   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 193
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 57
c 1
b 0
f 0
dl 0
loc 193
rs 10
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 2
1
<?php
2
3
namespace BPT\types;
4
5
use stdClass;
6
7
/**
8
 * This object contains full information about a chat.
9
 */
10
class chatFullInfo extends types {
0 ignored issues
show
Bug introduced by
The type BPT\types\types was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
11
    /** Keep all properties which has sub properties */
12
    private const subs = [
13
        'photo' => 'BPT\types\chatPhoto',
14
        'birthdate' => 'BPT\types\birthdate',
15
        'business_intro' => 'BPT\types\businessIntro',
16
        'business_location' => 'BPT\types\businessLocation',
17
        'business_opening_hours' => 'BPT\types\businessOpeningHours',
18
        'personal_chat' => 'BPT\types\chat',
19
        'array' => ['available_reactions' => 'BPT\types\reactionType'],
20
        'pinned_message' => 'BPT\types\message',
21
        'permissions' => 'BPT\types\chatPermissions',
22
        'location' => 'BPT\types\chatLocation',
23
    ];
24
25
    /**
26
     * Unique identifier for this chat. This number may have more than 32 significant bits and some programming
27
     * languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a
28
     * signed 64-bit integer or double-precision float type are safe for storing this identifier.
29
     */
30
    public null|int $id;
31
32
    /** Type of the chat, can be either “private”, “group”, “supergroup” or “channel” */
33
    public null|string $type;
34
35
    /** Optional. Title, for supergroups, channels and group chats */
36
    public null|string $title = null;
37
38
    /** Optional. Username, for private chats, supergroups and channels if available */
39
    public null|string $username = null;
40
41
    /** Optional. First name of the other party in a private chat */
42
    public null|string $first_name = null;
43
44
    /** Optional. Last name of the other party in a private chat */
45
    public null|string $last_name = null;
46
47
    /** Optional. True, if the supergroup chat is a forum (has topics enabled) */
48
    public null|bool $is_forum = null;
49
50
    /**
51
     * Identifier of the accent color for the chat name and backgrounds of the chat photo, reply header, and link
52
     * preview. See accent colors for more details.
53
     */
54
    public null|int $accent_color_id;
55
56
    /** The maximum number of reactions that can be set on a message in the chat */
57
    public null|int $max_reaction_count;
58
59
    /** Optional. Chat photo */
60
    public null|chatPhoto $photo = null;
61
62
    /**
63
     * Optional. If non-empty, the list of all active chat usernames = null; for private chats, supergroups and channels
64
     * @var string[]
65
     */
66
    public null|array $active_usernames = null;
67
68
    /** Optional. For private chats, the date of birth of the user */
69
    public null|birthdate $birthdate = null;
70
71
    /** Optional. For private chats with business accounts, the intro of the business */
72
    public null|businessIntro $business_intro = null;
73
74
    /** Optional. For private chats with business accounts, the location of the business */
75
    public null|businessLocation $business_location = null;
76
77
    /** Optional. For private chats with business accounts, the opening hours of the business */
78
    public null|businessOpeningHours $business_opening_hours = null;
79
80
    /** Optional. For private chats, the personal channel of the user */
81
    public null|chat $personal_chat = null;
82
83
    /**
84
     * Optional. List of available reactions allowed in the chat. If omitted, then all emoji reactions are allowed.
85
     * @var reactionType[]
86
     */
87
    public null|array $available_reactions = null;
88
89
    /**
90
     * Optional. Custom emoji identifier of the emoji chosen by the chat for the reply header and link preview
91
     * background
92
     */
93
    public null|string $background_custom_emoji_id = null;
94
95
    /**
96
     * Optional. Identifier of the accent color for the chat's profile background. See profile accent colors for more
97
     * details.
98
     */
99
    public null|int $profile_accent_color_id = null;
100
101
    /** Optional. Custom emoji identifier of the emoji chosen by the chat for its profile background */
102
    public null|string $profile_background_custom_emoji_id = null;
103
104
    /** Optional. Custom emoji identifier of the emoji status of the chat or the other party in a private chat */
105
    public null|string $emoji_status_custom_emoji_id = null;
106
107
    /**
108
     * Optional. Expiration date of the emoji status of the chat or the other party in a private chat, in Unix time,
109
     * if any
110
     */
111
    public null|int $emoji_status_expiration_date = null;
112
113
    /** Optional. Bio of the other party in a private chat */
114
    public null|string $bio = null;
115
116
    /**
117
     * Optional. True, if privacy settings of the other party in the private chat allows to use
118
     * tg://user?id=<user_id> links only in chats with the user
119
     */
120
    public null|bool $has_private_forwards = null;
121
122
    /**
123
     * Optional. True, if the privacy settings of the other party restrict sending voice and video note messages in
124
     * the private chat
125
     */
126
    public null|bool $has_restricted_voice_and_video_messages = null;
127
128
    /** Optional. True, if users need to join the supergroup before they can send messages */
129
    public null|bool $join_to_send_messages = null;
130
131
    /** Optional. True, if all users directly joining the supergroup need to be approved by supergroup administrators */
132
    public null|bool $join_by_request = null;
133
134
    /** Optional. Description, for groups, supergroups and channel chats */
135
    public null|string $description = null;
136
137
    /** Optional. Primary invite link, for groups, supergroups and channel chats */
138
    public null|string $invite_link = null;
139
140
    /** Optional. The most recent pinned message (by sending date) */
141
    public null|message $pinned_message = null;
142
143
    /** Optional. Default chat member permissions, for groups and supergroups */
144
    public null|chatPermissions $permissions = null;
145
146
    /**
147
     * Optional. For supergroups, the minimum allowed delay between consecutive messages sent by each unprivileged
148
     * user = null; in seconds
149
     */
150
    public null|int $slow_mode_delay = null;
151
152
    /**
153
     * Optional. For supergroups, the minimum number of boosts that a non-administrator user needs to add in order to
154
     * ignore slow mode and chat permissions
155
     */
156
    public null|int $unrestrict_boost_count = null;
157
158
    /** Optional. The time after which all messages sent to the chat will be automatically deleted = null; in seconds */
159
    public null|int $message_auto_delete_time = null;
160
161
    /**
162
     * Optional. True, if aggressive anti-spam checks are enabled in the supergroup. The field is only available to
163
     * chat administrators.
164
     */
165
    public null|bool $has_aggressive_anti_spam_enabled = null;
166
167
    /** Optional. True, if non-administrators can only get the list of bots and administrators in the chat */
168
    public null|bool $has_hidden_members = null;
169
170
    /** Optional. True, if messages from the chat can't be forwarded to other chats */
171
    public null|bool $has_protected_content = null;
172
173
    /** Optional. True, if new chat members will have access to old messages = null; available only to chat administrators */
174
    public null|bool $has_visible_history = null;
175
176
    /** Optional. For supergroups, name of the group sticker set */
177
    public null|string $sticker_set_name = null;
178
179
    /** Optional. True, if the bot can change the group sticker set */
180
    public null|bool $can_set_sticker_set = null;
181
182
    /**
183
     * Optional. For supergroups, the name of the group's custom emoji sticker set. Custom emoji from this set can be
184
     * used by all users and bots in the group.
185
     */
186
    public null|string $custom_emoji_sticker_set_name = null;
187
188
    /**
189
     * Optional. Unique identifier for the linked chat, i.e. the discussion group identifier for a channel and vice
190
     * versa = null; for supergroups and channel chats. This identifier may be greater than 32 bits and some programming
191
     * languages may have difficulty/silent defects in interpreting it. But it is smaller than 52 bits, so a signed
192
     * 64-bit integer or double-precision float type are safe for storing this identifier.
193
     */
194
    public null|int $linked_chat_id = null;
195
196
    /** Optional. For supergroups, the location to which the supergroup is connected */
197
    public null|chatLocation $location = null;
198
199
200
    public function __construct(stdClass|null $object = null) {
201
        if ($object != null) {
202
            parent::__construct($object, self::subs);
203
        }
204
    }
205
}
206