import type { FloorMapViewConfig } from '../types';
export declare type WrapFloorMapOnSaveWithRemotePersistParams = {
    /** 与预约页一致：id 有效且为有限正整数 */
    canPersist: boolean;
    persistTargetId: number;
    /** 写入远端（如 PUT shop floor-plan） */
    persist: (id: number, config: FloorMapViewConfig) => Promise<unknown>;
    /** 成功后将草稿同步到「远程补丁」状态，避免编辑态被旧 GET 覆盖 */
    setRemoteFloorPlanView: (patch: Partial<FloorMapViewConfig>) => void;
    onFloorPlanPersisted?: () => void;
    prevOnSave?: (config: FloorMapViewConfig) => void;
    onPersistError?: (err: unknown) => void;
};
/**
 * 将 `floorMap.onSave` 包装为：先持久化到远端，再 `setRemoteFloorPlanView(floorMapSavedConfigToRemotePatch)` 与用户 `prevOnSave`。
 */
export declare function wrapFloorMapOnSaveWithRemotePersist(params: WrapFloorMapOnSaveWithRemotePersistParams): (config: FloorMapViewConfig) => void;
