Try your search with a different keyword or use * as a wildcard.
using Nop.Core;
using Nop.Core.Domain.Catalog;
namespace Nop.Services.Catalog;
///
/// Specification attribute service interface
///
public partial interface ISpecificationAttributeService
{
#region Specification attribute group
///
/// Gets a specification attribute group
///
/// The specification attribute group identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute group
///
Task GetSpecificationAttributeGroupByIdAsync(int specificationAttributeGroupId);
///
/// Gets specification attribute groups
///
/// Page index
/// Page size
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute groups
///
Task> GetSpecificationAttributeGroupsAsync(int pageIndex = 0, int pageSize = int.MaxValue);
///
/// Gets product specification attribute groups
///
/// Product identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute groups
///
Task> GetProductSpecificationAttributeGroupsAsync(int productId);
///
/// Deletes a specification attribute group
///
/// The specification attribute group
/// A task that represents the asynchronous operation
Task DeleteSpecificationAttributeGroupAsync(SpecificationAttributeGroup specificationAttributeGroup);
///
/// Inserts a specification attribute group
///
/// The specification attribute group
/// A task that represents the asynchronous operation
Task InsertSpecificationAttributeGroupAsync(SpecificationAttributeGroup specificationAttributeGroup);
///
/// Updates the specification attribute group
///
/// The specification attribute group
/// A task that represents the asynchronous operation
Task UpdateSpecificationAttributeGroupAsync(SpecificationAttributeGroup specificationAttributeGroup);
#endregion
#region Specification attribute
///
/// Gets a specification attribute
///
/// The specification attribute identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute
///
Task GetSpecificationAttributeByIdAsync(int specificationAttributeId);
///
/// Gets specification attributes
///
/// The specification attribute identifiers
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attributes
///
Task> GetSpecificationAttributeByIdsAsync(int[] specificationAttributeIds);
///
/// Gets specification attributes
///
/// Page index
/// Page size
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attributes
///
Task> GetSpecificationAttributesAsync(int pageIndex = 0, int pageSize = int.MaxValue);
///
/// Gets specification attributes that have options
///
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attributes that have available options
///
Task> GetSpecificationAttributesWithOptionsAsync();
///
/// Gets specification attributes by group identifier
///
/// The specification attribute group identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attributes
///
Task> GetSpecificationAttributesByGroupIdAsync(int? specificationAttributeGroupId = null);
///
/// Deletes a specification attribute
///
/// The specification attribute
/// A task that represents the asynchronous operation
Task DeleteSpecificationAttributeAsync(SpecificationAttribute specificationAttribute);
///
/// Deletes specifications attributes
///
/// Specification attributes
/// A task that represents the asynchronous operation
Task DeleteSpecificationAttributesAsync(IList specificationAttributes);
///
/// Inserts a specification attribute
///
/// The specification attribute
/// A task that represents the asynchronous operation
Task InsertSpecificationAttributeAsync(SpecificationAttribute specificationAttribute);
///
/// Updates the specification attribute
///
/// The specification attribute
/// A task that represents the asynchronous operation
Task UpdateSpecificationAttributeAsync(SpecificationAttribute specificationAttribute);
#endregion
#region Specification attribute option
///
/// Gets a specification attribute option
///
/// The specification attribute option
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute option
///
Task GetSpecificationAttributeOptionByIdAsync(int specificationAttributeOption);
///
/// Get specification attribute options by identifiers
///
/// Identifiers
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute options
///
Task> GetSpecificationAttributeOptionsByIdsAsync(int[] specificationAttributeOptionIds);
///
/// Gets a specification attribute option by specification attribute id
///
/// The specification attribute identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute option
///
Task> GetSpecificationAttributeOptionsBySpecificationAttributeAsync(int specificationAttributeId);
///
/// Deletes a specification attribute option
///
/// The specification attribute option
/// A task that represents the asynchronous operation
Task DeleteSpecificationAttributeOptionAsync(SpecificationAttributeOption specificationAttributeOption);
///
/// Inserts a specification attribute option
///
/// The specification attribute option
/// A task that represents the asynchronous operation
Task InsertSpecificationAttributeOptionAsync(SpecificationAttributeOption specificationAttributeOption);
///
/// Updates the specification attribute
///
/// The specification attribute option
/// A task that represents the asynchronous operation
Task UpdateSpecificationAttributeOptionAsync(SpecificationAttributeOption specificationAttributeOption);
///
/// Returns a list of IDs of not existing specification attribute options
///
/// The IDs of the attribute options to check
///
/// A task that represents the asynchronous operation
/// The task result contains the list of IDs not existing specification attribute options
///
Task GetNotExistingSpecificationAttributeOptionsAsync(int[] attributeOptionIds);
///
/// Gets the filtrable specification attribute options by category id
///
/// The category id
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute options
///
Task> GetFiltrableSpecificationAttributeOptionsByCategoryIdAsync(int categoryId);
///
/// Gets the filtrable specification attribute options by manufacturer id
///
/// The manufacturer id
///
/// A task that represents the asynchronous operation
/// The task result contains the specification attribute options
///
Task> GetFiltrableSpecificationAttributeOptionsByManufacturerIdAsync(int manufacturerId);
#endregion
#region Product specification attribute
///
/// Deletes a product specification attribute mapping
///
/// Product specification attribute
/// A task that represents the asynchronous operation
Task DeleteProductSpecificationAttributeAsync(ProductSpecificationAttribute productSpecificationAttribute);
///
/// Gets a product specification attribute mapping collection
///
/// Product identifier; 0 to load all records
/// Specification attribute option identifier; 0 to load all records
/// 0 to load attributes with AllowFiltering set to false, 1 to load attributes with AllowFiltering set to true, null to load all attributes
/// 0 to load attributes with ShowOnProductPage set to false, 1 to load attributes with ShowOnProductPage set to true, null to load all attributes
/// Specification attribute group identifier; 0 to load all records; null to load attributes without group
///
/// A task that represents the asynchronous operation
/// The task result contains the product specification attribute mapping collection
///
Task> GetProductSpecificationAttributesAsync(int productId = 0,
int specificationAttributeOptionId = 0, bool? allowFiltering = null, bool? showOnProductPage = null, int? specificationAttributeGroupId = 0);
///
/// Gets a product specification attribute mapping
///
/// Product specification attribute mapping identifier
///
/// A task that represents the asynchronous operation
/// The task result contains the product specification attribute mapping
///
Task GetProductSpecificationAttributeByIdAsync(int productSpecificationAttributeId);
///
/// Inserts a product specification attribute mapping
///
/// Product specification attribute mapping
/// A task that represents the asynchronous operation
Task InsertProductSpecificationAttributeAsync(ProductSpecificationAttribute productSpecificationAttribute);
///
/// Updates the product specification attribute mapping
///
/// Product specification attribute mapping
/// A task that represents the asynchronous operation
Task UpdateProductSpecificationAttributeAsync(ProductSpecificationAttribute productSpecificationAttribute);
///
/// Gets a count of product specification attribute mapping records
///
/// Product identifier; 0 to load all records
/// The specification attribute option identifier; 0 to load all records
///
/// A task that represents the asynchronous operation
/// The task result contains the count
///
Task GetProductSpecificationAttributeCountAsync(int productId = 0, int specificationAttributeOptionId = 0);
///
/// Get mapped products for specification attribute
///
/// The specification attribute identifier
/// Page index
/// Page size
///
/// A task that represents the asynchronous operation
/// The task result contains the products
///
Task> GetProductsBySpecificationAttributeIdAsync(int specificationAttributeId, int pageIndex, int pageSize);
#endregion
}