import { FloorMapResourcePickerSlotProps, PisellCardPickerCardMeta, PisellCardPickerCategoryConfig, PisellCardPickerCategoryLevelConfig, PisellCardPickerCategoryMode, PisellCardPickerCategoryPath, PisellCardPickerItem, PisellCardPickerMode, parseNestedPathSegments } from "./utils/floorMapResourcePickerTypes.js";
import { FLOOR_MAP_BUILTIN_SHAPES, FloorMapBuiltinShapeDef, FloorMapBuiltinShapeRenderProps, getFloorMapBuiltinShapeDef } from "./utils/floorMapBuiltinShapes.js";
import { DataSourceFormColumn, FLOOR_MAP_BUILTIN_SHAPE_ELEMENT_KIND, FLOOR_MAP_IMAGE_ELEMENT_KIND, FLOOR_MAP_SELECTION_ZONE_ELEMENT_KIND, FLOOR_MAP_STAGE_ELEMENT_KIND, FloorMapBackgroundType, FloorMapCanvas, FloorMapCanvasNameI18n, FloorMapCanvasUiConfig, FloorMapControlsConfig, FloorMapDataSourceRecordFormContent, FloorMapDataSources, FloorMapEdge, FloorMapEdgeAnchor, FloorMapEdgeStatus, FloorMapElementDataBindingPolicy, FloorMapElementDefaultPresentation, FloorMapElementKindCategory, FloorMapElementKindConfig, FloorMapFullscreenMode, FloorMapGridLayoutConfig, FloorMapItemBase, FloorMapItemShape, FloorMapItemUnit, FloorMapLayerConfig, FloorMapLayoutContextValue, FloorMapLayoutMode, FloorMapMergedItem, FloorMapPanBoundary, FloorMapPanConfig, FloorMapPlaceMode, FloorMapRecordFormRenderContext, FloorMapRenderOptions, FloorMapSceneElement, FloorMapSceneElementDataBinding, FloorMapTextSlot, FloorMapViewConfig, FloorMapViewportOverlayRenderArgs, FloorMapZoomConfig, PisellFloorMapLayoutProps, PisellFloorMapLayoutRef } from "./types.js";
import { PisellFloorMapLayout } from "./PisellFloorMapLayout.js";
import { renderFloorMapFallbackPlaceholder } from "./utils/floorMapFallbackRender.js";
import { isFloorMapBuiltinShapeElementKind, isFloorMapImageElementKind } from "./utils/floorMapElementKindUtils.js";
import { NAME_AS_TITLE_EXT_KEY, buildNameAsTitleExtensionsPatch, isElementNameAsTitleEnabled, resolveSceneElementDisplayTitle } from "./utils/floorMapElementNameAsTitle.js";
import { FloorMapBindingPlaceholderReason, FloorMapDataSourceRow, findFloorMapRowByDataBinding, getFloorMapBindingPlaceholderReason } from "./utils/floorMapDataBindingUtils.js";
import { CreateShopFloorPlanClientOptions, EnsureShopFloorPlanByCodeOptions, PostShopFloorPlanBody, PutShopFloorPlanBody, SHOP_FLOOR_PLAN_DUPLICATE_CODE, ShopFloorPlanByCodeRequestOptions, ShopFloorPlanDetail, ShopFloorPlanHttpAdapter, ShopFloorPlanLayoutItem } from "./shopFloorPlan/shopFloorPlanTypes.js";
import { createShopFloorPlanClient } from "./shopFloorPlan/shopFloorPlanClient.js";
import { UseShopFloorPlanSubscriptionParams, useShopFloorPlanSubscription } from "./hooks/useShopFloorPlanSubscription.js";
import { buildFloorPlanPutBody, floorMapSavedConfigToRemotePatch, inferCanvasSizeFromScene, isFloorPlanDuplicateCodeError, isHttpNotFoundError, isShopFloorPlanNotFoundResponse, mergeFloorPlanViewRemote, parseLayoutFieldToViewConfigPatch, pickFloorPlanDetail, viewConfigToLayoutPayload } from "./shopFloorPlan/shopFloorPlanPure.js";
import { sceneElementsToShopLayout, shopLayoutToSceneElements } from "./shopFloorPlan/shopFloorPlanMapping.js";
import { WrapFloorMapOnSaveWithRemotePersistParams, wrapFloorMapOnSaveWithRemotePersist } from "./utils/floorMapRemotePersist.js";
import { EMPTY_FLOOR_MAP_LAYOUT_CONTEXT, FloorMapLayoutProvider, FloorMapLayoutProviderProps, useFloorMapLayoutContext } from "./context/FloorMapLayoutContext.js";
import { mergeFloorMapLayoutPropsFromContext } from "./context/mergeFloorMapLayoutContext.js";
import { FloorMapResourcePickerRecord, floorMapResourcePickerRecordSearchText, getFloorMapCardPickerCategoryConfig, getFloorMapResourcePickerCardMeta } from "./utils/floorMapResourcePickerDisplay.js";
import { getFloorMapDisplayLocale, initFloorMapLayoutLocales } from "./utils/floorMapCanvasDisplay.js";
import { _default } from "./locales.js";
import { FloorMapImageElement } from "./components/FloorMapImageElement.js";
import { FloorMapBuiltinShapeElement } from "./components/FloorMapBuiltinShapeElement.js";
import { FloorMapSelectionZoneElement } from "./components/FloorMapSelectionZoneElement.js";
import { SelectionZoneRect, computeSelectionZoneMemberIds, isSelectionZoneItem } from "./utils/floorMapSelectionZone.js";
import { FigmaTableCardItem, FigmaTableStatus, getFigmaTableCardFromMerged, getRenderItemByKindRoundTable, getRenderItemByKindTable, renderFigmaStyleRoundTableCard, renderFigmaStyleTableCard } from "./components/FigmaTableCard.js";