| Interface | Description | 
|---|---|
| AnnotationBuilder<O> | Interface for building an  Object. | 
| AnnotationConfigurer<O,B extends AnnotationBuilder<O>> | Allows for configuring an  AnnotationBuilder. | 
| AnnotationConfigurerBuilder<I> | Interface for wrapping a return type from  AnnotationConfigurerintoAnnotationBuilder. | 
| ObjectPostProcessor<T> | Allows initialization of Objects. | 
| Class | Description | 
|---|---|
| AbstractAnnotationBuilder<O> | A base  AnnotationBuilderthat ensures the object being built is only
 built one time. | 
| AbstractAnnotationConfiguration<B extends AnnotationBuilder<O>,O> | Base implementation of @ class. | 
| AbstractConfiguredAnnotationBuilder<O,I,B extends AnnotationBuilder<O>> | A base  AnnotationBuilderthat allowsAnnotationConfigurers to be
 applied to it. | 
| AnnotationConfigurerAdapter<O,I,B extends AnnotationBuilder<O>> | A base class for  AnnotationConfigurerthat allows subclasses to only
 implement the methods they are interested in. | 
| Annotation Type | Description | 
|---|---|
| EnableAnnotationConfiguration | Base annotation used in JavaConfig order to enable
 some base functionality. |