package com.caliverse.admin.dynamodb.repository;

import com.caliverse.admin.domain.entity.EFilterOperator;
import com.caliverse.admin.dynamodb.domain.doc.ItemDoc;
import com.caliverse.admin.dynamodb.dto.PageResult;
import software.amazon.awssdk.services.dynamodb.model.AttributeValue;

import java.util.Map;

public interface ItemRepository extends DynamoDBRepository<ItemDoc> {
    PageResult<ItemDoc> getItemListWithPaging(
            String userGuid,
            String sortKeyPrefix,
            String filterAttributeName,
            EFilterOperator filterOperator,
            String filterAttributeValue,
            Map<String, AttributeValue> exclusiveStartKey,
            boolean sortIndex
    );
    void updateItemStack(String guid, String itemGuid, int stackCount);
    void deleteItem(String userGuid, String itemGuid);

}
