import Konva from 'konva'; import type { CoordinateTransform, LiveEffect, ViewportBounds } from 'mudlet-map-renderer'; import type { SceneHandle } from '../scene'; /** Ghost preview for an armed `placeRooms` pending: the clipboard's rooms are * drawn as dashed rectangles following the cursor at their relative offsets, * snapped exactly like the eventual paste. */ export declare class PlacePreviewEffect implements LiveEffect { private readonly settings; private readonly sceneRef; private rects; private layer?; private unsubscribe?; private strokeWidth; private dash; constructor(settings: { roomSize: number; }, sceneRef: { current: SceneHandle | null; }); attach(layer: Konva.Layer): void; updateViewport(_bounds: ViewportBounds, scale: number, _transform: CoordinateTransform): void; syncPositions(): void; destroy(): void; private sync; }