import type { CommerceEngineState } from '../../../../app/commerce-engine/commerce-engine.js';
import { type CartActionDetails, type Transaction } from './cart-selector.js';
import type { CartItemWithMetadata } from './cart-state.js';
export type SetItemsPayload = CartItemWithMetadata[];
export declare const setItems: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: SetItemsPayload], SetItemsPayload, "commerce/cart/setItems", never, never>;
export type UpdateItemQuantityPayload = CartItemWithMetadata;
export declare const updateItemQuantity: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: CartItemWithMetadata], CartItemWithMetadata, "commerce/cart/updateItemQuantity", never, never>;
export declare const purchase: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"commerce/cart/purchase">;
export type PurchasePayload = Transaction;
export declare const emitPurchaseEvent: import("@reduxjs/toolkit").AsyncThunk<void, Transaction, {
    state: CommerceEngineState;
    rejectValue: import("../../../../api/commerce/commerce-api-error-response.js").CommerceAPIErrorStatusResponse;
    extra: import("../../../../app/commerce-thunk-extra-arguments.js").CommerceThunkExtraArguments;
    dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction> | undefined;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export type CartActionPayload = CartActionDetails;
export declare const emitCartActionEvent: import("@reduxjs/toolkit").AsyncThunk<void, CartActionDetails, {
    state: CommerceEngineState;
    rejectValue: import("../../../../api/commerce/commerce-api-error-response.js").CommerceAPIErrorStatusResponse;
    extra: import("../../../../app/commerce-thunk-extra-arguments.js").CommerceThunkExtraArguments;
    dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction> | undefined;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
