/** * RecordBoard 顶栏工具栏:合并 booking 透视 toolBar、资源墙快筛注入、日程带与密度加载。 */ import React from 'react'; import type { ReservationScheduleBandValue, TimeRangeOption, RecordBoardBodyView } from '@pisell/materials'; import type { PisellReservationTableRow } from '../types'; import type { RecordBoardToolBarProps } from '@pisell/materials'; import type { PisellReservationProps } from '../types'; export interface UseReservationToolBarMergedParams { toolBarProp: PisellReservationProps['toolBar']; /** `bookingPerspective.getChildComponentProps` 产物中的 `toolBar` */ bookingToolBar: Record | undefined; isInternalListData: boolean; tables: PisellReservationTableRow[]; schedule: ReservationScheduleBandValue; handleScheduleChange: (next: ReservationScheduleBandValue) => void; scheduleStartSlotProp: PisellReservationProps['scheduleStartSlot']; scheduleEndSlotProp: PisellReservationProps['scheduleEndSlot']; schedulePropsProp: PisellReservationProps['scheduleProps']; mergedTimeNavigatorProps: Record & { range: TimeRangeOption; snapToStep: false; cursorMode: 'axis-moves' | 'cursor-moves'; }; followWallClock: boolean; onFollowWallClockToggle: () => void; onTimeNavigatorUserInteraction: () => void; calendarGranularity: 'resource' | 'day' | 'week' | 'month'; setCalendarGranularity: React.Dispatch>; /** 打开新建预约(单路由直接跳转,多路由出弹窗) */ onNewReservation: () => void; salesTimelineHighlights: number[] | null | undefined; floorDayBookingData: unknown[]; data: unknown[]; effectiveTimelineRange: TimeRangeOption; /** 与 RecordBoard 当前子视图同步(由 Core 的 shellBodyView 传入,勿在 RecordBoard 外读 context) */ bodyView: RecordBoardBodyView; /** `variant==='phone'` 时由 Core 传入 */ phoneLayout?: boolean; } export declare function useReservationToolBarMerged(p: UseReservationToolBarMergedParams): { toolBarMerged: RecordBoardToolBarProps; };