/** * 平面图 RoomCard:密度档位(布局像素 × viewportScale → visualShortSide)。 */ import React from 'react'; export declare type FloorRoomCardDensity = 'auto' | 'comfortable' | 'compact' | 'mini' | 'micro'; export declare type FloorRoomCardResolvedDensity = 'comfortable' | 'compact' | 'mini' | 'micro'; export declare const FLOOR_ROOM_CARD_DENSITY_HYSTERESIS_PX = 6; export declare function pickDensityFromVisualShortSide(visualShortSide: number): FloorRoomCardResolvedDensity; export declare function applyDensityHysteresis(visualShortSide: number, prev: FloorRoomCardResolvedDensity | null): FloorRoomCardResolvedDensity; export declare function computeVisualShortSide(layoutW: number, layoutH: number, viewportScale: number): number; export declare function pickDensityFromLayoutAndViewport(layoutW: number, layoutH: number, viewportScale: number): FloorRoomCardResolvedDensity; /** * 对外仅两种视觉档位:大卡 vs Tooltip 极简小卡(见 {@link toFloorRoomCardUiDensity})。 */ export declare type FloorRoomCardUiDensity = 'comfortable' | 'micro'; /** * 根节点 `data-density`:方桌仅 **micro** → micro;圆桌 **mini / micro** → micro。 */ export declare function toFloorRoomCardUiDensity(d: Exclude | FloorRoomCardResolvedDensity, shellShape?: 'rect' | 'circle'): FloorRoomCardUiDensity; /** * Tooltip 极简小卡壳:方桌仅 **micro**;圆桌 **mini** 与 **micro**。 */ export declare function isFloorRoomCardTooltipDensity(d: FloorRoomCardResolvedDensity | FloorRoomCardUiDensity, shellShape?: 'rect' | 'circle'): boolean; export declare const FloorRoomCardDensityContext: React.Context; export declare function useFloorRoomCardDensity(): FloorRoomCardResolvedDensity; export declare function useResolvedFloorRoomCardDensity(options: { rootRef: React.RefObject; density: FloorRoomCardDensity; viewportScale: number; }): FloorRoomCardResolvedDensity;