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