/// <summary>
        /// Registers the MongoDB stores services in the DI container and
        /// configures OpenIddict to use the MongoDB entities by default.
        /// </summary>
        /// <param name="builder">The services builder used by OpenIddict to register new services.</param>
        /// <param name="configuration">The configuration delegate used to configure the MongoDB services.</param>
        /// <remarks>This extension can be safely called multiple times.</remarks>
        /// <returns>The <see cref="OpenIddictCoreBuilder"/>.</returns>
        public static OpenIddictCoreBuilder UseCouchDb(
            this OpenIddictCoreBuilder builder, Action <CouchDbOpenIddictBuilder> configuration)
        {
            Check.NotNull(builder, nameof(builder));
            Check.NotNull(configuration, nameof(configuration));

            configuration(builder.UseCouchDb());

            return(builder);
        }