import { IkasCategory } from "../category"; import { IkasProductVariant } from "./variant"; import { IkasProductAttributeValue } from "./attribute-value"; import { IkasProductVariantType } from "./variant-type"; import { IkasBrand } from "../brand"; import { IkasHTMLMetaData } from "../html-meta-data"; import { IkasProductTag } from "./tag"; import { IkasVariantValue } from "../variant-type/variant-value"; import { IkasVariantType } from "../variant-type"; import { IkasProductBaseUnit } from "./base-unit"; import { IkasProductStar } from "./star"; import { IkasProductCampaign } from "./campaign"; import { IkasProductCampaignOffer } from "./campaign-offer"; import { IkasProductGroup } from "./group"; import { IkasProductSalesChannel } from "./sales-channel"; import { IkasProductTranslation } from "./translations"; export declare type IkasProduct = { id: string; name: string; type: IkasProductType; description: string; shortDescription: string; metaData: IkasHTMLMetaData | null; brand: IkasBrand | null; campaigns?: IkasProductCampaign[] | null; categories: IkasCategory[]; deleted: boolean | null; tags: IkasProductTag[] | null; variants: IkasProductVariant[]; attributes: IkasProductAttributeValue[]; variantTypes: IkasProductVariantType[]; productOptionSetId: string | null; baseUnit: IkasProductBaseUnit | null; averageRating: number | null; reviewCount: number | null; stars: IkasProductStar[] | null; groupVariantsByVariantTypeId: string | null; dynamicPriceListIds: string[] | null; productVolumeDiscountId: string | null; campaignOffers: IkasProductCampaignOffer[] | null; productGroup: IkasProductGroup | null; salesChannels: IkasProductSalesChannel[] | null; translations?: IkasProductTranslation[] | null; }; export declare enum IkasProductType { PHYSICAL = "PHYSICAL", DIGITAL = "DIGITAL", MEMBERSHIP = "MEMBERSHIP" } export declare type IkasDisplayedVariantValue = { variant: IkasProductVariant; variantValue: IkasVariantValue; hasStock: boolean; isSelected: boolean; }; export declare type IkasDisplayedVariantType = { variantType: IkasVariantType; displayedVariantValues: IkasDisplayedVariantValue[]; }; export declare type IkasAppliedCampaignOffer = { campaignOfferId: string; title: string | null; description: string | null; };