import { IkasProductOffer } from "../../../storefront-models/src"; /** * Checks whether the product offer is already in the cart as an ACCEPTED campaign offer for the * PRODUCT target page type. This is a **cart-state check** and is independent of * `productOffer.isSelected` (the UI toggle state set by `acceptProductOffer`). Use it to disable * the selection UI and show an "already in cart" state when the offer has been added. * * Example state combinations: * - `isSelected=true`, `isAcceptedProductOffer=false` — user selected it in UI, not yet in cart * - `isSelected=true`, `isAcceptedProductOffer=true` — selected AND in cart (disable toggle) * - `isSelected=false`, `isAcceptedProductOffer=false` — deselected, not in cart * * @ai-category CampaignOffer * @ai-related acceptProductOffer, rejectProductOffer * * @param productOffer - The product offer to check. * @returns True if the offer's campaign offer is in the cart as ACCEPTED for PRODUCT target page type, false otherwise. * * @example * ```typescript * import { isAcceptedProductOffer } from "@ikas/bp-storefront"; * * const accepted = isAcceptedProductOffer(productOffer); * if (accepted) { * console.log("Offer has been accepted."); * } * ``` */ export declare function isAcceptedProductOffer(productOffer: IkasProductOffer): boolean; /** * Sets `productOffer.isSelected = true` — a **UI toggle** marking the offer as selected by the * user. This does NOT add the offer to the cart; cart inclusion happens through the add-to-cart * flow. See `isAcceptedProductOffer` for the independent cart-state check. * * @ai-category CampaignOffer * @ai-related isAcceptedProductOffer, rejectProductOffer * * @param productOffer - The product offer to mark as selected in the UI. * @returns void * * @example * ```typescript * import { acceptProductOffer } from "@ikas/bp-storefront"; * * acceptProductOffer(productOffer); * ``` */ export declare function acceptProductOffer(productOffer: IkasProductOffer): void; /** * Rejects a product offer by setting its isSelected flag to false. * * @ai-category CampaignOffer * @ai-related isAcceptedProductOffer, acceptProductOffer * * @param productOffer - The product offer to reject. * @returns void * * @example * ```typescript * import { rejectProductOffer } from "@ikas/bp-storefront"; * * rejectProductOffer(productOffer); * ``` */ export declare function rejectProductOffer(productOffer: IkasProductOffer): void;