@Retention(value=RUNTIME) @Target(value=TYPE) public @interface ProvidedBy
Class<? extends Provider<?>>
value
public abstract Class<? extends Provider<?>> value