From d763ce940c0e344ba18958a81a896d446269723f Mon Sep 17 00:00:00 2001
From: alexandre433 <alexandreluisbarreto@gmail.com>
Date: Sun, 16 Mar 2025 17:20:30 +0000
Subject: [PATCH 1/2] Adds laravel/pint and pint config for psr12

---
 composer.json | 4 +++-
 pint.json     | 6 ++++++
 2 files changed, 9 insertions(+), 1 deletion(-)
 create mode 100644 pint.json

diff --git a/composer.json b/composer.json
index 5ddf1afb4..b9ef332f1 100644
--- a/composer.json
+++ b/composer.json
@@ -39,7 +39,8 @@
         "phpunit/phpunit": "^9.4.4",
         "davidcole1340/reactsh": "dev-master",
         "wyrihaximus/react-cache-redis": "^4.5",
-        "symfony/cache": "^5.4"
+        "symfony/cache": "^5.4",
+        "laravel/pint": "^1.21"
     },
     "autoload": {
         "files": [
@@ -58,6 +59,7 @@
         "ext-fileinfo": "For function mime_content_type()."
     },
     "scripts": {
+        "pint": ["./vendor/bin/pint --config ./pint.json ./src"],
         "cs": ["./vendor/bin/php-cs-fixer fix"],
         "unit": ["./vendor/bin/phpunit --testdox"],
         "coverage": ["XDEBUG_MODE=coverage ./vendor/bin/phpunit --coverage-html coverage --testdox"],
diff --git a/pint.json b/pint.json
new file mode 100644
index 000000000..49c5a7fb3
--- /dev/null
+++ b/pint.json
@@ -0,0 +1,6 @@
+{
+    "preset": "psr12",
+    "rules": {
+        "declare_strict_types": true
+    }
+}
\ No newline at end of file

From 19bdd85c9570f0f39ed826b9972d60206783f56f Mon Sep 17 00:00:00 2001
From: alexandre433 <alexandreluisbarreto@gmail.com>
Date: Sun, 16 Mar 2025 17:21:37 +0000
Subject: [PATCH 2/2] Changes on code regarding on laravel/pint config psr12 &
 declares strict types to 1 on all files in /src

---
 src/Discord/Builders/CommandAttributes.php    |  2 +
 src/Discord/Builders/CommandBuilder.php       |  2 +
 src/Discord/Builders/Components/ActionRow.php |  2 +
 src/Discord/Builders/Components/Button.php    |  4 +-
 .../Builders/Components/ChannelSelect.php     |  2 +
 src/Discord/Builders/Components/Component.php |  2 +
 .../Builders/Components/MentionableSelect.php |  2 +
 src/Discord/Builders/Components/Option.php    |  2 +
 .../Builders/Components/RoleSelect.php        |  2 +
 .../Builders/Components/SelectMenu.php        |  4 +-
 .../Builders/Components/StringSelect.php      |  2 +
 src/Discord/Builders/Components/TextInput.php |  2 +
 .../Builders/Components/UserSelect.php        |  2 +
 src/Discord/Builders/MessageBuilder.php       |  2 +
 src/Discord/CommandClient/Command.php         |  2 +
 src/Discord/Discord.php                       |  2 +
 src/Discord/DiscordCommandClient.php          |  2 +
 .../Exceptions/BufferTimedOutException.php    |  2 +
 .../Exceptions/DCANotFoundException.php       |  2 +
 .../Exceptions/FFmpegNotFoundException.php    |  2 +
 .../Exceptions/FileNotFoundException.php      |  2 +
 src/Discord/Exceptions/IntentException.php    |  2 +
 .../Exceptions/InvalidOverwriteException.php  |  2 +
 .../Exceptions/LibSodiumNotFoundException.php |  2 +
 .../Exceptions/OpusNotFoundException.php      |  2 +
 .../Exceptions/OutdatedDCAException.php       |  2 +
 .../Exceptions/PartRequestFailedException.php |  2 +
 src/Discord/Factory/Factory.php               |  2 +
 src/Discord/Helpers/BigInt.php                |  2 +
 src/Discord/Helpers/Buffer.php                |  8 ++--
 src/Discord/Helpers/CacheConfig.php           |  2 +
 src/Discord/Helpers/CacheWrapper.php          |  2 +
 src/Discord/Helpers/Collection.php            |  5 ++-
 src/Discord/Helpers/CollectionInterface.php   |  2 +
 src/Discord/Helpers/CollectionTrait.php       |  2 +
 src/Discord/Helpers/LegacyCacheWrapper.php    |  2 +
 src/Discord/Helpers/Multipart.php             |  3 ++
 src/Discord/Helpers/RegisteredCommand.php     |  2 +
 src/Discord/Parts/Channel/Attachment.php      |  2 +
 src/Discord/Parts/Channel/Channel.php         |  2 +
 src/Discord/Parts/Channel/Forum/Reaction.php  |  2 +
 src/Discord/Parts/Channel/Forum/Tag.php       |  2 +
 src/Discord/Parts/Channel/Invite.php          |  2 +
 src/Discord/Parts/Channel/Message.php         |  3 +-
 src/Discord/Parts/Channel/Overwrite.php       |  2 +
 src/Discord/Parts/Channel/Poll.php            |  3 +-
 src/Discord/Parts/Channel/Poll/Poll.php       |  2 +
 src/Discord/Parts/Channel/Poll/PollAnswer.php |  2 +
 .../Parts/Channel/Poll/PollAnswerCount.php    |  2 +
 src/Discord/Parts/Channel/Poll/PollMedia.php  |  2 +
 .../Parts/Channel/Poll/PollResults.php        |  2 +
 src/Discord/Parts/Channel/Reaction.php        |  4 +-
 src/Discord/Parts/Channel/StageInstance.php   |  2 +
 src/Discord/Parts/Channel/Webhook.php         |  2 +
 src/Discord/Parts/Embed/Author.php            |  2 +
 src/Discord/Parts/Embed/Embed.php             |  3 ++
 src/Discord/Parts/Embed/Field.php             |  2 +
 src/Discord/Parts/Embed/Footer.php            |  2 +
 src/Discord/Parts/Embed/Image.php             |  2 +
 src/Discord/Parts/Embed/Video.php             |  2 +
 src/Discord/Parts/Guild/AuditLog/AuditLog.php |  2 +
 src/Discord/Parts/Guild/AuditLog/Entry.php    |  2 +
 src/Discord/Parts/Guild/AuditLog/Options.php  |  2 +
 .../Parts/Guild/AutoModeration/Action.php     |  2 +
 .../Guild/AutoModeration/ActionMetadata.php   |  2 +
 .../Parts/Guild/AutoModeration/Rule.php       |  2 +
 src/Discord/Parts/Guild/Ban.php               |  2 +
 .../Parts/Guild/CommandPermissions.php        |  2 +
 src/Discord/Parts/Guild/Emoji.php             |  2 +
 src/Discord/Parts/Guild/Guild.php             |  2 +
 src/Discord/Parts/Guild/GuildTemplate.php     |  2 +
 src/Discord/Parts/Guild/Integration.php       |  2 +
 src/Discord/Parts/Guild/Role.php              |  2 +
 src/Discord/Parts/Guild/ScheduledEvent.php    |  2 +
 src/Discord/Parts/Guild/Sound.php             |  2 +
 src/Discord/Parts/Guild/Sticker.php           |  2 +
 src/Discord/Parts/Guild/WelcomeChannel.php    |  2 +
 src/Discord/Parts/Guild/WelcomeScreen.php     |  2 +
 src/Discord/Parts/Guild/Widget.php            |  2 +
 .../Parts/Interactions/Command/Choice.php     |  2 +
 .../Parts/Interactions/Command/Command.php    |  2 +
 .../Parts/Interactions/Command/Option.php     |  2 +
 .../Parts/Interactions/Command/Permission.php |  2 +
 .../Parts/Interactions/Interaction.php        | 30 ++++++++-------
 .../Parts/Interactions/Request/Component.php  |  2 +
 .../Interactions/Request/InteractionData.php  |  2 +
 .../Parts/Interactions/Request/Option.php     |  2 +
 .../Parts/Interactions/Request/Resolved.php   |  2 +
 src/Discord/Parts/OAuth/Application.php       |  2 +
 src/Discord/Parts/Part.php                    |  5 ++-
 src/Discord/Parts/PartInterface.php           |  2 +
 src/Discord/Parts/PartTrait.php               |  2 +
 .../Parts/Permissions/ChannelPermission.php   |  2 +
 src/Discord/Parts/Permissions/Permission.php  |  2 +
 .../Parts/Permissions/RolePermission.php      |  2 +
 src/Discord/Parts/Thread/Member.php           |  2 +
 src/Discord/Parts/Thread/Thread.php           |  2 +
 src/Discord/Parts/User/Activity.php           |  2 +
 src/Discord/Parts/User/Client.php             |  2 +
 src/Discord/Parts/User/Member.php             |  4 +-
 src/Discord/Parts/User/User.php               |  4 +-
 .../AutoModerationActionExecution.php         |  2 +
 .../Parts/WebSockets/MessageInteraction.php   |  2 +
 .../Parts/WebSockets/MessageReaction.php      |  2 +
 .../Parts/WebSockets/PresenceUpdate.php       |  2 +
 src/Discord/Parts/WebSockets/TypingStart.php  |  2 +
 .../Parts/WebSockets/VoiceServerUpdate.php    |  2 +
 .../Parts/WebSockets/VoiceStateUpdate.php     |  2 +
 src/Discord/Repository/AbstractRepository.php |  5 ++-
 .../AbstractRepositoryInterface.php           |  2 +
 .../Repository/AbstractRepositoryTrait.php    |  2 +
 .../Repository/Channel/InviteRepository.php   |  2 +
 .../Repository/Channel/MessageRepository.php  |  2 +
 .../Channel/OverwriteRepository.php           |  2 +
 .../Channel/PollAnswerRepository.php          |  2 +
 .../Repository/Channel/ReactionRepository.php |  2 +
 .../Channel/StageInstanceRepository.php       |  2 +
 .../Repository/Channel/ThreadRepository.php   |  2 +
 .../Channel/VoiceMemberRepository.php         |  2 +
 .../Channel/WebhookMessageRepository.php      |  2 +
 .../Repository/Channel/WebhookRepository.php  |  2 +
 src/Discord/Repository/EmojiRepository.php    | 12 ++++--
 .../Guild/AutoModerationRuleRepository.php    |  2 +
 .../Repository/Guild/BanRepository.php        |  2 +
 .../Repository/Guild/ChannelRepository.php    |  2 +
 .../Guild/CommandPermissionsRepository.php    |  2 +
 .../Repository/Guild/EmojiRepository.php      |  2 +
 .../Guild/GuildCommandRepository.php          |  2 +
 .../Guild/GuildTemplateRepository.php         |  2 +
 .../Guild/IntegrationRepository.php           |  2 +
 .../Repository/Guild/InviteRepository.php     |  2 +
 .../Repository/Guild/MemberRepository.php     |  2 +
 .../Repository/Guild/RoleRepository.php       |  2 +
 .../Guild/ScheduledEventRepository.php        |  2 +
 .../Repository/Guild/SoundRepository.php      | 12 ++++--
 .../Repository/Guild/StickerRepository.php    |  2 +
 src/Discord/Repository/GuildRepository.php    |  2 +
 .../Interaction/GlobalCommandRepository.php   |  2 +
 .../Repository/PrivateChannelRepository.php   |  2 +
 src/Discord/Repository/SoundRepository.php    |  3 +-
 .../Repository/Thread/MemberRepository.php    |  2 +
 src/Discord/Repository/UserRepository.php     |  2 +
 src/Discord/Voice/Buffer.php                  |  2 +
 src/Discord/Voice/OggPage.php                 |  2 +
 src/Discord/Voice/OggStream.php               |  2 +
 src/Discord/Voice/OpusHead.php                |  2 +
 src/Discord/Voice/OpusTags.php                |  2 +
 src/Discord/Voice/RecieveStream.php           |  2 +
 .../Voice/Speaking/UserSpeakingState.php      | 38 +++++++++++++++++++
 src/Discord/Voice/VoiceClient.php             |  2 +
 src/Discord/Voice/VoicePacket.php             |  6 ++-
 src/Discord/WebSockets/Event.php              |  2 +
 .../ApplicationCommandPermissionsUpdate.php   |  2 +
 .../Events/AutoModerationActionExecution.php  |  2 +
 .../Events/AutoModerationRuleCreate.php       |  2 +
 .../Events/AutoModerationRuleDelete.php       |  2 +
 .../Events/AutoModerationRuleUpdate.php       |  2 +
 .../WebSockets/Events/ChannelCreate.php       |  2 +
 .../WebSockets/Events/ChannelDelete.php       |  2 +
 .../WebSockets/Events/ChannelPinsUpdate.php   |  2 +
 .../WebSockets/Events/ChannelUpdate.php       |  2 +
 .../Events/GuildAuditLogEntryCreate.php       |  2 +
 src/Discord/WebSockets/Events/GuildBanAdd.php |  2 +
 .../WebSockets/Events/GuildBanRemove.php      |  2 +
 src/Discord/WebSockets/Events/GuildCreate.php |  2 +
 src/Discord/WebSockets/Events/GuildDelete.php |  2 +
 .../WebSockets/Events/GuildEmojisUpdate.php   |  2 +
 .../Events/GuildIntegrationsUpdate.php        |  2 +
 .../WebSockets/Events/GuildMemberAdd.php      |  2 +
 .../WebSockets/Events/GuildMemberRemove.php   |  2 +
 .../WebSockets/Events/GuildMemberUpdate.php   |  2 +
 .../WebSockets/Events/GuildRoleCreate.php     |  2 +
 .../WebSockets/Events/GuildRoleDelete.php     |  2 +
 .../WebSockets/Events/GuildRoleUpdate.php     |  2 +
 .../Events/GuildScheduledEventCreate.php      |  2 +
 .../Events/GuildScheduledEventDelete.php      |  2 +
 .../Events/GuildScheduledEventUpdate.php      |  2 +
 .../Events/GuildScheduledEventUserAdd.php     |  2 +
 .../Events/GuildScheduledEventUserRemove.php  |  2 +
 .../Events/GuildSoundboardSoundCreate.php     |  2 +
 .../Events/GuildSoundboardSoundDelete.php     |  2 +
 .../Events/GuildSoundboardSoundUpdate.php     |  2 +
 .../Events/GuildSoundboardSoundsUpdate.php    |  2 +
 .../WebSockets/Events/GuildStickersUpdate.php |  2 +
 src/Discord/WebSockets/Events/GuildUpdate.php |  2 +
 .../WebSockets/Events/IntegrationCreate.php   |  2 +
 .../WebSockets/Events/IntegrationDelete.php   |  2 +
 .../WebSockets/Events/IntegrationUpdate.php   |  2 +
 .../WebSockets/Events/InteractionCreate.php   |  2 +
 .../WebSockets/Events/InviteCreate.php        |  2 +
 .../WebSockets/Events/InviteDelete.php        |  2 +
 .../WebSockets/Events/MessageCreate.php       |  2 +
 .../WebSockets/Events/MessageDelete.php       |  2 +
 .../WebSockets/Events/MessageDeleteBulk.php   |  2 +
 .../WebSockets/Events/MessagePollVoteAdd.php  |  3 +-
 .../Events/MessagePollVoteRemove.php          |  3 +-
 .../WebSockets/Events/MessageReactionAdd.php  |  2 +
 .../Events/MessageReactionRemove.php          |  2 +
 .../Events/MessageReactionRemoveAll.php       |  2 +
 .../Events/MessageReactionRemoveEmoji.php     |  2 +
 .../WebSockets/Events/MessageUpdate.php       |  2 +
 .../WebSockets/Events/PresenceUpdate.php      |  2 +
 .../WebSockets/Events/SoundboardSounds.php    |  2 +
 .../WebSockets/Events/StageInstanceCreate.php |  2 +
 .../WebSockets/Events/StageInstanceDelete.php |  2 +
 .../WebSockets/Events/StageInstanceUpdate.php |  2 +
 .../WebSockets/Events/ThreadCreate.php        |  2 +
 .../WebSockets/Events/ThreadDelete.php        |  2 +
 .../WebSockets/Events/ThreadListSync.php      |  2 +
 .../WebSockets/Events/ThreadMemberUpdate.php  |  2 +
 .../WebSockets/Events/ThreadMembersUpdate.php |  2 +
 .../WebSockets/Events/ThreadUpdate.php        |  2 +
 src/Discord/WebSockets/Events/TypingStart.php |  2 +
 src/Discord/WebSockets/Events/UserUpdate.php  |  2 +
 .../WebSockets/Events/VoiceServerUpdate.php   |  2 +
 .../WebSockets/Events/VoiceStateUpdate.php    |  2 +
 .../WebSockets/Events/WebhooksUpdate.php      |  2 +
 src/Discord/WebSockets/Handlers.php           |  2 +
 src/Discord/WebSockets/Intents.php            |  2 +
 src/Discord/WebSockets/Op.php                 |  2 +
 src/Discord/functions.php                     |  6 ++-
 221 files changed, 521 insertions(+), 45 deletions(-)
 create mode 100644 src/Discord/Voice/Speaking/UserSpeakingState.php

diff --git a/src/Discord/Builders/CommandAttributes.php b/src/Discord/Builders/CommandAttributes.php
index 3f8ea5b80..f196bd66a 100644
--- a/src/Discord/Builders/CommandAttributes.php
+++ b/src/Discord/Builders/CommandAttributes.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/CommandBuilder.php b/src/Discord/Builders/CommandBuilder.php
index 418f98e30..29a721052 100644
--- a/src/Discord/Builders/CommandBuilder.php
+++ b/src/Discord/Builders/CommandBuilder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/ActionRow.php b/src/Discord/Builders/Components/ActionRow.php
index f987095a4..51049addd 100644
--- a/src/Discord/Builders/Components/ActionRow.php
+++ b/src/Discord/Builders/Components/ActionRow.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/Button.php b/src/Discord/Builders/Components/Button.php
index b3dbd05ad..4a0b118f6 100644
--- a/src/Discord/Builders/Components/Button.php
+++ b/src/Discord/Builders/Components/Button.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -335,7 +337,7 @@ public function setListener(?callable $callback, Discord $discord, bool $oneOff
         $this->listener = function (Interaction $interaction) use ($callback, $oneOff) {
             if ($interaction->data->component_type == Component::TYPE_BUTTON && $interaction->data->custom_id == $this->custom_id) {
                 $response = $callback($interaction);
-                $ack = static fn() => $interaction->isResponded() ?: $interaction->acknowledge();
+                $ack = static fn () => $interaction->isResponded() ?: $interaction->acknowledge();
 
                 if ($response instanceof PromiseInterface) {
                     $response->then($ack);
diff --git a/src/Discord/Builders/Components/ChannelSelect.php b/src/Discord/Builders/Components/ChannelSelect.php
index a04168f2d..fb08a4cf9 100644
--- a/src/Discord/Builders/Components/ChannelSelect.php
+++ b/src/Discord/Builders/Components/ChannelSelect.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/Component.php b/src/Discord/Builders/Components/Component.php
index 8cf911611..92fc9b7e2 100644
--- a/src/Discord/Builders/Components/Component.php
+++ b/src/Discord/Builders/Components/Component.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/MentionableSelect.php b/src/Discord/Builders/Components/MentionableSelect.php
index dd19da484..784a50546 100644
--- a/src/Discord/Builders/Components/MentionableSelect.php
+++ b/src/Discord/Builders/Components/MentionableSelect.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/Option.php b/src/Discord/Builders/Components/Option.php
index c2976b877..61198e664 100644
--- a/src/Discord/Builders/Components/Option.php
+++ b/src/Discord/Builders/Components/Option.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/RoleSelect.php b/src/Discord/Builders/Components/RoleSelect.php
index 7fa1421e2..8f866b85a 100644
--- a/src/Discord/Builders/Components/RoleSelect.php
+++ b/src/Discord/Builders/Components/RoleSelect.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/SelectMenu.php b/src/Discord/Builders/Components/SelectMenu.php
index 3f19e04c0..7c04cb35f 100644
--- a/src/Discord/Builders/Components/SelectMenu.php
+++ b/src/Discord/Builders/Components/SelectMenu.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -360,7 +362,7 @@ public function setListener(?callable $callback, Discord $discord, bool $oneOff
 
                     $response = $callback($interaction, $options);
                 }
-                $ack = static fn() => $interaction->isResponded() ?: $interaction->acknowledge();
+                $ack = static fn () => $interaction->isResponded() ?: $interaction->acknowledge();
 
                 if ($response instanceof PromiseInterface) {
                     $response->then($ack);
diff --git a/src/Discord/Builders/Components/StringSelect.php b/src/Discord/Builders/Components/StringSelect.php
index a550c730f..3a503e531 100644
--- a/src/Discord/Builders/Components/StringSelect.php
+++ b/src/Discord/Builders/Components/StringSelect.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/TextInput.php b/src/Discord/Builders/Components/TextInput.php
index 338a3007b..25aa4d90b 100644
--- a/src/Discord/Builders/Components/TextInput.php
+++ b/src/Discord/Builders/Components/TextInput.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/Components/UserSelect.php b/src/Discord/Builders/Components/UserSelect.php
index 85f4015b1..0865e6bea 100644
--- a/src/Discord/Builders/Components/UserSelect.php
+++ b/src/Discord/Builders/Components/UserSelect.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Builders/MessageBuilder.php b/src/Discord/Builders/MessageBuilder.php
index 4d3efe588..ba9599e8e 100644
--- a/src/Discord/Builders/MessageBuilder.php
+++ b/src/Discord/Builders/MessageBuilder.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/CommandClient/Command.php b/src/Discord/CommandClient/Command.php
index 3946fe431..17c9de468 100644
--- a/src/Discord/CommandClient/Command.php
+++ b/src/Discord/CommandClient/Command.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Discord.php b/src/Discord/Discord.php
index 6a1c3a79e..121431609 100644
--- a/src/Discord/Discord.php
+++ b/src/Discord/Discord.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/DiscordCommandClient.php b/src/Discord/DiscordCommandClient.php
index b7b753648..9996ac543 100644
--- a/src/Discord/DiscordCommandClient.php
+++ b/src/Discord/DiscordCommandClient.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/BufferTimedOutException.php b/src/Discord/Exceptions/BufferTimedOutException.php
index 74428e059..a591a1f64 100644
--- a/src/Discord/Exceptions/BufferTimedOutException.php
+++ b/src/Discord/Exceptions/BufferTimedOutException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/DCANotFoundException.php b/src/Discord/Exceptions/DCANotFoundException.php
index 5fd484c85..35da89ed6 100644
--- a/src/Discord/Exceptions/DCANotFoundException.php
+++ b/src/Discord/Exceptions/DCANotFoundException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/FFmpegNotFoundException.php b/src/Discord/Exceptions/FFmpegNotFoundException.php
index ac1280792..5d7e6a928 100644
--- a/src/Discord/Exceptions/FFmpegNotFoundException.php
+++ b/src/Discord/Exceptions/FFmpegNotFoundException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/FileNotFoundException.php b/src/Discord/Exceptions/FileNotFoundException.php
index a75a151df..434e00b26 100644
--- a/src/Discord/Exceptions/FileNotFoundException.php
+++ b/src/Discord/Exceptions/FileNotFoundException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/IntentException.php b/src/Discord/Exceptions/IntentException.php
index f1283251a..a1b59a479 100644
--- a/src/Discord/Exceptions/IntentException.php
+++ b/src/Discord/Exceptions/IntentException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/InvalidOverwriteException.php b/src/Discord/Exceptions/InvalidOverwriteException.php
index eb2d90215..5dca9b3b3 100644
--- a/src/Discord/Exceptions/InvalidOverwriteException.php
+++ b/src/Discord/Exceptions/InvalidOverwriteException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/LibSodiumNotFoundException.php b/src/Discord/Exceptions/LibSodiumNotFoundException.php
index 5fedbc7bd..e92b7d07d 100644
--- a/src/Discord/Exceptions/LibSodiumNotFoundException.php
+++ b/src/Discord/Exceptions/LibSodiumNotFoundException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/OpusNotFoundException.php b/src/Discord/Exceptions/OpusNotFoundException.php
index 7fff899dc..07c095932 100644
--- a/src/Discord/Exceptions/OpusNotFoundException.php
+++ b/src/Discord/Exceptions/OpusNotFoundException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/OutdatedDCAException.php b/src/Discord/Exceptions/OutdatedDCAException.php
index a86230140..4f771079e 100644
--- a/src/Discord/Exceptions/OutdatedDCAException.php
+++ b/src/Discord/Exceptions/OutdatedDCAException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Exceptions/PartRequestFailedException.php b/src/Discord/Exceptions/PartRequestFailedException.php
index a489cb4e3..6cc14729f 100644
--- a/src/Discord/Exceptions/PartRequestFailedException.php
+++ b/src/Discord/Exceptions/PartRequestFailedException.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Factory/Factory.php b/src/Discord/Factory/Factory.php
index d6c35cbfd..7e452b9dd 100644
--- a/src/Discord/Factory/Factory.php
+++ b/src/Discord/Factory/Factory.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/BigInt.php b/src/Discord/Helpers/BigInt.php
index 065e11744..3143caafa 100644
--- a/src/Discord/Helpers/BigInt.php
+++ b/src/Discord/Helpers/BigInt.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/Buffer.php b/src/Discord/Helpers/Buffer.php
index 71fff963e..f78990603 100644
--- a/src/Discord/Helpers/Buffer.php
+++ b/src/Discord/Helpers/Buffer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -51,7 +53,7 @@ class Buffer extends EventEmitter implements WritableStreamInterface
      * @var LoopInterface
      */
     private $loop;
-    
+
     public function __construct(LoopInterface $loop = null)
     {
         $this->loop = $loop;
@@ -136,11 +138,11 @@ public function read(int $length, ?string $format = null, ?int $timeout = -1): P
         return $deferred->promise()->then(function ($d) use ($format) {
             if ($format !== null) {
                 $unpacked = unpack($format, $d);
-                
+
                 if ($unpacked === false) {
                     throw new \RuntimeException('Error unpacking buffer.');
                 }
-                
+
                 return reset($unpacked);
             }
 
diff --git a/src/Discord/Helpers/CacheConfig.php b/src/Discord/Helpers/CacheConfig.php
index e77ba04c6..8f1bcdbd7 100644
--- a/src/Discord/Helpers/CacheConfig.php
+++ b/src/Discord/Helpers/CacheConfig.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/CacheWrapper.php b/src/Discord/Helpers/CacheWrapper.php
index 1d80ae4e2..68e6bd1ae 100644
--- a/src/Discord/Helpers/CacheWrapper.php
+++ b/src/Discord/Helpers/CacheWrapper.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/Collection.php b/src/Discord/Helpers/Collection.php
index d64f1ab2b..c6ef12ea4 100644
--- a/src/Discord/Helpers/Collection.php
+++ b/src/Discord/Helpers/Collection.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -19,6 +21,7 @@
  */
 class Collection implements CollectionInterface
 {
+    use CollectionTrait;
     /**
      * The collection discriminator.
      *
@@ -39,6 +42,4 @@ class Collection implements CollectionInterface
      * @var string
      */
     protected $class;
-
-    use CollectionTrait;
 }
diff --git a/src/Discord/Helpers/CollectionInterface.php b/src/Discord/Helpers/CollectionInterface.php
index b8885d17d..760e39a55 100644
--- a/src/Discord/Helpers/CollectionInterface.php
+++ b/src/Discord/Helpers/CollectionInterface.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/CollectionTrait.php b/src/Discord/Helpers/CollectionTrait.php
index 4c3e8c6a0..45a9e9ca6 100644
--- a/src/Discord/Helpers/CollectionTrait.php
+++ b/src/Discord/Helpers/CollectionTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/LegacyCacheWrapper.php b/src/Discord/Helpers/LegacyCacheWrapper.php
index 69b1b91ed..63b18ff74 100644
--- a/src/Discord/Helpers/LegacyCacheWrapper.php
+++ b/src/Discord/Helpers/LegacyCacheWrapper.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Helpers/Multipart.php b/src/Discord/Helpers/Multipart.php
index 9bd860d4d..e97fac0a4 100644
--- a/src/Discord/Helpers/Multipart.php
+++ b/src/Discord/Helpers/Multipart.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -10,6 +12,7 @@
  */
 
 namespace Discord\Helpers;
+
 use Stringable;
 
 /**
diff --git a/src/Discord/Helpers/RegisteredCommand.php b/src/Discord/Helpers/RegisteredCommand.php
index 2378addfd..bf17691f4 100644
--- a/src/Discord/Helpers/RegisteredCommand.php
+++ b/src/Discord/Helpers/RegisteredCommand.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Attachment.php b/src/Discord/Parts/Channel/Attachment.php
index bd2342d40..858fb085c 100644
--- a/src/Discord/Parts/Channel/Attachment.php
+++ b/src/Discord/Parts/Channel/Attachment.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Channel.php b/src/Discord/Parts/Channel/Channel.php
index fb00e49b5..67770b1bf 100644
--- a/src/Discord/Parts/Channel/Channel.php
+++ b/src/Discord/Parts/Channel/Channel.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Forum/Reaction.php b/src/Discord/Parts/Channel/Forum/Reaction.php
index 43f06ea13..d0825d01d 100644
--- a/src/Discord/Parts/Channel/Forum/Reaction.php
+++ b/src/Discord/Parts/Channel/Forum/Reaction.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Forum/Tag.php b/src/Discord/Parts/Channel/Forum/Tag.php
index df4ed7ed3..39caccb00 100644
--- a/src/Discord/Parts/Channel/Forum/Tag.php
+++ b/src/Discord/Parts/Channel/Forum/Tag.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Invite.php b/src/Discord/Parts/Channel/Invite.php
index 81a609edf..6e3dbe67f 100644
--- a/src/Discord/Parts/Channel/Invite.php
+++ b/src/Discord/Parts/Channel/Invite.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Message.php b/src/Discord/Parts/Channel/Message.php
index 2de6d77c6..d1425df3c 100644
--- a/src/Discord/Parts/Channel/Message.php
+++ b/src/Discord/Parts/Channel/Message.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -15,7 +17,6 @@
 use Discord\Builders\MessageBuilder;
 use Discord\Helpers\Collection;
 use Discord\Helpers\CollectionInterface;
-use Discord\Parts\Channel\Poll;
 use Discord\Parts\Embed\Embed;
 use Discord\Parts\Guild\Emoji;
 use Discord\Parts\Guild\Role;
diff --git a/src/Discord/Parts/Channel/Overwrite.php b/src/Discord/Parts/Channel/Overwrite.php
index daf139894..2c26781a0 100644
--- a/src/Discord/Parts/Channel/Overwrite.php
+++ b/src/Discord/Parts/Channel/Overwrite.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Poll.php b/src/Discord/Parts/Channel/Poll.php
index 6420e5242..fc4f5eb5e 100644
--- a/src/Discord/Parts/Channel/Poll.php
+++ b/src/Discord/Parts/Channel/Poll.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -12,7 +14,6 @@
 namespace Discord\Parts\Channel;
 
 use Carbon\Carbon;
-use Discord\Helpers\Collection;
 use Discord\Http\Endpoint;
 use Discord\Parts\Channel\Poll\PollAnswer;
 use Discord\Parts\Channel\Poll\PollMedia;
diff --git a/src/Discord/Parts/Channel/Poll/Poll.php b/src/Discord/Parts/Channel/Poll/Poll.php
index 2523f268b..f4e3ab2a1 100644
--- a/src/Discord/Parts/Channel/Poll/Poll.php
+++ b/src/Discord/Parts/Channel/Poll/Poll.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Poll/PollAnswer.php b/src/Discord/Parts/Channel/Poll/PollAnswer.php
index 2bfc021a5..980978c6b 100644
--- a/src/Discord/Parts/Channel/Poll/PollAnswer.php
+++ b/src/Discord/Parts/Channel/Poll/PollAnswer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Poll/PollAnswerCount.php b/src/Discord/Parts/Channel/Poll/PollAnswerCount.php
index 18e1558f0..29c941a9c 100644
--- a/src/Discord/Parts/Channel/Poll/PollAnswerCount.php
+++ b/src/Discord/Parts/Channel/Poll/PollAnswerCount.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Poll/PollMedia.php b/src/Discord/Parts/Channel/Poll/PollMedia.php
index fa8e59662..be9446124 100644
--- a/src/Discord/Parts/Channel/Poll/PollMedia.php
+++ b/src/Discord/Parts/Channel/Poll/PollMedia.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Poll/PollResults.php b/src/Discord/Parts/Channel/Poll/PollResults.php
index 166adfba5..aa0d167d0 100644
--- a/src/Discord/Parts/Channel/Poll/PollResults.php
+++ b/src/Discord/Parts/Channel/Poll/PollResults.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Reaction.php b/src/Discord/Parts/Channel/Reaction.php
index e1a13ff5a..329d7e95e 100644
--- a/src/Discord/Parts/Channel/Reaction.php
+++ b/src/Discord/Parts/Channel/Reaction.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -96,7 +98,7 @@ public function fetch(): PromiseInterface
     protected function setIdAttribute(string $value): void
     {
         if (! isset($this->attributes['emoji'])) {
-            $this->attributes['emoji'] = new stdClass;
+            $this->attributes['emoji'] = new stdClass();
         }
 
         $colonDelimiter = explode(':', $value);
diff --git a/src/Discord/Parts/Channel/StageInstance.php b/src/Discord/Parts/Channel/StageInstance.php
index 981179b11..e555cb997 100644
--- a/src/Discord/Parts/Channel/StageInstance.php
+++ b/src/Discord/Parts/Channel/StageInstance.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Channel/Webhook.php b/src/Discord/Parts/Channel/Webhook.php
index 5ec937eb6..034fd419a 100644
--- a/src/Discord/Parts/Channel/Webhook.php
+++ b/src/Discord/Parts/Channel/Webhook.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Embed/Author.php b/src/Discord/Parts/Embed/Author.php
index 460476811..91b35d3bc 100644
--- a/src/Discord/Parts/Embed/Author.php
+++ b/src/Discord/Parts/Embed/Author.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Embed/Embed.php b/src/Discord/Parts/Embed/Embed.php
index a25f72a12..6207840c9 100644
--- a/src/Discord/Parts/Embed/Embed.php
+++ b/src/Discord/Parts/Embed/Embed.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -16,6 +18,7 @@
 use Discord\Helpers\CollectionInterface;
 use Discord\Parts\Channel\Attachment;
 use Discord\Parts\Part;
+
 use function Discord\poly_strlen;
 
 /**
diff --git a/src/Discord/Parts/Embed/Field.php b/src/Discord/Parts/Embed/Field.php
index f6715969d..5a20806a9 100644
--- a/src/Discord/Parts/Embed/Field.php
+++ b/src/Discord/Parts/Embed/Field.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Embed/Footer.php b/src/Discord/Parts/Embed/Footer.php
index b87ea9bca..6b368e1b1 100644
--- a/src/Discord/Parts/Embed/Footer.php
+++ b/src/Discord/Parts/Embed/Footer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Embed/Image.php b/src/Discord/Parts/Embed/Image.php
index 648c119a5..803b01c9d 100644
--- a/src/Discord/Parts/Embed/Image.php
+++ b/src/Discord/Parts/Embed/Image.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Embed/Video.php b/src/Discord/Parts/Embed/Video.php
index b6bd99a36..f5a147e0d 100644
--- a/src/Discord/Parts/Embed/Video.php
+++ b/src/Discord/Parts/Embed/Video.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AuditLog/AuditLog.php b/src/Discord/Parts/Guild/AuditLog/AuditLog.php
index 8affa6420..b49180802 100644
--- a/src/Discord/Parts/Guild/AuditLog/AuditLog.php
+++ b/src/Discord/Parts/Guild/AuditLog/AuditLog.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AuditLog/Entry.php b/src/Discord/Parts/Guild/AuditLog/Entry.php
index 1fc32d39d..a79a67c59 100644
--- a/src/Discord/Parts/Guild/AuditLog/Entry.php
+++ b/src/Discord/Parts/Guild/AuditLog/Entry.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AuditLog/Options.php b/src/Discord/Parts/Guild/AuditLog/Options.php
index 7532ed61e..c4f4d136e 100644
--- a/src/Discord/Parts/Guild/AuditLog/Options.php
+++ b/src/Discord/Parts/Guild/AuditLog/Options.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AutoModeration/Action.php b/src/Discord/Parts/Guild/AutoModeration/Action.php
index 9e982ef66..b8f6de3fc 100644
--- a/src/Discord/Parts/Guild/AutoModeration/Action.php
+++ b/src/Discord/Parts/Guild/AutoModeration/Action.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AutoModeration/ActionMetadata.php b/src/Discord/Parts/Guild/AutoModeration/ActionMetadata.php
index c2d249d69..048c3a6fd 100644
--- a/src/Discord/Parts/Guild/AutoModeration/ActionMetadata.php
+++ b/src/Discord/Parts/Guild/AutoModeration/ActionMetadata.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/AutoModeration/Rule.php b/src/Discord/Parts/Guild/AutoModeration/Rule.php
index 97fb581c6..61e3ba9cb 100644
--- a/src/Discord/Parts/Guild/AutoModeration/Rule.php
+++ b/src/Discord/Parts/Guild/AutoModeration/Rule.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Ban.php b/src/Discord/Parts/Guild/Ban.php
index 44bbf9a91..494e3c6c0 100644
--- a/src/Discord/Parts/Guild/Ban.php
+++ b/src/Discord/Parts/Guild/Ban.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/CommandPermissions.php b/src/Discord/Parts/Guild/CommandPermissions.php
index 9f498edd2..e082765fa 100644
--- a/src/Discord/Parts/Guild/CommandPermissions.php
+++ b/src/Discord/Parts/Guild/CommandPermissions.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Emoji.php b/src/Discord/Parts/Guild/Emoji.php
index 7c5aea2e0..f5236bf07 100644
--- a/src/Discord/Parts/Guild/Emoji.php
+++ b/src/Discord/Parts/Guild/Emoji.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Guild.php b/src/Discord/Parts/Guild/Guild.php
index 61fd79384..abbbbbe0f 100644
--- a/src/Discord/Parts/Guild/Guild.php
+++ b/src/Discord/Parts/Guild/Guild.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/GuildTemplate.php b/src/Discord/Parts/Guild/GuildTemplate.php
index 311edb97b..4abaca9e1 100644
--- a/src/Discord/Parts/Guild/GuildTemplate.php
+++ b/src/Discord/Parts/Guild/GuildTemplate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Integration.php b/src/Discord/Parts/Guild/Integration.php
index 616c29f3a..7b8dfa8e6 100644
--- a/src/Discord/Parts/Guild/Integration.php
+++ b/src/Discord/Parts/Guild/Integration.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Role.php b/src/Discord/Parts/Guild/Role.php
index 9e3769508..4a07dff0f 100644
--- a/src/Discord/Parts/Guild/Role.php
+++ b/src/Discord/Parts/Guild/Role.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/ScheduledEvent.php b/src/Discord/Parts/Guild/ScheduledEvent.php
index 49b571776..11b2694a6 100644
--- a/src/Discord/Parts/Guild/ScheduledEvent.php
+++ b/src/Discord/Parts/Guild/ScheduledEvent.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Sound.php b/src/Discord/Parts/Guild/Sound.php
index e7ffbbb77..a2fcea4e3 100644
--- a/src/Discord/Parts/Guild/Sound.php
+++ b/src/Discord/Parts/Guild/Sound.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Sticker.php b/src/Discord/Parts/Guild/Sticker.php
index 049daf1a0..50a99992d 100644
--- a/src/Discord/Parts/Guild/Sticker.php
+++ b/src/Discord/Parts/Guild/Sticker.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/WelcomeChannel.php b/src/Discord/Parts/Guild/WelcomeChannel.php
index e5384cae3..3bdad3e99 100644
--- a/src/Discord/Parts/Guild/WelcomeChannel.php
+++ b/src/Discord/Parts/Guild/WelcomeChannel.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/WelcomeScreen.php b/src/Discord/Parts/Guild/WelcomeScreen.php
index 75042b03a..b4d7b20b2 100644
--- a/src/Discord/Parts/Guild/WelcomeScreen.php
+++ b/src/Discord/Parts/Guild/WelcomeScreen.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Guild/Widget.php b/src/Discord/Parts/Guild/Widget.php
index d14a25f7f..ac85a1767 100644
--- a/src/Discord/Parts/Guild/Widget.php
+++ b/src/Discord/Parts/Guild/Widget.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Command/Choice.php b/src/Discord/Parts/Interactions/Command/Choice.php
index 660acfe7b..64fb34a0d 100644
--- a/src/Discord/Parts/Interactions/Command/Choice.php
+++ b/src/Discord/Parts/Interactions/Command/Choice.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Command/Command.php b/src/Discord/Parts/Interactions/Command/Command.php
index dfb5dcf08..db2f7902e 100644
--- a/src/Discord/Parts/Interactions/Command/Command.php
+++ b/src/Discord/Parts/Interactions/Command/Command.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Command/Option.php b/src/Discord/Parts/Interactions/Command/Option.php
index fa400d129..3e24b002d 100644
--- a/src/Discord/Parts/Interactions/Command/Option.php
+++ b/src/Discord/Parts/Interactions/Command/Option.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Command/Permission.php b/src/Discord/Parts/Interactions/Command/Permission.php
index 1313a78da..1a8ee63df 100644
--- a/src/Discord/Parts/Interactions/Command/Permission.php
+++ b/src/Discord/Parts/Interactions/Command/Permission.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Interaction.php b/src/Discord/Parts/Interactions/Interaction.php
index f253b7971..ffe49c80a 100644
--- a/src/Discord/Parts/Interactions/Interaction.php
+++ b/src/Discord/Parts/Interactions/Interaction.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -87,20 +89,20 @@ class Interaction extends Part
      */
     protected $responded = false;
 
-    const TYPE_PING = 1;
-    const TYPE_APPLICATION_COMMAND = 2;
-    const TYPE_MESSAGE_COMPONENT = 3;
-    const TYPE_APPLICATION_COMMAND_AUTOCOMPLETE = 4;
-    const TYPE_MODAL_SUBMIT = 5;
-
-    const RESPONSE_TYPE_PONG = 1;
-    const RESPONSE_TYPE_CHANNEL_MESSAGE_WITH_SOURCE = 4;
-    const RESPONSE_TYPE_DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE = 5;
-    const RESPONSE_TYPE_DEFERRED_UPDATE_MESSAGE = 6;
-    const RESPONSE_TYPE_UPDATE_MESSAGE = 7;
-    const RESPONSE_TYPE_APPLICATION_COMMAND_AUTOCOMPLETE_RESULT = 8;
-    const RESPONSE_TYPE_MODAL = 9;
-    const RESPONSE_TYPE_PREMIUM_REQUIRED = 10;
+    public const TYPE_PING = 1;
+    public const TYPE_APPLICATION_COMMAND = 2;
+    public const TYPE_MESSAGE_COMPONENT = 3;
+    public const TYPE_APPLICATION_COMMAND_AUTOCOMPLETE = 4;
+    public const TYPE_MODAL_SUBMIT = 5;
+
+    public const RESPONSE_TYPE_PONG = 1;
+    public const RESPONSE_TYPE_CHANNEL_MESSAGE_WITH_SOURCE = 4;
+    public const RESPONSE_TYPE_DEFERRED_CHANNEL_MESSAGE_WITH_SOURCE = 5;
+    public const RESPONSE_TYPE_DEFERRED_UPDATE_MESSAGE = 6;
+    public const RESPONSE_TYPE_UPDATE_MESSAGE = 7;
+    public const RESPONSE_TYPE_APPLICATION_COMMAND_AUTOCOMPLETE_RESULT = 8;
+    public const RESPONSE_TYPE_MODAL = 9;
+    public const RESPONSE_TYPE_PREMIUM_REQUIRED = 10;
 
     /**
      * Returns true if this interaction has been internally responded.
diff --git a/src/Discord/Parts/Interactions/Request/Component.php b/src/Discord/Parts/Interactions/Request/Component.php
index ea343654c..af352fb5c 100644
--- a/src/Discord/Parts/Interactions/Request/Component.php
+++ b/src/Discord/Parts/Interactions/Request/Component.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Request/InteractionData.php b/src/Discord/Parts/Interactions/Request/InteractionData.php
index f883ac8b6..296e624c5 100644
--- a/src/Discord/Parts/Interactions/Request/InteractionData.php
+++ b/src/Discord/Parts/Interactions/Request/InteractionData.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Request/Option.php b/src/Discord/Parts/Interactions/Request/Option.php
index 512469062..e357a7332 100644
--- a/src/Discord/Parts/Interactions/Request/Option.php
+++ b/src/Discord/Parts/Interactions/Request/Option.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Interactions/Request/Resolved.php b/src/Discord/Parts/Interactions/Request/Resolved.php
index 8080c9dc9..e1ece954d 100644
--- a/src/Discord/Parts/Interactions/Request/Resolved.php
+++ b/src/Discord/Parts/Interactions/Request/Resolved.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/OAuth/Application.php b/src/Discord/Parts/OAuth/Application.php
index 3ef6120a2..85d4f1939 100644
--- a/src/Discord/Parts/OAuth/Application.php
+++ b/src/Discord/Parts/OAuth/Application.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Part.php b/src/Discord/Parts/Part.php
index 195b59573..171c6b484 100644
--- a/src/Discord/Parts/Part.php
+++ b/src/Discord/Parts/Part.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -25,6 +27,7 @@
  */
 abstract class Part implements PartInterface, ArrayAccess, JsonSerializable
 {
+    use PartTrait;
     /**
      * The HTTP client.
      *
@@ -104,6 +107,4 @@ abstract class Part implements PartInterface, ArrayAccess, JsonSerializable
      * @var bool Whether the part has been created.
      */
     public $created = false;
-
-    use PartTrait;
 }
diff --git a/src/Discord/Parts/PartInterface.php b/src/Discord/Parts/PartInterface.php
index 374be6fc8..24d7e6909 100644
--- a/src/Discord/Parts/PartInterface.php
+++ b/src/Discord/Parts/PartInterface.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/PartTrait.php b/src/Discord/Parts/PartTrait.php
index 699b87148..999b00740 100644
--- a/src/Discord/Parts/PartTrait.php
+++ b/src/Discord/Parts/PartTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Permissions/ChannelPermission.php b/src/Discord/Parts/Permissions/ChannelPermission.php
index 2d715ebf0..bf522d887 100644
--- a/src/Discord/Parts/Permissions/ChannelPermission.php
+++ b/src/Discord/Parts/Permissions/ChannelPermission.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Permissions/Permission.php b/src/Discord/Parts/Permissions/Permission.php
index 28a2de349..23a266f53 100644
--- a/src/Discord/Parts/Permissions/Permission.php
+++ b/src/Discord/Parts/Permissions/Permission.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Permissions/RolePermission.php b/src/Discord/Parts/Permissions/RolePermission.php
index 0e0aaf3fb..1d8f863fe 100644
--- a/src/Discord/Parts/Permissions/RolePermission.php
+++ b/src/Discord/Parts/Permissions/RolePermission.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Thread/Member.php b/src/Discord/Parts/Thread/Member.php
index f6f9faaf5..f45099248 100644
--- a/src/Discord/Parts/Thread/Member.php
+++ b/src/Discord/Parts/Thread/Member.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/Thread/Thread.php b/src/Discord/Parts/Thread/Thread.php
index 044d5e605..5b6aa7cc0 100644
--- a/src/Discord/Parts/Thread/Thread.php
+++ b/src/Discord/Parts/Thread/Thread.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/User/Activity.php b/src/Discord/Parts/User/Activity.php
index ad9022379..302aa5440 100644
--- a/src/Discord/Parts/User/Activity.php
+++ b/src/Discord/Parts/User/Activity.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/User/Client.php b/src/Discord/Parts/User/Client.php
index bd56b9545..953859fed 100644
--- a/src/Discord/Parts/User/Client.php
+++ b/src/Discord/Parts/User/Client.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/User/Member.php b/src/Discord/Parts/User/Member.php
index 8b2779d6a..c2fca65ff 100644
--- a/src/Discord/Parts/User/Member.php
+++ b/src/Discord/Parts/User/Member.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -30,8 +32,8 @@
 use Discord\Parts\Thread\Thread;
 use Discord\Parts\WebSockets\PresenceUpdate;
 use React\Promise\PromiseInterface;
-
 use Stringable;
+
 use function React\Promise\reject;
 
 /**
diff --git a/src/Discord/Parts/User/User.php b/src/Discord/Parts/User/User.php
index c06103e0a..d41ed4827 100644
--- a/src/Discord/Parts/User/User.php
+++ b/src/Discord/Parts/User/User.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -18,8 +20,8 @@
 use Discord\Parts\Part;
 use Discord\Parts\Channel\Message;
 use React\Promise\PromiseInterface;
-
 use Stringable;
+
 use function React\Promise\resolve;
 
 /**
diff --git a/src/Discord/Parts/WebSockets/AutoModerationActionExecution.php b/src/Discord/Parts/WebSockets/AutoModerationActionExecution.php
index 38fa7f557..c1c763078 100644
--- a/src/Discord/Parts/WebSockets/AutoModerationActionExecution.php
+++ b/src/Discord/Parts/WebSockets/AutoModerationActionExecution.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/MessageInteraction.php b/src/Discord/Parts/WebSockets/MessageInteraction.php
index e5eed2c75..175006a6e 100644
--- a/src/Discord/Parts/WebSockets/MessageInteraction.php
+++ b/src/Discord/Parts/WebSockets/MessageInteraction.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/MessageReaction.php b/src/Discord/Parts/WebSockets/MessageReaction.php
index d21173b2b..f4248da76 100644
--- a/src/Discord/Parts/WebSockets/MessageReaction.php
+++ b/src/Discord/Parts/WebSockets/MessageReaction.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/PresenceUpdate.php b/src/Discord/Parts/WebSockets/PresenceUpdate.php
index 357958d40..242bd757b 100644
--- a/src/Discord/Parts/WebSockets/PresenceUpdate.php
+++ b/src/Discord/Parts/WebSockets/PresenceUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/TypingStart.php b/src/Discord/Parts/WebSockets/TypingStart.php
index bb8f0d2d6..d4819f071 100644
--- a/src/Discord/Parts/WebSockets/TypingStart.php
+++ b/src/Discord/Parts/WebSockets/TypingStart.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/VoiceServerUpdate.php b/src/Discord/Parts/WebSockets/VoiceServerUpdate.php
index ee6cbc043..ecd519c03 100644
--- a/src/Discord/Parts/WebSockets/VoiceServerUpdate.php
+++ b/src/Discord/Parts/WebSockets/VoiceServerUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Parts/WebSockets/VoiceStateUpdate.php b/src/Discord/Parts/WebSockets/VoiceStateUpdate.php
index a52653494..7e8ae0440 100644
--- a/src/Discord/Parts/WebSockets/VoiceStateUpdate.php
+++ b/src/Discord/Parts/WebSockets/VoiceStateUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/AbstractRepository.php b/src/Discord/Repository/AbstractRepository.php
index 8cf6fa9ca..cafe216d1 100755
--- a/src/Discord/Repository/AbstractRepository.php
+++ b/src/Discord/Repository/AbstractRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -26,6 +28,7 @@
  */
 abstract class AbstractRepository extends Collection implements AbstractRepositoryInterface
 {
+    use AbstractRepositoryTrait;
     /**
      * The collection discriminator.
      *
@@ -46,6 +49,4 @@ abstract class AbstractRepository extends Collection implements AbstractReposito
      * @var string
      */
     protected $class;
-
-    use AbstractRepositoryTrait;
 }
diff --git a/src/Discord/Repository/AbstractRepositoryInterface.php b/src/Discord/Repository/AbstractRepositoryInterface.php
index 15bf94176..b0b54c520 100644
--- a/src/Discord/Repository/AbstractRepositoryInterface.php
+++ b/src/Discord/Repository/AbstractRepositoryInterface.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/AbstractRepositoryTrait.php b/src/Discord/Repository/AbstractRepositoryTrait.php
index 093ee2400..ff7db17fa 100644
--- a/src/Discord/Repository/AbstractRepositoryTrait.php
+++ b/src/Discord/Repository/AbstractRepositoryTrait.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/InviteRepository.php b/src/Discord/Repository/Channel/InviteRepository.php
index eafc52bd4..95e04fbd5 100755
--- a/src/Discord/Repository/Channel/InviteRepository.php
+++ b/src/Discord/Repository/Channel/InviteRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/MessageRepository.php b/src/Discord/Repository/Channel/MessageRepository.php
index a42d13447..5044eaca2 100755
--- a/src/Discord/Repository/Channel/MessageRepository.php
+++ b/src/Discord/Repository/Channel/MessageRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/OverwriteRepository.php b/src/Discord/Repository/Channel/OverwriteRepository.php
index 75c55a15b..6d972a772 100644
--- a/src/Discord/Repository/Channel/OverwriteRepository.php
+++ b/src/Discord/Repository/Channel/OverwriteRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/PollAnswerRepository.php b/src/Discord/Repository/Channel/PollAnswerRepository.php
index 6bcb69163..3d4440a25 100644
--- a/src/Discord/Repository/Channel/PollAnswerRepository.php
+++ b/src/Discord/Repository/Channel/PollAnswerRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/ReactionRepository.php b/src/Discord/Repository/Channel/ReactionRepository.php
index d6f231739..6d25b41e9 100644
--- a/src/Discord/Repository/Channel/ReactionRepository.php
+++ b/src/Discord/Repository/Channel/ReactionRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/StageInstanceRepository.php b/src/Discord/Repository/Channel/StageInstanceRepository.php
index 2fda38e01..d2e620b88 100644
--- a/src/Discord/Repository/Channel/StageInstanceRepository.php
+++ b/src/Discord/Repository/Channel/StageInstanceRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/ThreadRepository.php b/src/Discord/Repository/Channel/ThreadRepository.php
index 399d0bee8..6b40ae939 100644
--- a/src/Discord/Repository/Channel/ThreadRepository.php
+++ b/src/Discord/Repository/Channel/ThreadRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/VoiceMemberRepository.php b/src/Discord/Repository/Channel/VoiceMemberRepository.php
index d9616757e..ca6a36f6f 100644
--- a/src/Discord/Repository/Channel/VoiceMemberRepository.php
+++ b/src/Discord/Repository/Channel/VoiceMemberRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/WebhookMessageRepository.php b/src/Discord/Repository/Channel/WebhookMessageRepository.php
index 0ba1ca8f0..6c65fcdc1 100644
--- a/src/Discord/Repository/Channel/WebhookMessageRepository.php
+++ b/src/Discord/Repository/Channel/WebhookMessageRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Channel/WebhookRepository.php b/src/Discord/Repository/Channel/WebhookRepository.php
index 411aa9350..585ed1956 100644
--- a/src/Discord/Repository/Channel/WebhookRepository.php
+++ b/src/Discord/Repository/Channel/WebhookRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/EmojiRepository.php b/src/Discord/Repository/EmojiRepository.php
index 6e024748e..0f71e3070 100644
--- a/src/Discord/Repository/EmojiRepository.php
+++ b/src/Discord/Repository/EmojiRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -67,10 +69,12 @@ public function __construct(Discord $discord, array $vars = [])
      */
     protected function cacheFreshen($response): PromiseInterface
     {
-        foreach ($response as $value) foreach ($value as $value) {
-            $value = array_merge($this->vars, (array) $value);
-            $part = $this->factory->create($this->class, $value, true);
-            $items[$part->{$this->discrim}] = $part;
+        foreach ($response as $value) {
+            foreach ($value as $value) {
+                $value = array_merge($this->vars, (array) $value);
+                $part = $this->factory->create($this->class, $value, true);
+                $items[$part->{$this->discrim}] = $part;
+            }
         }
 
         if (empty($items)) {
diff --git a/src/Discord/Repository/Guild/AutoModerationRuleRepository.php b/src/Discord/Repository/Guild/AutoModerationRuleRepository.php
index 450f9cd36..ffa9ad6b0 100644
--- a/src/Discord/Repository/Guild/AutoModerationRuleRepository.php
+++ b/src/Discord/Repository/Guild/AutoModerationRuleRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/BanRepository.php b/src/Discord/Repository/Guild/BanRepository.php
index cef2afdbc..f7cf6dc22 100644
--- a/src/Discord/Repository/Guild/BanRepository.php
+++ b/src/Discord/Repository/Guild/BanRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/ChannelRepository.php b/src/Discord/Repository/Guild/ChannelRepository.php
index 39fbc9856..29dd652e8 100755
--- a/src/Discord/Repository/Guild/ChannelRepository.php
+++ b/src/Discord/Repository/Guild/ChannelRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/CommandPermissionsRepository.php b/src/Discord/Repository/Guild/CommandPermissionsRepository.php
index 74cac7821..f54f2de75 100644
--- a/src/Discord/Repository/Guild/CommandPermissionsRepository.php
+++ b/src/Discord/Repository/Guild/CommandPermissionsRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/EmojiRepository.php b/src/Discord/Repository/Guild/EmojiRepository.php
index c09bb5777..8d3429137 100644
--- a/src/Discord/Repository/Guild/EmojiRepository.php
+++ b/src/Discord/Repository/Guild/EmojiRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/GuildCommandRepository.php b/src/Discord/Repository/Guild/GuildCommandRepository.php
index 7ea4059eb..dbbec1473 100644
--- a/src/Discord/Repository/Guild/GuildCommandRepository.php
+++ b/src/Discord/Repository/Guild/GuildCommandRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/GuildTemplateRepository.php b/src/Discord/Repository/Guild/GuildTemplateRepository.php
index 4a0952264..5abb2a1eb 100644
--- a/src/Discord/Repository/Guild/GuildTemplateRepository.php
+++ b/src/Discord/Repository/Guild/GuildTemplateRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/IntegrationRepository.php b/src/Discord/Repository/Guild/IntegrationRepository.php
index 0bd6cbfd7..f8bd02ba4 100644
--- a/src/Discord/Repository/Guild/IntegrationRepository.php
+++ b/src/Discord/Repository/Guild/IntegrationRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/InviteRepository.php b/src/Discord/Repository/Guild/InviteRepository.php
index 54ae77408..2b5c0f0c7 100755
--- a/src/Discord/Repository/Guild/InviteRepository.php
+++ b/src/Discord/Repository/Guild/InviteRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/MemberRepository.php b/src/Discord/Repository/Guild/MemberRepository.php
index 85d2435b6..463cdf329 100755
--- a/src/Discord/Repository/Guild/MemberRepository.php
+++ b/src/Discord/Repository/Guild/MemberRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/RoleRepository.php b/src/Discord/Repository/Guild/RoleRepository.php
index e25592bc7..07ec4393f 100755
--- a/src/Discord/Repository/Guild/RoleRepository.php
+++ b/src/Discord/Repository/Guild/RoleRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/ScheduledEventRepository.php b/src/Discord/Repository/Guild/ScheduledEventRepository.php
index cfd4c1f8d..4a596fe26 100644
--- a/src/Discord/Repository/Guild/ScheduledEventRepository.php
+++ b/src/Discord/Repository/Guild/ScheduledEventRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Guild/SoundRepository.php b/src/Discord/Repository/Guild/SoundRepository.php
index b7d2889e6..3a6151227 100644
--- a/src/Discord/Repository/Guild/SoundRepository.php
+++ b/src/Discord/Repository/Guild/SoundRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -64,10 +66,12 @@ class SoundRepository extends AbstractRepository
      */
     protected function cacheFreshen($response): PromiseInterface
     {
-        foreach ($response as $value) foreach ($value as $value) {
-            $value = array_merge($this->vars, (array) $value);
-            $part = $this->factory->create($this->class, $value, true);
-            $items[$part->{$this->discrim}] = $part;
+        foreach ($response as $value) {
+            foreach ($value as $value) {
+                $value = array_merge($this->vars, (array) $value);
+                $part = $this->factory->create($this->class, $value, true);
+                $items[$part->{$this->discrim}] = $part;
+            }
         }
 
         if (empty($items)) {
diff --git a/src/Discord/Repository/Guild/StickerRepository.php b/src/Discord/Repository/Guild/StickerRepository.php
index a8c5b7f99..b052e3591 100644
--- a/src/Discord/Repository/Guild/StickerRepository.php
+++ b/src/Discord/Repository/Guild/StickerRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/GuildRepository.php b/src/Discord/Repository/GuildRepository.php
index da217eee5..0dba979b9 100755
--- a/src/Discord/Repository/GuildRepository.php
+++ b/src/Discord/Repository/GuildRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/Interaction/GlobalCommandRepository.php b/src/Discord/Repository/Interaction/GlobalCommandRepository.php
index 96751d97f..ba53037f8 100644
--- a/src/Discord/Repository/Interaction/GlobalCommandRepository.php
+++ b/src/Discord/Repository/Interaction/GlobalCommandRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/PrivateChannelRepository.php b/src/Discord/Repository/PrivateChannelRepository.php
index d5fc9fc33..87f772448 100755
--- a/src/Discord/Repository/PrivateChannelRepository.php
+++ b/src/Discord/Repository/PrivateChannelRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/SoundRepository.php b/src/Discord/Repository/SoundRepository.php
index 46752bc8d..dfc416778 100644
--- a/src/Discord/Repository/SoundRepository.php
+++ b/src/Discord/Repository/SoundRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -13,7 +15,6 @@
 
 use Discord\Http\Endpoint;
 use Discord\Parts\Guild\Sound;
-use Discord\Repository\AbstractRepository;
 
 /**
  * Contains sounds of an application.
diff --git a/src/Discord/Repository/Thread/MemberRepository.php b/src/Discord/Repository/Thread/MemberRepository.php
index 8f296f051..0b0f3b632 100644
--- a/src/Discord/Repository/Thread/MemberRepository.php
+++ b/src/Discord/Repository/Thread/MemberRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Repository/UserRepository.php b/src/Discord/Repository/UserRepository.php
index be6ffcedc..4b0e9a649 100644
--- a/src/Discord/Repository/UserRepository.php
+++ b/src/Discord/Repository/UserRepository.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/Buffer.php b/src/Discord/Voice/Buffer.php
index 4d4e49943..226156fb0 100644
--- a/src/Discord/Voice/Buffer.php
+++ b/src/Discord/Voice/Buffer.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/OggPage.php b/src/Discord/Voice/OggPage.php
index d9e616b35..1c13aa601 100644
--- a/src/Discord/Voice/OggPage.php
+++ b/src/Discord/Voice/OggPage.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/OggStream.php b/src/Discord/Voice/OggStream.php
index 166925a89..9692a5689 100644
--- a/src/Discord/Voice/OggStream.php
+++ b/src/Discord/Voice/OggStream.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/OpusHead.php b/src/Discord/Voice/OpusHead.php
index d268bc7b0..8b2bcaaae 100644
--- a/src/Discord/Voice/OpusHead.php
+++ b/src/Discord/Voice/OpusHead.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/OpusTags.php b/src/Discord/Voice/OpusTags.php
index 083fba2c2..9b6cfedd5 100644
--- a/src/Discord/Voice/OpusTags.php
+++ b/src/Discord/Voice/OpusTags.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/RecieveStream.php b/src/Discord/Voice/RecieveStream.php
index 2468093a8..6409105ad 100644
--- a/src/Discord/Voice/RecieveStream.php
+++ b/src/Discord/Voice/RecieveStream.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/Speaking/UserSpeakingState.php b/src/Discord/Voice/Speaking/UserSpeakingState.php
new file mode 100644
index 000000000..36e52aae0
--- /dev/null
+++ b/src/Discord/Voice/Speaking/UserSpeakingState.php
@@ -0,0 +1,38 @@
+<?php
+
+declare(strict_types=1);
+
+namespace Discord\Voice\Speaking;
+
+final class UserSpeakingState
+{
+    public int $userId;
+
+    public bool $speaking;
+
+    public array $packets;
+
+    public function __construct(int $userId, bool $speaking, array $packets)
+    {
+        $this->userId = $userId;
+        $this->speaking = $speaking;
+        $this->packets = [$this->userId => $packets];
+    }
+
+    public function getUserId(): int
+    {
+        return $this->userId;
+    }
+
+    public function isSpeaking(): bool
+    {
+        return $this->speaking;
+    }
+
+    public function getPacketsByUserId(int $userId): array
+    {
+        return $this->packets[$userId];
+    }
+
+
+}
diff --git a/src/Discord/Voice/VoiceClient.php b/src/Discord/Voice/VoiceClient.php
index 85a112afc..3fe22ac78 100644
--- a/src/Discord/Voice/VoiceClient.php
+++ b/src/Discord/Voice/VoiceClient.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/Voice/VoicePacket.php b/src/Discord/Voice/VoicePacket.php
index 95658958e..9f7df8045 100644
--- a/src/Discord/Voice/VoicePacket.php
+++ b/src/Discord/Voice/VoicePacket.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -92,7 +94,7 @@ public function __construct(string $data, int $ssrc, int $seq, int $timestamp, b
      */
     protected function initBufferNoEncryption(string $data): void
     {
-        $data = (binary) $data;
+        $data = (string) $data;
         $header = $this->buildHeader();
 
         $buffer = new Buffer(strlen((string) $header) + strlen($data));
@@ -110,7 +112,7 @@ protected function initBufferNoEncryption(string $data): void
      */
     protected function initBufferEncryption(string $data, string $key): void
     {
-        $data = (binary) $data;
+        $data = (string) $data;
         $header = $this->buildHeader();
         $nonce = new Buffer(24);
         $nonce->write((string) $header, 0);
diff --git a/src/Discord/WebSockets/Event.php b/src/Discord/WebSockets/Event.php
index 9ead53bac..f145be1ba 100644
--- a/src/Discord/WebSockets/Event.php
+++ b/src/Discord/WebSockets/Event.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ApplicationCommandPermissionsUpdate.php b/src/Discord/WebSockets/Events/ApplicationCommandPermissionsUpdate.php
index 7886bef78..a3b6d661b 100644
--- a/src/Discord/WebSockets/Events/ApplicationCommandPermissionsUpdate.php
+++ b/src/Discord/WebSockets/Events/ApplicationCommandPermissionsUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/AutoModerationActionExecution.php b/src/Discord/WebSockets/Events/AutoModerationActionExecution.php
index f692685df..73df39925 100644
--- a/src/Discord/WebSockets/Events/AutoModerationActionExecution.php
+++ b/src/Discord/WebSockets/Events/AutoModerationActionExecution.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/AutoModerationRuleCreate.php b/src/Discord/WebSockets/Events/AutoModerationRuleCreate.php
index 130fa3233..3650915b8 100644
--- a/src/Discord/WebSockets/Events/AutoModerationRuleCreate.php
+++ b/src/Discord/WebSockets/Events/AutoModerationRuleCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/AutoModerationRuleDelete.php b/src/Discord/WebSockets/Events/AutoModerationRuleDelete.php
index 239a39bbd..914e5e8da 100644
--- a/src/Discord/WebSockets/Events/AutoModerationRuleDelete.php
+++ b/src/Discord/WebSockets/Events/AutoModerationRuleDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/AutoModerationRuleUpdate.php b/src/Discord/WebSockets/Events/AutoModerationRuleUpdate.php
index 3624319bf..924632336 100644
--- a/src/Discord/WebSockets/Events/AutoModerationRuleUpdate.php
+++ b/src/Discord/WebSockets/Events/AutoModerationRuleUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ChannelCreate.php b/src/Discord/WebSockets/Events/ChannelCreate.php
index 10956c240..6a0465ab2 100644
--- a/src/Discord/WebSockets/Events/ChannelCreate.php
+++ b/src/Discord/WebSockets/Events/ChannelCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ChannelDelete.php b/src/Discord/WebSockets/Events/ChannelDelete.php
index ea89a4fe3..936f9ae51 100644
--- a/src/Discord/WebSockets/Events/ChannelDelete.php
+++ b/src/Discord/WebSockets/Events/ChannelDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ChannelPinsUpdate.php b/src/Discord/WebSockets/Events/ChannelPinsUpdate.php
index b6af9d860..6fa4b9cac 100644
--- a/src/Discord/WebSockets/Events/ChannelPinsUpdate.php
+++ b/src/Discord/WebSockets/Events/ChannelPinsUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ChannelUpdate.php b/src/Discord/WebSockets/Events/ChannelUpdate.php
index ee26ff0e9..6d73a1c90 100644
--- a/src/Discord/WebSockets/Events/ChannelUpdate.php
+++ b/src/Discord/WebSockets/Events/ChannelUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildAuditLogEntryCreate.php b/src/Discord/WebSockets/Events/GuildAuditLogEntryCreate.php
index d2baf2640..e0350a991 100644
--- a/src/Discord/WebSockets/Events/GuildAuditLogEntryCreate.php
+++ b/src/Discord/WebSockets/Events/GuildAuditLogEntryCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildBanAdd.php b/src/Discord/WebSockets/Events/GuildBanAdd.php
index 44aadc999..b0a1b6dfe 100644
--- a/src/Discord/WebSockets/Events/GuildBanAdd.php
+++ b/src/Discord/WebSockets/Events/GuildBanAdd.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildBanRemove.php b/src/Discord/WebSockets/Events/GuildBanRemove.php
index af798810e..2e1d0dab6 100644
--- a/src/Discord/WebSockets/Events/GuildBanRemove.php
+++ b/src/Discord/WebSockets/Events/GuildBanRemove.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildCreate.php b/src/Discord/WebSockets/Events/GuildCreate.php
index a26bd2fa6..ed4224474 100644
--- a/src/Discord/WebSockets/Events/GuildCreate.php
+++ b/src/Discord/WebSockets/Events/GuildCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildDelete.php b/src/Discord/WebSockets/Events/GuildDelete.php
index c26404ae2..43b5089fc 100644
--- a/src/Discord/WebSockets/Events/GuildDelete.php
+++ b/src/Discord/WebSockets/Events/GuildDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildEmojisUpdate.php b/src/Discord/WebSockets/Events/GuildEmojisUpdate.php
index 77dcf0692..7ba494d4e 100644
--- a/src/Discord/WebSockets/Events/GuildEmojisUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildEmojisUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildIntegrationsUpdate.php b/src/Discord/WebSockets/Events/GuildIntegrationsUpdate.php
index 31fe244c9..ac462397b 100644
--- a/src/Discord/WebSockets/Events/GuildIntegrationsUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildIntegrationsUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildMemberAdd.php b/src/Discord/WebSockets/Events/GuildMemberAdd.php
index 908aea8be..e28e42d3c 100644
--- a/src/Discord/WebSockets/Events/GuildMemberAdd.php
+++ b/src/Discord/WebSockets/Events/GuildMemberAdd.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildMemberRemove.php b/src/Discord/WebSockets/Events/GuildMemberRemove.php
index 0546c9f00..26cc2ec6e 100644
--- a/src/Discord/WebSockets/Events/GuildMemberRemove.php
+++ b/src/Discord/WebSockets/Events/GuildMemberRemove.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildMemberUpdate.php b/src/Discord/WebSockets/Events/GuildMemberUpdate.php
index 59ebbee8a..ab6af310d 100644
--- a/src/Discord/WebSockets/Events/GuildMemberUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildMemberUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildRoleCreate.php b/src/Discord/WebSockets/Events/GuildRoleCreate.php
index 0c849c08d..92e427728 100644
--- a/src/Discord/WebSockets/Events/GuildRoleCreate.php
+++ b/src/Discord/WebSockets/Events/GuildRoleCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildRoleDelete.php b/src/Discord/WebSockets/Events/GuildRoleDelete.php
index f674eb7ce..0e952447a 100644
--- a/src/Discord/WebSockets/Events/GuildRoleDelete.php
+++ b/src/Discord/WebSockets/Events/GuildRoleDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildRoleUpdate.php b/src/Discord/WebSockets/Events/GuildRoleUpdate.php
index a5335d237..b2fe36c92 100644
--- a/src/Discord/WebSockets/Events/GuildRoleUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildRoleUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildScheduledEventCreate.php b/src/Discord/WebSockets/Events/GuildScheduledEventCreate.php
index 913faa562..49a39b7a9 100644
--- a/src/Discord/WebSockets/Events/GuildScheduledEventCreate.php
+++ b/src/Discord/WebSockets/Events/GuildScheduledEventCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildScheduledEventDelete.php b/src/Discord/WebSockets/Events/GuildScheduledEventDelete.php
index 41fa1050b..8480fd80d 100644
--- a/src/Discord/WebSockets/Events/GuildScheduledEventDelete.php
+++ b/src/Discord/WebSockets/Events/GuildScheduledEventDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildScheduledEventUpdate.php b/src/Discord/WebSockets/Events/GuildScheduledEventUpdate.php
index 3bd0ffe5e..fb1472660 100644
--- a/src/Discord/WebSockets/Events/GuildScheduledEventUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildScheduledEventUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildScheduledEventUserAdd.php b/src/Discord/WebSockets/Events/GuildScheduledEventUserAdd.php
index f5d4b3708..f7fadf302 100644
--- a/src/Discord/WebSockets/Events/GuildScheduledEventUserAdd.php
+++ b/src/Discord/WebSockets/Events/GuildScheduledEventUserAdd.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildScheduledEventUserRemove.php b/src/Discord/WebSockets/Events/GuildScheduledEventUserRemove.php
index d30144905..2addf8b15 100644
--- a/src/Discord/WebSockets/Events/GuildScheduledEventUserRemove.php
+++ b/src/Discord/WebSockets/Events/GuildScheduledEventUserRemove.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildSoundboardSoundCreate.php b/src/Discord/WebSockets/Events/GuildSoundboardSoundCreate.php
index 346747c0e..e1105984a 100644
--- a/src/Discord/WebSockets/Events/GuildSoundboardSoundCreate.php
+++ b/src/Discord/WebSockets/Events/GuildSoundboardSoundCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildSoundboardSoundDelete.php b/src/Discord/WebSockets/Events/GuildSoundboardSoundDelete.php
index 7c9c30535..cd146d058 100644
--- a/src/Discord/WebSockets/Events/GuildSoundboardSoundDelete.php
+++ b/src/Discord/WebSockets/Events/GuildSoundboardSoundDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildSoundboardSoundUpdate.php b/src/Discord/WebSockets/Events/GuildSoundboardSoundUpdate.php
index 9d0460266..ae1192145 100644
--- a/src/Discord/WebSockets/Events/GuildSoundboardSoundUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildSoundboardSoundUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildSoundboardSoundsUpdate.php b/src/Discord/WebSockets/Events/GuildSoundboardSoundsUpdate.php
index 77448fa96..cd71eee35 100644
--- a/src/Discord/WebSockets/Events/GuildSoundboardSoundsUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildSoundboardSoundsUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildStickersUpdate.php b/src/Discord/WebSockets/Events/GuildStickersUpdate.php
index 966bf7455..4c55874fa 100644
--- a/src/Discord/WebSockets/Events/GuildStickersUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildStickersUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/GuildUpdate.php b/src/Discord/WebSockets/Events/GuildUpdate.php
index a28969e55..4882ee465 100644
--- a/src/Discord/WebSockets/Events/GuildUpdate.php
+++ b/src/Discord/WebSockets/Events/GuildUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/IntegrationCreate.php b/src/Discord/WebSockets/Events/IntegrationCreate.php
index 577917004..c8bd669ca 100644
--- a/src/Discord/WebSockets/Events/IntegrationCreate.php
+++ b/src/Discord/WebSockets/Events/IntegrationCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/IntegrationDelete.php b/src/Discord/WebSockets/Events/IntegrationDelete.php
index 561687cd3..b1859c4a7 100644
--- a/src/Discord/WebSockets/Events/IntegrationDelete.php
+++ b/src/Discord/WebSockets/Events/IntegrationDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/IntegrationUpdate.php b/src/Discord/WebSockets/Events/IntegrationUpdate.php
index 3b7a49a68..e8c6fbb51 100644
--- a/src/Discord/WebSockets/Events/IntegrationUpdate.php
+++ b/src/Discord/WebSockets/Events/IntegrationUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/InteractionCreate.php b/src/Discord/WebSockets/Events/InteractionCreate.php
index 4f57e54d2..d4b1c1e29 100644
--- a/src/Discord/WebSockets/Events/InteractionCreate.php
+++ b/src/Discord/WebSockets/Events/InteractionCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/InviteCreate.php b/src/Discord/WebSockets/Events/InviteCreate.php
index e34a7a5d4..e08d9cdd2 100644
--- a/src/Discord/WebSockets/Events/InviteCreate.php
+++ b/src/Discord/WebSockets/Events/InviteCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/InviteDelete.php b/src/Discord/WebSockets/Events/InviteDelete.php
index 34e8b69df..79d7a6820 100644
--- a/src/Discord/WebSockets/Events/InviteDelete.php
+++ b/src/Discord/WebSockets/Events/InviteDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageCreate.php b/src/Discord/WebSockets/Events/MessageCreate.php
index fa3fdff26..8f5209b60 100644
--- a/src/Discord/WebSockets/Events/MessageCreate.php
+++ b/src/Discord/WebSockets/Events/MessageCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageDelete.php b/src/Discord/WebSockets/Events/MessageDelete.php
index 49fb87481..3b4518c76 100644
--- a/src/Discord/WebSockets/Events/MessageDelete.php
+++ b/src/Discord/WebSockets/Events/MessageDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageDeleteBulk.php b/src/Discord/WebSockets/Events/MessageDeleteBulk.php
index 99b91972e..70e819b05 100644
--- a/src/Discord/WebSockets/Events/MessageDeleteBulk.php
+++ b/src/Discord/WebSockets/Events/MessageDeleteBulk.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessagePollVoteAdd.php b/src/Discord/WebSockets/Events/MessagePollVoteAdd.php
index 803663d7f..c3562b52b 100644
--- a/src/Discord/WebSockets/Events/MessagePollVoteAdd.php
+++ b/src/Discord/WebSockets/Events/MessagePollVoteAdd.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -15,7 +17,6 @@
 use Discord\WebSockets\Event;
 use Discord\Parts\Channel\Channel;
 use Discord\Parts\Channel\Message;
-use Discord\Parts\Channel\Reaction;
 use Discord\Parts\Guild\Guild;
 use Discord\Parts\Thread\Thread;
 
diff --git a/src/Discord/WebSockets/Events/MessagePollVoteRemove.php b/src/Discord/WebSockets/Events/MessagePollVoteRemove.php
index c0b690c8f..5454bcf57 100644
--- a/src/Discord/WebSockets/Events/MessagePollVoteRemove.php
+++ b/src/Discord/WebSockets/Events/MessagePollVoteRemove.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -15,7 +17,6 @@
 use Discord\WebSockets\Event;
 use Discord\Parts\Channel\Channel;
 use Discord\Parts\Channel\Message;
-use Discord\Parts\Channel\Reaction;
 use Discord\Parts\Guild\Guild;
 use Discord\Parts\Thread\Thread;
 
diff --git a/src/Discord/WebSockets/Events/MessageReactionAdd.php b/src/Discord/WebSockets/Events/MessageReactionAdd.php
index 387ba3276..756a9b3df 100644
--- a/src/Discord/WebSockets/Events/MessageReactionAdd.php
+++ b/src/Discord/WebSockets/Events/MessageReactionAdd.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageReactionRemove.php b/src/Discord/WebSockets/Events/MessageReactionRemove.php
index 6b9880df8..2d6ff34cb 100644
--- a/src/Discord/WebSockets/Events/MessageReactionRemove.php
+++ b/src/Discord/WebSockets/Events/MessageReactionRemove.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageReactionRemoveAll.php b/src/Discord/WebSockets/Events/MessageReactionRemoveAll.php
index 90b8a478d..d544cd50a 100644
--- a/src/Discord/WebSockets/Events/MessageReactionRemoveAll.php
+++ b/src/Discord/WebSockets/Events/MessageReactionRemoveAll.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageReactionRemoveEmoji.php b/src/Discord/WebSockets/Events/MessageReactionRemoveEmoji.php
index 737d5509a..15354e4fa 100644
--- a/src/Discord/WebSockets/Events/MessageReactionRemoveEmoji.php
+++ b/src/Discord/WebSockets/Events/MessageReactionRemoveEmoji.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/MessageUpdate.php b/src/Discord/WebSockets/Events/MessageUpdate.php
index 7173b8a79..29e175028 100644
--- a/src/Discord/WebSockets/Events/MessageUpdate.php
+++ b/src/Discord/WebSockets/Events/MessageUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/PresenceUpdate.php b/src/Discord/WebSockets/Events/PresenceUpdate.php
index 351c2806f..252746e40 100644
--- a/src/Discord/WebSockets/Events/PresenceUpdate.php
+++ b/src/Discord/WebSockets/Events/PresenceUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/SoundboardSounds.php b/src/Discord/WebSockets/Events/SoundboardSounds.php
index 997dda9c7..e931f0b96 100644
--- a/src/Discord/WebSockets/Events/SoundboardSounds.php
+++ b/src/Discord/WebSockets/Events/SoundboardSounds.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/StageInstanceCreate.php b/src/Discord/WebSockets/Events/StageInstanceCreate.php
index a091fd36c..102068e99 100644
--- a/src/Discord/WebSockets/Events/StageInstanceCreate.php
+++ b/src/Discord/WebSockets/Events/StageInstanceCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/StageInstanceDelete.php b/src/Discord/WebSockets/Events/StageInstanceDelete.php
index 329b15a07..ba944beec 100644
--- a/src/Discord/WebSockets/Events/StageInstanceDelete.php
+++ b/src/Discord/WebSockets/Events/StageInstanceDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/StageInstanceUpdate.php b/src/Discord/WebSockets/Events/StageInstanceUpdate.php
index 281421b19..6fff506d6 100644
--- a/src/Discord/WebSockets/Events/StageInstanceUpdate.php
+++ b/src/Discord/WebSockets/Events/StageInstanceUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadCreate.php b/src/Discord/WebSockets/Events/ThreadCreate.php
index e24c01132..09cee1f3c 100644
--- a/src/Discord/WebSockets/Events/ThreadCreate.php
+++ b/src/Discord/WebSockets/Events/ThreadCreate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadDelete.php b/src/Discord/WebSockets/Events/ThreadDelete.php
index 4022a5565..d156cbea1 100644
--- a/src/Discord/WebSockets/Events/ThreadDelete.php
+++ b/src/Discord/WebSockets/Events/ThreadDelete.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadListSync.php b/src/Discord/WebSockets/Events/ThreadListSync.php
index 4333274e4..92594f841 100644
--- a/src/Discord/WebSockets/Events/ThreadListSync.php
+++ b/src/Discord/WebSockets/Events/ThreadListSync.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadMemberUpdate.php b/src/Discord/WebSockets/Events/ThreadMemberUpdate.php
index f311b328c..d22917e8c 100644
--- a/src/Discord/WebSockets/Events/ThreadMemberUpdate.php
+++ b/src/Discord/WebSockets/Events/ThreadMemberUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadMembersUpdate.php b/src/Discord/WebSockets/Events/ThreadMembersUpdate.php
index 701f918a3..4ca53ab1e 100644
--- a/src/Discord/WebSockets/Events/ThreadMembersUpdate.php
+++ b/src/Discord/WebSockets/Events/ThreadMembersUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/ThreadUpdate.php b/src/Discord/WebSockets/Events/ThreadUpdate.php
index f945f8600..25780e117 100644
--- a/src/Discord/WebSockets/Events/ThreadUpdate.php
+++ b/src/Discord/WebSockets/Events/ThreadUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/TypingStart.php b/src/Discord/WebSockets/Events/TypingStart.php
index 781d11fb8..7ed070faf 100644
--- a/src/Discord/WebSockets/Events/TypingStart.php
+++ b/src/Discord/WebSockets/Events/TypingStart.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/UserUpdate.php b/src/Discord/WebSockets/Events/UserUpdate.php
index 3e3c4dff5..075ca3d45 100644
--- a/src/Discord/WebSockets/Events/UserUpdate.php
+++ b/src/Discord/WebSockets/Events/UserUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/VoiceServerUpdate.php b/src/Discord/WebSockets/Events/VoiceServerUpdate.php
index c3f6eb373..18b5c21c0 100644
--- a/src/Discord/WebSockets/Events/VoiceServerUpdate.php
+++ b/src/Discord/WebSockets/Events/VoiceServerUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/VoiceStateUpdate.php b/src/Discord/WebSockets/Events/VoiceStateUpdate.php
index 4350ad1c8..1362a4eaa 100644
--- a/src/Discord/WebSockets/Events/VoiceStateUpdate.php
+++ b/src/Discord/WebSockets/Events/VoiceStateUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Events/WebhooksUpdate.php b/src/Discord/WebSockets/Events/WebhooksUpdate.php
index 1d517ec52..8734e7fea 100644
--- a/src/Discord/WebSockets/Events/WebhooksUpdate.php
+++ b/src/Discord/WebSockets/Events/WebhooksUpdate.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Handlers.php b/src/Discord/WebSockets/Handlers.php
index 8b90f0cbf..a6389f16c 100644
--- a/src/Discord/WebSockets/Handlers.php
+++ b/src/Discord/WebSockets/Handlers.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Intents.php b/src/Discord/WebSockets/Intents.php
index 8ebb3fdb4..c7400d48e 100644
--- a/src/Discord/WebSockets/Intents.php
+++ b/src/Discord/WebSockets/Intents.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/WebSockets/Op.php b/src/Discord/WebSockets/Op.php
index 8abe5461d..d9d1e12e2 100644
--- a/src/Discord/WebSockets/Op.php
+++ b/src/Discord/WebSockets/Op.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
diff --git a/src/Discord/functions.php b/src/Discord/functions.php
index d2bf88195..8ae6855e7 100644
--- a/src/Discord/functions.php
+++ b/src/Discord/functions.php
@@ -1,5 +1,7 @@
 <?php
 
+declare(strict_types=1);
+
 /*
  * This file is a part of the DiscordPHP project.
  *
@@ -131,7 +133,7 @@ function getColor(int|string $color = 0): int
  */
 function contains(string $string, array $matches): bool
 {
-    return array_reduce($matches, fn($carry, $match) => $carry || str_contains($string, $match), false);
+    return array_reduce($matches, fn ($carry, $match) => $carry || str_contains($string, $match), false);
 }
 
 /**
@@ -238,7 +240,7 @@ function getSnowflakeTimestamp(string $snowflake)
  */
 function normalizePartId(string $id_field = 'id'): \Closure
 {
-    return static fn(Options $options, $part) => $part instanceof Part
+    return static fn (Options $options, $part) => $part instanceof Part
         ? $part->{$id_field}
         : $part;
 }