public static function getByType(string $type, string $field, $table = '', array $options = []) : ConfigInterface
    {
        $configClass = __NAMESPACE__ . '\\' . ucfirst($type) . 'Config';
        if (!class_exists($configClass)) {
            throw new InvalidArgumentException("Configuration type [$type] is not supported");
        }

        $result = new $configClass($field, $table, $options);

        return $result;
    }