import type { FloorMapElementKindConfig } from '../types'; import { type FloorMapBuiltinShapeDef } from './floorMapBuiltinShapes'; /** @deprecated 使用 {@link FLOOR_MAP_TOOLBAR_PALETTE_SIDEBAR_LIMIT} */ export declare const FLOOR_MAP_TOOLBAR_PALETTE_VISIBLE_LIMIT = 5; /** 解析侧栏每类展示上限(至少 1) */ export declare function resolvePaletteSidebarVisibleLimit(limit?: number): number; /** 分类下图元数是否应显示「查看全部」 */ export declare function shouldShowPaletteViewAll(entryCount: number, limit?: number): boolean; /** 侧栏直接展示的 palette 条目(前 N 项) */ export declare function getPaletteSidebarVisibleEntries(entries: T[], limit?: number): T[]; /** 批量从弹窗落点时的单项描述(与 {@link FloorMapPlaceMode} scene 子集对齐) */ export interface FloorMapPaletteBulkPlaceItem { elementKind: string; builtinShapeKey?: string; } /** * 侧栏 / 弹窗共用的 palette 条目:普通 kind 一项;内置图形 kind 按预设展开多项。 */ export interface FloorMapToolbarPaletteEntry { key: string; kind: FloorMapElementKindConfig; builtinShapeKey?: string; label: string; shapeDef?: FloorMapBuiltinShapeDef; } /** 该 palette 条目是否点击即落画布(装饰内置图形单卡、无绑定 kind 等) */ export declare function isDirectPlacePaletteEntry(entry: FloorMapToolbarPaletteEntry): boolean; export declare function buildToolbarPaletteEntries(kinds: FloorMapElementKindConfig[], resolveBuiltinLabel: (shapeDef: FloorMapBuiltinShapeDef) => string): FloorMapToolbarPaletteEntry[]; /** palette 条目 → 批量落点 payload(每项数量 1) */ export declare function paletteEntriesToBulkPlaceItems(entries: FloorMapToolbarPaletteEntry[]): FloorMapPaletteBulkPlaceItem[]; /** * 按弹窗内各条目数量展开为落点列表(数量为 n 则重复 n 次,落点时阶梯偏移)。 */ export declare function expandPaletteEntriesByQuantity(entries: FloorMapToolbarPaletteEntry[], quantities: Readonly>): FloorMapPaletteBulkPlaceItem[];