import type {
  PriceCalculation,
  PriceCalculationCommand,
  SetVariantPriceCommand,
  VariantPrice,
} from './price.js';

export interface PricingService {
  calculate(input: PriceCalculationCommand): Promise<PriceCalculation>;
  getVariantPrice(variantId: string): Promise<VariantPrice | undefined>;
  setVariantPrice(input: SetVariantPriceCommand): Promise<VariantPrice>;
}

export interface PricingRepository {
  findByVariantId(variantId: string): Promise<VariantPrice | undefined>;
  setVariantPrice(input: SetVariantPriceCommand): Promise<VariantPrice>;
}
