// *********************************************************************** // // Core.Inventory // // *********************************************************************** using Core.Adapters.Lib; using Core.Blueprint.Mongo; using Core.Inventory.Domain.Contexts.Inventory.Request; namespace Core.Inventory.Provider.Contracts { /// /// Interface for managing base furniture models. /// public interface IFurnitureBaseProvider { /// /// Creates a new FurnitureBase entity. /// /// The DTO representing the furniture base. /// Cancellation token. /// The created . ValueTask CreateAsync(FurnitureBaseRequest newFurniture, CancellationToken cancellationToken); /// /// Gets a furniture base entity by its ID. /// /// The unique identifier (_id) of the furniture base. /// Cancellation token. /// The corresponding . ValueTask GetByIdAsync(string _id, CancellationToken cancellationToken); /// /// Retrieves all furniture base entries. /// /// Cancellation token. /// A list of . ValueTask> GetAllAsync(CancellationToken cancellationToken); /// /// Updates an existing furniture base by ID. /// /// The furniture base identifier. /// The updated entity data. /// Cancellation token. /// The updated . ValueTask UpdateAsync(string id, FurnitureBase entity, CancellationToken cancellationToken); /// /// Changes the status of a furniture base entity. /// /// The entity identifier. /// The new status to apply. /// Cancellation token. /// The updated . ValueTask ChangeStatusAsync(string _id, StatusEnum newStatus, CancellationToken cancellationToken); } }