import { AbstractEntity } from '../../abstractEntity'; export declare enum ItemAdditionalDataFields { NAME = "name", VALUE = "value" } export declare type ItemAdditionalDataType = { [ItemAdditionalDataFields.NAME]: string; [ItemAdditionalDataFields.VALUE]: string; }; export declare type PricingRuleType = { rateType: 'discount' | 'uplift' | 'fixedPrice'; value: number; }; export declare enum ItemFields { ADDITIONAL_DATA = "additionalData", BASE_PRICE_BANDS = "basePriceBands", BUNDLE_ARROWSPHERE_SKU = "bundleArrowSphereSku", COTERM_PRICES = "cotermPrices", COTERM_PRICES_WITHOUT_PROMOTION = "cotermPricesWithoutPromotion", CURRENCY = "currency", IS_ADDON = "isAddon", IS_BUNDLE = "isBundle", IS_TRIAL = "isTrial", ITEM_ID = "itemId", OFFER_NAME = "offerName", PRICE_BAND_ARROWSPHERE_SKU = "priceBandArrowsphereSku", PRICE_BAND_VENDOR_SKU = "pricebandVendorSku", PRICES = "prices", PRICES_WITHOUT_PROMOTION = "pricesWithoutPromotion", QUANTITY = "quantity", RULES = "rules" } export declare type ItemType = { [ItemFields.ADDITIONAL_DATA]?: ItemAdditionalDataType[] | undefined; [ItemFields.COTERM_PRICES]?: Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; [ItemFields.COTERM_PRICES_WITHOUT_PROMOTION]?: Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; [ItemFields.CURRENCY]?: string; [ItemFields.IS_ADDON]?: boolean; [ItemFields.IS_BUNDLE]?: boolean | undefined; [ItemFields.IS_TRIAL]?: boolean; [ItemFields.ITEM_ID]: string; [ItemFields.OFFER_NAME]: string; [ItemFields.PRICE_BAND_ARROWSPHERE_SKU]: string; [ItemFields.PRICE_BAND_VENDOR_SKU]?: string; [ItemFields.PRICES]?: Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; [ItemFields.PRICES_WITHOUT_PROMOTION]?: Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; [ItemFields.QUANTITY]: number; [ItemFields.RULES]?: Record | undefined; [ItemFields.BUNDLE_ARROWSPHERE_SKU]?: string | undefined; [ItemFields.BASE_PRICE_BANDS]?: ItemType[] | undefined; }; export declare class Item extends AbstractEntity { #private; constructor(itemResponse: ItemType); get additionalData(): ItemAdditionalDataType[] | undefined; get cotermPrices(): Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; get cotermPricesWithoutPromotion(): Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; get currency(): string | undefined; get isAddon(): boolean | undefined; get isBundle(): boolean | undefined; get isTrial(): boolean | undefined; get itemId(): string; get offerName(): string; get priceBandArrowsphereSku(): string; get pricebandVendorSku(): string | undefined; get prices(): Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; get pricesWithoutPromotion(): Record<'arrow' | 'partner' | 'endCustomer' | 'retail', number> | undefined; get quantity(): number; get rules(): Record | undefined; get bundleArrowSphereSku(): string | undefined; get basePriceBands(): Item[] | undefined; toJSON(): ItemType; }