public static <K, V> StoreBuilder<VersionedKeyValueStore<K, V>> versionedKeyValueStoreBuilder(final VersionedBytesStoreSupplier supplier,
                                                                                                  final Serde<K> keySerde,
                                                                                                  final Serde<V> valueSerde) {
        Objects.requireNonNull(supplier, "supplier cannot be null");
        return new VersionedKeyValueStoreBuilder<>(supplier, keySerde, valueSerde, Time.SYSTEM);
    }
Creates a {@link StoreBuilder} that can be used to build a {@link VersionedKeyValueStore}.

@param supplier   a {@link VersionedBytesStoreSupplier} (cannot be {@code null})
@param keySerde   the key serde to use
@param valueSerde the value serde to use; if the serialized bytes is {@code null} for put operations,
                  it is treated as a deletion
@param <K>        key type
@param <V>        value type
@return an instance of a {@link StoreBuilder} that can build a {@link VersionedKeyValueStore}
streams/src/main/java/org/apache/kafka/streams/state/Stores.java