import type { SalesSdkCartBookingView } from '../types'; import { formatHolderOptions, type SalesSdkHolderOption } from './formatHolderOptions'; import { type ResolvedProductHolderConfig } from './productHolderConfig'; export interface HolderDisplayConfig { isFormSubject: boolean; holderType: string; holderConfig?: ResolvedProductHolderConfig; } /** * 从 bookingConfig 解析 Holder 展示相关开关(整单单一 config)。 */ export declare function resolveHolderDisplayConfig(bookingConfig: Record | null | undefined, source?: unknown): HolderDisplayConfig; /** * 从 booking 行归一化 holder_id(与 LineItem Holders 读取路径一致)。 */ export declare function pickHolderIdFromBooking(booking: Record): unknown; /** * 为购物车 booking 行附加 Holder 展示字段(仅 UI,不写 OS)。 */ export declare function enrichCartBookingHolderDisplay(booking: SalesSdkCartBookingView, ctx: { holderOptions: SalesSdkHolderOption[]; displayConfig?: HolderDisplayConfig; bookingConfig?: Record | null; }): SalesSdkCartBookingView; /** * 构建 getPetsData 请求参数(与 useBookingEditPetState 对齐)。 */ export declare function buildHolderListRequestParams(input: { bookingConfig: Record | null | undefined; customerId?: number | string | null; source?: unknown; }): Record | null; /** * 构建 Holder 列表请求缓存 key,保证只有同一 form/customer 参数才复用缓存。 */ export declare function buildHolderListRequestKey(params: Record | null | undefined): string | null; export { formatHolderOptions };