public function checkTypeExists(array &$options)
    {
        //if an improper value was supplied
        if (!array_key_exists($options['type'], $this->fieldTypes)) {
            throw new \InvalidArgumentException('The '.$options['type'].' field type in your '.$this->config->getOption('name').' configuration file is not valid');
        }

        //if this is a settings page and a field was supplied that is excluded
        if ($this->config->getType() === 'settings' && in_array($options['type'], $this->settingsFieldExclusions)) {
            throw new \InvalidArgumentException('The '.$options['type'].' field in your '.
                            $this->config->getOption('name').' settings page cannot be used on a settings page');
        }
    }