namespace Prefab.Catalog.Data;
///
/// Provides factory methods that create catalog module database contexts on demand.
///
public interface ICatalogDbContextFactory
{
///
/// Creates a new writable catalog database context instance for the current operation.
///
/// Token used to cancel context creation.
/// An instance that must be disposed by the caller.
ValueTask CreateWritableAsync(CancellationToken cancellationToken = default);
///
/// Creates a new read-only catalog database context instance for the current operation.
///
/// Token used to cancel context creation.
/// An instance that must be disposed by the caller.
ValueTask CreateReadOnlyAsync(CancellationToken cancellationToken = default);
}