import type { BookingTicketHandle, SalesSdkUIHosts, ScanOrderOrderProduct, ScanOrderTempOrder } from '../../salesSdk/types'; import type { PisellReservationTableRow } from '../types'; export interface SeedDineInReservationToCartInput { /** OS BookingTicket 实例(SalesSdk 内 `useSalesSdk().bookingTicket`)。 */ bookingTicket: BookingTicketHandle; /** dine_in 规则商品(catalog / reservationRuleProduct)。 */ reservationRuleProduct: Record; /** 平面图桌位行。 */ row: PisellReservationTableRow; /** 写入 bookings[].appointment_status,默认 `started`。 */ appointmentStatus?: string; bookingConfig?: Record | null; tempOrder?: ScanOrderTempOrder | null; customerId?: number | string; date?: string; locale?: string; uiHosts?: SalesSdkUIHosts | null; } /** * dine_in 新建:静默把规则商品 + 桌位资源写入 tempOrder(不弹规格 / 资源抽屉)。 * * 流程:`buildServiceItemFromReservationRuleProduct` → `prepareCacheItemForBookingEdit` * → `enrichCacheItemBeforeAdd(mode:'direct')` → `transformDetailToProductAndBooking` * → `addProductToOrder`,并在 booking 上写入 `appointment_status`。 * * @example * await seedDineInReservationToCart({ * bookingTicket: sales.bookingTicket!, * reservationRuleProduct: ruleProduct, * row: tableRow, * appointmentStatus: 'started', * tempOrder: sales.tempOrder, * }); */ export declare function seedDineInReservationToCart(input: SeedDineInReservationToCartInput): Promise;