| Interface | Description | 
|---|---|
| ConfigDef.Recommender | This is used by the  ConfigDef.validate(Map)to get valid values for a configuration given the current
 configuration values in order to perform full configuration validation and visibility modification. | 
| ConfigDef.Validator | Validation logic the user may provide to perform single configuration validation. | 
| Class | Description | 
|---|---|
| AbstractConfig | A convenient base class for configurations to extend. | 
| Config | |
| ConfigDef | This class is used for specifying the set of expected configurations. | 
| ConfigDef.CompositeValidator | |
| ConfigDef.ConfigKey | |
| ConfigDef.NonEmptyString | |
| ConfigDef.NonEmptyStringWithoutControlChars | |
| ConfigDef.NonNullValidator | |
| ConfigDef.Range | Validation logic for numeric ranges | 
| ConfigDef.ValidList | |
| ConfigDef.ValidString | |
| ConfigResource | A class representing resources that have configs. | 
| ConfigValue | |
| SaslConfigs | |
| SslConfigs | |
| TopicConfig | Keys that can be used to configure a topic. | 
| Enum | Description | 
|---|---|
| ConfigDef.Importance | The importance level for a configuration | 
| ConfigDef.Type | The config types | 
| ConfigDef.Width | The width of a configuration value | 
| ConfigResource.Type | Type of resource. | 
| Exception | Description | 
|---|---|
| ConfigException | Thrown if the user supplies an invalid configuration |