import type { ColumnNode, DoorNode, HandleDescriptor, WindowNode } from '@pascal-app/core'; type Opening = WindowNode | DoorNode; /** * A window or door built from a script resizes only through the params its * script declares: a `width` param keeps the side arrows, a `height` param * the top arrow (the bottom stays on its sill or threshold), and nothing * else shows. The drag previews the box; release rebuilds the script with * the param moved by the dragged amount (trim around the opening included). */ export declare function scriptedOpeningHandles(node: N, width: (side: 'left' | 'right') => HandleDescriptor, height: () => HandleDescriptor): HandleDescriptor[]; /** * A scripted window, door or column resized by a handle: each size param its * script declares moves by the dragged amount, within the param's range, and * the script reruns once. */ export declare function rebuildScriptedSize(initial: N, patch: Partial, position?: N['position']): void; export {}; //# sourceMappingURL=scripted-opening-handles.d.ts.map