This allows plugins to add a 'default provider' (as a `@Secondary`) that can be used when nothing else provides that dependency. For example, Jsonb can have a plugin to use `() -> Jsonb.builder().build()` as a provider like: ```java /** * Plugin for avaje inject that provides a default Jsonb instance. */ public final class DefaultJsonbProvider implements io.avaje.inject.spi.Plugin { @Override public Class<?>[] provides() { return new Class<?>[]{Jsonb.class}; } @Override public void apply(BeanScopeBuilder builder) { builder.provideDefault(Jsonb.class, () -> Jsonb.builder().build()); } } ```