diff --git a/core/lib/Drupal/Component/Datetime/DateTimePlus.php b/core/lib/Drupal/Component/Datetime/DateTimePlus.php
index 08734733dea40cb25212a350cf3d55d0ebf395c3..35f2e80f0d3354c2f110d2bbf5be2d189d9484e2 100644
--- a/core/lib/Drupal/Component/Datetime/DateTimePlus.php
+++ b/core/lib/Drupal/Component/Datetime/DateTimePlus.php
@@ -54,6 +54,8 @@ class DateTimePlus {
 
   /**
    * An array of possible date parts.
+   *
+   * @var string[]
    */
   protected static $dateParts = [
     'year',
@@ -108,11 +110,15 @@ class DateTimePlus {
 
   /**
    * The value of the language code passed to the constructor.
+   *
+   * @var string|null
    */
   protected $langcode = NULL;
 
   /**
    * An array of errors encountered when creating this date.
+   *
+   * @var string[]
    */
   protected $errors = [];
 
diff --git a/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php b/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
index 781c088cfec018b399e513b4a858c06b05e26a43..3bce69b4c4b8362dbafc63a97de6a05da82521b5 100644
--- a/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
+++ b/core/lib/Drupal/Component/Transliteration/PhpTransliteration.php
@@ -67,6 +67,8 @@ class PhpTransliteration implements TransliterationInterface {
    * transliterates to more than one ASCII character require special
    * treatment: we want to remove their accent and use the un-
    * transliterated base character.
+   *
+   * @var string[]
    */
   protected $fixTransliterateForRemoveDiacritics = [
     'AE' => 'Æ',
diff --git a/core/lib/Drupal/Core/Access/CheckProvider.php b/core/lib/Drupal/Core/Access/CheckProvider.php
index 270e05d343b3481dfbedf0bdf11eb2a530fd6513..c6929d6b96bfc2dd561a2fbcf3dbb790ac978a34 100644
--- a/core/lib/Drupal/Core/Access/CheckProvider.php
+++ b/core/lib/Drupal/Core/Access/CheckProvider.php
@@ -35,6 +35,8 @@ class CheckProvider implements CheckProviderInterface {
 
   /**
    * Array of access checks which only will be run on the incoming request.
+   *
+   * @var string[]
    */
   protected $checksNeedsRequest = [];
 
diff --git a/core/lib/Drupal/Core/Cache/MemoryBackend.php b/core/lib/Drupal/Core/Cache/MemoryBackend.php
index 267ccd1b6b1209b1152b90cfc8161a61b220ac9d..326e69a081087a9750d803465f0d4ede370549db 100644
--- a/core/lib/Drupal/Core/Cache/MemoryBackend.php
+++ b/core/lib/Drupal/Core/Cache/MemoryBackend.php
@@ -24,6 +24,8 @@ class MemoryBackend implements CacheBackendInterface, CacheTagsInvalidatorInterf
 
   /**
    * Array to store cache objects.
+   *
+   * @var object[]
    */
   protected $cache = [];
 
diff --git a/core/lib/Drupal/Core/Cache/PhpBackend.php b/core/lib/Drupal/Core/Cache/PhpBackend.php
index 059ca05948a79d6fa3a56538650d9d4bab1634a4..a941fe37ebecc8c6ec44739c816649080194d4b7 100644
--- a/core/lib/Drupal/Core/Cache/PhpBackend.php
+++ b/core/lib/Drupal/Core/Cache/PhpBackend.php
@@ -35,6 +35,8 @@ class PhpBackend implements CacheBackendInterface {
 
   /**
    * Array to store cache objects.
+   *
+   * @var object[]
    */
   protected $cache = [];
 
diff --git a/core/lib/Drupal/Core/Database/Query/Condition.php b/core/lib/Drupal/Core/Database/Query/Condition.php
index f0f71aed610e8de06f1b337ce036864ab9efce5f..8f48910ebc22f7529d4c6b9e12c8293c6d3de920 100644
--- a/core/lib/Drupal/Core/Database/Query/Condition.php
+++ b/core/lib/Drupal/Core/Database/Query/Condition.php
@@ -12,6 +12,8 @@ class Condition implements ConditionInterface, \Countable {
 
   /**
    * Provides a map of condition operators to condition operator options.
+   *
+   * @var string[][]
    */
   protected static $conditionOperatorMap = [
     'BETWEEN' => ['delimiter' => ' AND '],
diff --git a/core/lib/Drupal/Core/Flood/MemoryBackend.php b/core/lib/Drupal/Core/Flood/MemoryBackend.php
index 29d13468ebabd1cdeedf3da54a2e4a77a38546b8..b25e5e734ab04b8de52da9388e0224637e5deead 100644
--- a/core/lib/Drupal/Core/Flood/MemoryBackend.php
+++ b/core/lib/Drupal/Core/Flood/MemoryBackend.php
@@ -18,6 +18,8 @@ class MemoryBackend implements FloodInterface, PrefixFloodInterface {
 
   /**
    * An array holding flood events, keyed by event name and identifier.
+   *
+   * @var array
    */
   protected $events = [];
 
diff --git a/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php b/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
index 1c7af4b99262e984b6ba64f7ecf6c984a6ef811c..13e35ae27ed789ed4b70f7126d7a494a1acafceb 100644
--- a/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
+++ b/core/lib/Drupal/Core/Menu/MenuLinkTreeElement.php
@@ -78,6 +78,8 @@ class MenuLinkTreeElement {
    * This is merged (\Drupal\Component\Utility\NestedArray::mergeDeep()) with
    * \Drupal\Core\Menu\MenuLinkInterface::getOptions(), to allow menu link tree
    * manipulators to add or override link options.
+   *
+   * @var string[]
    */
   public $options = [];
 
diff --git a/core/modules/help/tests/src/Functional/HelpTest.php b/core/modules/help/tests/src/Functional/HelpTest.php
index 03b661c5cf7fc5e1dd140efd8edc6d3fdd4b4712..7ba9a681dc5bf94272af1231047d681bf5dc2567 100644
--- a/core/modules/help/tests/src/Functional/HelpTest.php
+++ b/core/modules/help/tests/src/Functional/HelpTest.php
@@ -40,11 +40,15 @@ class HelpTest extends BrowserTestBase {
 
   /**
    * The admin user that will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
   /**
    * The anonymous user that will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $anyUser;
 
diff --git a/core/modules/help/tests/src/Functional/NoHelpTest.php b/core/modules/help/tests/src/Functional/NoHelpTest.php
index 3fbfa96500d8e20875272f001cbe4e9f14190c6a..88f1c60fabe57ad7084eacc72c7265f842ba0d9f 100644
--- a/core/modules/help/tests/src/Functional/NoHelpTest.php
+++ b/core/modules/help/tests/src/Functional/NoHelpTest.php
@@ -29,6 +29,8 @@ class NoHelpTest extends BrowserTestBase {
 
   /**
    * The user who will be created.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
diff --git a/core/modules/locale/tests/src/Functional/LocaleExportTest.php b/core/modules/locale/tests/src/Functional/LocaleExportTest.php
index c467474ae8729a4a6bd19acab1dfeb44f4e818ed..a66b33ba1f841f9f3e52f3b51336119e3db89b79 100644
--- a/core/modules/locale/tests/src/Functional/LocaleExportTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleExportTest.php
@@ -28,6 +28,8 @@ class LocaleExportTest extends BrowserTestBase {
 
   /**
    * A user able to create languages and export translations.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser = NULL;
 
diff --git a/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php b/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
index e41ecf722ac375c5598f02dafef7d1c36accf9a3..6885ba378e9c7d3e99bdc460b9944e9187c56f81 100644
--- a/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
+++ b/core/modules/migrate/tests/src/Functional/MigrateMessageTestBase.php
@@ -39,6 +39,8 @@ class MigrateMessageTestBase extends BrowserTestBase {
 
   /**
    * Migration IDs.
+   *
+   * @var string[]
    */
   protected $migrationIds = ['custom_test'];
 
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
index cdd0b7a02307b63e9905ac7c86c9b4d40c3e4993..7415ed3b6010650627635619057029a6259fe501 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
@@ -17,6 +17,8 @@ class DrupalSqlBaseTest extends MigrateTestCase {
 
   /**
    * Define bare minimum migration configuration.
+   *
+   * @var string[]
    */
   protected $migrationConfiguration = [
     'id' => 'DrupalSqlBase',
@@ -50,6 +52,8 @@ class DrupalSqlBaseTest extends MigrateTestCase {
 
   /**
    * Minimum database contents needed to test DrupalSqlBase.
+   *
+   * @var string[]
    */
   protected $databaseContents = [
     'system' => [
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
index 90b7574236bd06a449c8dce3ac660b2a2df58e59..c2d15033102f7d14944a717f7eef2a9df6067363 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/d6/Drupal6SqlBaseTest.php
@@ -17,6 +17,8 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
 
   /**
    * Define bare minimum migration configuration.
+   *
+   * @var string[]
    */
   protected $migrationConfiguration = [
     'id' => 'Drupal6SqlBase',
@@ -29,6 +31,8 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
 
   /**
    * Minimum database contents needed to test Drupal6SqlBase.
+   *
+   * @var string[]
    */
   protected $databaseContents = [
     'system' => [
diff --git a/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php b/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
index ee190acfe919f29cca28a50ca30e1e1c88f9c115..a677bd29f3168244f8bfc56abfe544376fd31b02 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessBaseTableTest.php
@@ -57,6 +57,8 @@ class NodeAccessBaseTableTest extends NodeTestBase {
 
   /**
    * A web user.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $webUser;
 
diff --git a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
index 61c7c77b75a8f05172c8c2b9c9e518b3f8778af0..27385e9666bdcf57a545fda27360284c452d5ef4 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
@@ -27,11 +27,15 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
 
   /**
    * User with permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $accessUser;
 
   /**
    * User without permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $noAccessUser;
 
@@ -44,6 +48,10 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
 
   /**
    * User with permission to bypass node access.
+   *
+   * @var \Drupal\user\Entity\User|false
+   *
+   * @see \Drupal\Tests\user\Traits\UserCreationTrait::createUser
    */
   protected $adminUser;
 
diff --git a/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php b/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
index ec7473488c999106243a35b1f18740f457af3970..ad525c6e6bdc4f1a715c830c663157aa3db1ffc9 100644
--- a/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
+++ b/core/modules/node/tests/src/Functional/NodeEntityViewModeAlterTest.php
@@ -18,6 +18,8 @@ class NodeEntityViewModeAlterTest extends NodeTestBase {
 
   /**
    * Enable dummy module that implements hook_ENTITY_TYPE_view() for nodes.
+   *
+   * @var string[]
    */
   protected static $modules = ['node_test'];
 
diff --git a/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php b/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
index 6e1ae73a40067a581d7cb201ce7f05164e52e201..eebff08a77cc22b8764492572ae03c77e9f51120 100644
--- a/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
+++ b/core/modules/node/tests/src/Functional/NodeQueryAlterTest.php
@@ -27,11 +27,15 @@ class NodeQueryAlterTest extends NodeTestBase {
 
   /**
    * User with permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $accessUser;
 
   /**
    * User without permission to view content.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $noAccessUser;
 
diff --git a/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php b/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
index 3cab209a0d4800b3aaae540ddc66b23dee801dbe..041bd43d07c25afef7681a6df9efc754fed62cf0 100644
--- a/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
+++ b/core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
@@ -53,6 +53,8 @@ class Connection extends DatabaseConnection implements SupportsTemporaryTablesIn
    *
    * In PostgreSQL, 'LIKE' is case-sensitive. ILIKE should be used for
    * case-insensitive statements.
+   *
+   * @var string[][]
    */
   protected static $postgresqlConditionOperatorMap = [
     'LIKE' => ['operator' => 'ILIKE'],
diff --git a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
index 0fc468107c70c83ac726fd72eb31ac789419f6f2..3ceabe1a3872a9d44dec7c160d520c1e3ec9d448 100644
--- a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
+++ b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
@@ -43,6 +43,8 @@ class ViewsIntegrationTest extends ViewTestBase {
 
   /**
    * The test views to enable.
+   *
+   * @var string[]
    */
   public static $testViews = ['entity_test_row'];
 
diff --git a/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php b/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
index 71b1ba26cb29962ad561264b463fe6d81c2d245b..0311037c90e28a9b6b2fe78426360d79af482aea 100644
--- a/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/StyleSerializerEntityTest.php
@@ -58,6 +58,10 @@ class StyleSerializerEntityTest extends ViewTestBase {
 
   /**
    * A user with administrative privileges to look at test entity and configure views.
+   *
+   * @var \Drupal\user\Entity\User|false
+   *
+   * @see \Drupal\Tests\user\Traits\UserCreationTrait::createUser
    */
   protected $adminUser;
 
diff --git a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
index 80d3e0b02b883f67bf9379631b7b15392c02f4b1..bf466727ee474e61bfa67b39dc16eaaf53ef7c29 100644
--- a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
@@ -55,6 +55,8 @@ class StyleSerializerTest extends ViewTestBase {
 
   /**
    * A user with administrative privileges to look at test entity and configure views.
+   *
+   * @var \Drupal\user\Entity\User|false
    */
   protected $adminUser;
 
diff --git a/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php b/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
index 31622c35a841d5ebf24c3eed84dd948656f12b4d..6146355d878104d28854873c097ad68f37dc40d8 100644
--- a/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
+++ b/core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
@@ -42,6 +42,8 @@ class Connection extends DatabaseConnection implements SupportsTemporaryTablesIn
    * A map of condition operators to SQLite operators.
    *
    * We don't want to override any of the defaults.
+   *
+   * @var string[][]
    */
   protected static $sqliteConditionOperatorMap = [
     'LIKE' => ['postfix' => " ESCAPE '\\'"],
diff --git a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
index 52d57eacee6fc687bd19e719389732345adad0da..4b38d0277d153d6dad1138b29b06db5b3ea01387 100644
--- a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
+++ b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
@@ -17,6 +17,8 @@ class DrupalDateTimeTest extends BrowserTestBase {
 
   /**
    * Set up required modules.
+   *
+   * @var string[]
    */
   protected static $modules = [];
 
diff --git a/core/modules/user/src/Plugin/views/wizard/Users.php b/core/modules/user/src/Plugin/views/wizard/Users.php
index af8e3d178b9ec0d680c5cc2ff5cf44a2a53aceea..963f5c16b5922abd75a3cb2e4b4c2ad09c2e0ebc 100644
--- a/core/modules/user/src/Plugin/views/wizard/Users.php
+++ b/core/modules/user/src/Plugin/views/wizard/Users.php
@@ -29,6 +29,8 @@ class Users extends WizardPluginBase {
 
   /**
    * Set default values for the filters.
+   *
+   * @var string[]
    */
   protected $filters = [
     'status' => [
diff --git a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
index c63dab1e953852e508467a8a29355fd7373f8b23..c10ba31bf76fd5e9f67762128542063faf8e2315 100644
--- a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
+++ b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
@@ -30,6 +30,8 @@ abstract class CachePluginBase extends PluginBase {
 
   /**
    * Contains all data that should be written/read from cache.
+   *
+   * @var array
    */
   public $storage = [];
 
diff --git a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
index 1a844105ca82887905534327d9480e5e533efe6a..f817f88fb137a5d00e095de7e452cd50ced3adf1 100644
--- a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
+++ b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
@@ -68,6 +68,8 @@ abstract class FilterPluginBase extends HandlerBase implements CacheableDependen
    *
    * Contains the actual value of the field,either configured in the views ui
    * or entered in the exposed filters.
+   *
+   * @var mixed
    */
   public $value = NULL;
 
@@ -80,26 +82,31 @@ abstract class FilterPluginBase extends HandlerBase implements CacheableDependen
 
   /**
    * Contains the information of the selected item in a grouped filter.
+   *
+   * @var array
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $group_info = NULL;
 
   /**
-   * @var bool
    * Disable the possibility to force a single value.
+   *
+   * @var bool
    */
   protected $alwaysMultiple = FALSE;
 
   /**
-   * @var bool
    * Disable the possibility to use operators.
+   *
+   * @var bool
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $no_operator = FALSE;
 
   /**
-   * @var bool
    * Disable the possibility to allow an exposed input to be optional.
+   *
+   * @var bool
    */
   // phpcs:ignore Drupal.NamingConventions.ValidVariableName.LowerCamelName
   public $always_required = FALSE;
diff --git a/core/modules/views/src/Plugin/views/query/MysqlDateSql.php b/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
index 07ea4c4a38ae0001f10ed732309b63aba9a7ecf5..53e1289e4ccd2b671e01276fdd77b6d20bb0cc53 100644
--- a/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
+++ b/core/modules/views/src/Plugin/views/query/MysqlDateSql.php
@@ -23,6 +23,8 @@ class MysqlDateSql implements DateSqlInterface {
 
   /**
    * An array of PHP-to-MySQL replacement patterns.
+   *
+   * @var string[]
    */
   protected static $replace = [
     'Y' => '%Y',
diff --git a/core/modules/views/src/Plugin/views/query/Sql.php b/core/modules/views/src/Plugin/views/query/Sql.php
index 4c89174575cff3d0833e5fc5fb9573a5e65a6a54..c66cf479db066a230fb6f8a105e9c55d5a345921 100644
--- a/core/modules/views/src/Plugin/views/query/Sql.php
+++ b/core/modules/views/src/Plugin/views/query/Sql.php
@@ -33,11 +33,15 @@ class Sql extends QueryPluginBase {
 
   /**
    * A list of tables in the order they should be added, keyed by alias.
+   *
+   * @var array
    */
   protected $tableQueue = [];
 
   /**
    * Holds an array of tables and counts added so that we can create aliases.
+   *
+   * @var array
    */
   public $tables = [];
 
@@ -46,6 +50,8 @@ class Sql extends QueryPluginBase {
    *
    * These are aliases of the primary table that represent different ways to
    * join the same table in.
+   *
+   * @var array
    */
   public $relationships = [];
 
@@ -54,6 +60,8 @@ class Sql extends QueryPluginBase {
    *
    * Each section is in itself an array of pieces and a flag as to whether or
    * not it should be AND or OR.
+   *
+   * @var array
    */
 
   public $where = [];
@@ -62,22 +70,30 @@ class Sql extends QueryPluginBase {
    *
    * Each section is in itself an array of pieces and a flag as to whether or
    * not it should be AND or OR.
+   *
+   * @var array
    */
   public $having = [];
 
   /**
    * A simple array of order by clauses.
+   *
+   * @var array
    */
   public $orderby = [];
 
   /**
    * A simple array of group by clauses.
+   *
+   * @var array
    */
   public $groupby = [];
 
 
   /**
    * An array of fields.
+   *
+   * @var array
    */
   public $fields = [];
 
@@ -95,16 +111,22 @@ class Sql extends QueryPluginBase {
 
   /**
    * Should this query be optimized for counts, for example no sorts.
+   *
+   * @var bool|null
    */
   protected $getCountOptimized = NULL;
 
   /**
    * An array mapping table aliases and field names to field aliases.
+   *
+   * @var array
    */
   protected $fieldAliases = [];
 
   /**
    * Query tags which will be passed over to the dbtng query object.
+   *
+   * @var array
    */
   public $tags = [];
 
diff --git a/core/modules/views/src/Plugin/views/style/StylePluginBase.php b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
index 8acb4e87f43b5d887f36aca166cc6de190af424d..d73136e7811460b574c54ba786da3d5643405f76 100644
--- a/core/modules/views/src/Plugin/views/style/StylePluginBase.php
+++ b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
@@ -46,6 +46,8 @@ abstract class StylePluginBase extends PluginBase {
 
   /**
    * Store all available tokens row rows.
+   *
+   * @var array
    */
   protected $rowTokens = [];
 
diff --git a/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php b/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
index 0b2d9dcee1e8572d283846b276663dd48ac64cb5..dfd526fd434856ed5b0c3471402f70a65c733c77 100644
--- a/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
+++ b/core/tests/Drupal/FunctionalTests/Installer/InstallerConfigDirectoryTestBase.php
@@ -17,11 +17,13 @@ abstract class InstallerConfigDirectoryTestBase extends InstallerTestBase {
    * This is set by the profile in the core.extension extracted.
    *
    * If set to FALSE, then the install will proceed without an install profile.
+   *
+   * @var string|null|bool
    */
   protected $profile = NULL;
 
   /**
-   * @todo Fill out docblock.
+   * @var bool
    */
   protected $existingSyncDirectory = FALSE;
 
diff --git a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
index dcb2629dbe2d0ce3696f11390a678ee32360ec3c..cce98595b3614e27efcf774c25b4d0a38668f966 100644
--- a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
+++ b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase.php
@@ -50,6 +50,8 @@ abstract class UpdatePathTestBase extends BrowserTestBase {
 
   /**
    * Modules to install after the database is loaded.
+   *
+   * @var string[]
    */
   protected static $modules = [];
 
diff --git a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
index 31340bf472928573c34680ebd826514494c8a1f7..5c3f95837cba1599facdabbfa6955689cf1513d6 100644
--- a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
@@ -79,7 +79,7 @@ class AssetResolverTest extends UnitTestCase {
   /**
    * An array of library definitions.
    */
-  protected $libraries = [];
+  protected array $libraries = [];
 
   /**
    * {@inheritdoc}