public function checkPresence(array $keys, bool $throwException = true): array
    {
        $missingKeys = [];

        foreach ($keys as $key) {
            if (!array_key_exists($key, $this->data)) {
                $missingKeys[] = $key;
            }
        }

        if ($throwException && count($missingKeys) > 0) {
            $missingKeys = implode(', ', $missingKeys);
            throw new ConfigException("Following keys are missing in {$this}: {$missingKeys}");
        }

        return $missingKeys;
    }