---
displayed_sidebar: servicesSidebar
---
import ParameterTypes from "@site/src/components/ParameterTypes"
# IPriceSelectionStrategy
## Methods
### calculateVariantPrice
`**calculateVariantPrice**(data, context): Promise<Map<string, [PriceSelectionResult](../types/PriceSelectionResult.mdx)>>`
Calculate the original and discount price for a given variant in a set of
circumstances described in the context.
#### Parameters
#### Returns
Promise<Map<string, [PriceSelectionResult](../types/PriceSelectionResult.mdx)>>
___
### onVariantsPricesUpdate
`**onVariantsPricesUpdate**(variantIds): Promise<void>`
Notify price selection strategy that variants prices have been updated.
#### Parameters
#### Returns
Promise<void>
___
### withTransaction
`**withTransaction**(transactionManager?): [IPriceSelectionStrategy](IPriceSelectionStrategy.mdx)`
#### Parameters
#### Returns
[IPriceSelectionStrategy](IPriceSelectionStrategy.mdx)