import { LineItemFieldCreate } from "./graphql/types"; export interface CartChangeOperation { kind: "change"; variantID: string; variant: Variant | undefined; quantityDelta: number; fieldSetID?: string; fields?: LineItemFieldCreate[]; subscriptionPlanIndex?: number; } export interface CartSetOperation { kind: "set"; variantID: string; variant: Variant | undefined; quantity: number; fieldSetID?: string; fields?: LineItemFieldCreate[]; subscriptionPlanIndex?: number; } export interface CartRemoveOperation { kind: "remove"; variantID: string; } export declare type CartOperation = CartChangeOperation | CartSetOperation | CartRemoveOperation; export declare function filterOutNonCreateOpertions(ops: CartOperation[]): CartSetOperation[]; export declare function compactCartOperations(operations: CartOperation[]): CartOperation[];