import type { BookingTicketHandle, ScanOrderTempOrder, SalesSdkUIHosts, UpdateOrderProductParams } from '../types';
import type { UnassignedHolderLine } from './holderSubmitValidation';
export interface AssignHolderToCartLineParams {
    line: UnassignedHolderLine;
    bookingTicket: BookingTicketHandle;
    tempOrder: ScanOrderTempOrder | null;
    /** 与 editCartLineBooking 一致，走 CartProvider 刷新快照 */
    updateItem?: (params: UpdateOrderProductParams) => Promise<unknown>;
    /** 实例级 Holder Host；未传时无法打开选择弹窗 */
    openHolderSelect?: NonNullable<SalesSdkUIHosts['openHolderSelect']>;
    /** 写回 OS 后刷新 SDK 快照 */
    onMutate?: () => void;
}
/**
 * 为已加车预约行分配 holder：打开 Holder Host → transform → updateOrderProduct。
 *
 * @example
 * await assignHolderToCartLine({ line, bookingTicket, tempOrder, updateItem: cart.updateItem });
 */
export declare function assignHolderToCartLine(params: AssignHolderToCartLineParams): Promise<boolean>;
/**
 * 包装 assignHolderToCartLine，捕获写回失败并提示。
 *
 * @example
 * await assignHolderToCartLineWithFeedback({ line, bookingTicket, tempOrder, updateItem });
 */
export declare function assignHolderToCartLineWithFeedback(params: AssignHolderToCartLineParams): Promise<boolean>;
