/**
 * 预约页拆出的轻量子组件（无业务数据请求）：
 * - `RecordBoardBodyViewCapture`：把当前 grid/floorMap 同步到父组件 ref，供 debounce effect 读 bodyView；
 * - `ScheduleSyncOnFloorEnter`：从表格回到平面图时，用当前营业日 patch 预约列表时间窗口；
 * - `PisellReservationToolbarTabs`：平面图下的日程带 + 表格/平面图 Segmented；
 * - `ReservationGridTopRight` / `PisellReservationScheduleEndActions` / `ReservationFloorMapCanvasTabsTrailing`：工具栏与画布尾区。
 */
import React from 'react';
import type { Dayjs } from 'dayjs';
import type { PisellFloorMapLayoutRef, RecordBoardBodyView, ReservationScheduleBandValue } from '@pisell/materials';
import type { PisellReservationProps } from '../types';
/** 无 UI：仅将 RecordBoard Context 中的 `bodyView` 写入 ref */
export declare function RecordBoardBodyViewCapture(props: {
    bodyViewRef: React.MutableRefObject<RecordBoardBodyView>;
}): null;
/** 从表格切回平面图时，用当前日程把列表区间同步到平面图维度 */
export declare function ScheduleSyncOnFloorEnter(props: {
    schedule: ReservationScheduleBandValue;
    isInternalListData: boolean;
    patchSearchParams: (updater: (prev: Record<string, unknown>) => Record<string, unknown>) => void;
}): null;
export declare type PisellReservationToolbarTabsProps = {
    extraTabs?: React.ReactNode;
    schedule: ReservationScheduleBandValue;
    onScheduleChange: (next: ReservationScheduleBandValue) => void;
    scheduleProps?: PisellReservationProps['scheduleProps'];
    timeNavigatorProps?: PisellReservationProps['timeNavigatorProps'];
    scheduleStartSlot?: React.ReactNode;
    scheduleEndSlot?: React.ReactNode;
    followWallClock: boolean;
    onFollowWallClockToggle: () => void;
    onTimeNavigatorUserInteraction: () => void;
    loadDensity?: (params: {
        referenceDate: Dayjs;
        stepMinutes: number;
    }) => Promise<number[]>;
};
/**
 * 顶栏 tabs：平面图下为日程带 + 时间轴 + 标题旁切换；表格下不展示 ScheduleBand，
 * 切换器由 RecordBoard 工具栏顶行（Find 左侧）承担，与历史行为一致。
 */
export declare function PisellReservationToolbarTabs(props: PisellReservationToolbarTabsProps): JSX.Element | null;
/** 表格视图时展示工具栏右上角透传；平面图时收起（编辑入口在画布 Tab 行右侧） */
export declare function ReservationGridTopRight(props: {
    extra?: React.ReactNode;
}): JSX.Element | null;
export declare type PisellReservationScheduleEndActionsProps = {
    onNewReservation?: () => void;
};
/** 顶栏日程带右侧：新建 */
export declare function PisellReservationScheduleEndActions(props: PisellReservationScheduleEndActionsProps): JSX.Element;
export declare type ReservationFloorMapCanvasTabsTrailingProps = {
    isFloorModeControlled: boolean;
    mapEditInternal: boolean;
    setMapEditInternal: React.Dispatch<React.SetStateAction<boolean>>;
    floorMapLayoutRef: React.RefObject<PisellFloorMapLayoutRef | null>;
};
/** 平面图左下 Dock 展开区：编辑 / 完成编辑（经 PisellFloorMapLayout.viewportDockTrailing） */
export declare function ReservationFloorMapCanvasTabsTrailing(props: ReservationFloorMapCanvasTabsTrailingProps): JSX.Element | null;
/** 默认顶栏标题 slot */
export declare function ReservationDefaultScheduleStart(): JSX.Element;
/** 场控页顶栏标题 slot */
export declare function ReservationVenueScheduleStart(): JSX.Element;
