import dayjs from 'dayjs'; import type { BookingTicketHandle, ILoadProductsParams, ScanOrderTempOrder } from '../types'; /** 与 SalesSdkProvider bootstrap 对齐的 board config 默认查询参数。 */ export declare const DEFAULT_BOOKING_CONFIG_PARAMS: { item_type: string; }; export declare type InitBookingContextParams = NonNullable>[0]>; /** 从 tempOrder.bookings 提取编辑态容量排除用的 booking id。 */ export declare function collectBookingIdsFromTempOrder(tempOrder: ScanOrderTempOrder | null): number[]; /** 构造与 Provider bootstrap 一致的 initBookingContext 入参。 */ export declare function buildInitBookingContextParams(bookingConfigParams?: Record, options?: { date?: dayjs.Dayjs; bookingIds?: number[]; loadResources?: boolean; }): InitBookingContextParams; /** 将 board `menu_list_tab.menu_list` 规范为 number[]。 */ export declare function normalizeMenuListIds(raw: unknown): number[]; /** * 从 BookingContext / boardConfig 推导 loadProducts 默认参数。 * 与 ticketBooking `_getProducts` 对齐:日期取自 BookingContext,餐牌取自 board config。 */ export declare function buildDefaultLoadProductsParams(bookingTicket: BookingTicketHandle | null | undefined): ILoadProductsParams; /** 外部 override 覆盖默认值;undefined 字段不冲掉 default。 */ export declare function mergeLoadProductsParams(defaults: ILoadProductsParams, override?: ILoadProductsParams): ILoadProductsParams; /** * loadProducts 前确保 boardConfig 已就绪;缺省时补拉 config(不强制拉 resources)。 * 须传入与 Provider bootstrap 等价的 init 入参,避免裸调 OS 时使用错误 bookingConfigParams。 */ export declare function ensureBookingConfigForLoad(bookingTicket: BookingTicketHandle, initParams: InitBookingContextParams): Promise;