import React from 'react';
import type { SalesSdkProviderProps } from '../types';
/**
 * 仅供 SDK 内部 Provider/action 调用：在 OS tempOrder/salesDetail 发生变化但未通过
 * 事件 emit 时（如 cart action 写完 OS），由子 Provider 显式触发顶层重新读快照。
 * 不对外暴露。
 */
export declare const SalesSdkRootRefreshContext: React.Context<(() => void) | null>;
/**
 * Sales SDK 顶层 Provider。
 *
 * 关键点：
 *  - 与 ticketBooking 共享同 osKey 时，`pisellos.getModule(getBookingTicketKey(osKey))` 直接命中
 *    ticketBooking 已注册的 BookingTicket 实例（详见 ticketBooking/index.tsx 的 has-check 注册），
 *    Sales SDK 与 ticketBooking 双方共享 `tempOrder` / `currentSalesDetail` 等核心状态。
 *  - 仅当 `pisellos.getModule(...)` 未命中时才注册新模块，避免重复实例化。
 *  - 不引入 miniRedux；不直接持有 React state 镜像 OS 数据，订阅工作交给子 Provider 内部完成。
 *  - bootstrap actions（loadDetail / createNew / restore / destroy）通过 `useMemoizedFn` 单独包装，
 *    保证单 action 引用稳定（详见 docs.md "Action 引用稳定性纪律"）。
 *  - autoBootstrap：仅当 `orderId` 存在时挂载后自动 loadSalesDetail；不传 orderId 则不会自动
 *    createNew，避免空 osKey 误建 tempOrder（消费方需要时显式调 useSalesSdk().createNew()）。
 */
export declare const SalesSdkProvider: React.FC<SalesSdkProviderProps>;
