package products

import (
	"context"
	"sipro-mps/internal/marketplace"
)

type Repository interface {
	GetAllProducts(ctx context.Context, marketplaceId int) ([]WbProduct, error)
	StreamAllProducts(ctx context.Context, marketplaceId int, resultChan chan<- []WbProduct, errChan chan<- error)
	StreamAllProductsCache(ctx context.Context, marketplaceId int, resultChan chan<- []PbProduct, errChan chan<- error)
	ParseMarketplace(ctx context.Context, marketplaceId int) (*marketplace.Marketplace, string, error)
}
