import { type AnyNode, type AnyNodeId, type HandleDescriptor, type SceneApi, type SurfaceProvider } from '@pascal-app/core'; export type HostedEditPolicy = { host: (node: AnyNode) => boolean; child: (node: AnyNode) => boolean; provider?: SurfaceProvider; }; type Nodes = Record; export type HostedUpdate = readonly [AnyNodeId, Partial]; export declare function hostedChildUpdates(before: Nodes, after: Nodes, policy: HostedEditPolicy): HostedUpdate[] | null; export declare function planHostedEdit(sceneApi: SceneApi, apply: (staged: SceneApi) => void, policy: HostedEditPolicy): HostedUpdate[] | null; export declare function withHostedChildren(descriptor: HandleDescriptor, policy: HostedEditPolicy): HandleDescriptor; export {}; //# sourceMappingURL=hosted-resize.d.ts.map