import * as THREE from 'three'; import type { PlacementCapabilities, PlacementTarget } from './placementTarget'; import type { DbFile } from '../../../../types/dbTypes'; export interface ObjectTargetSetup { id: string; name: string; object: () => THREE.Object3D | null; updateFile: (patch: Partial) => Promise; /** Defaults to position and yaw only, which is all a fragment model can hold. */ capabilities?: PlacementCapabilities; confirmCommit?: PlacementTarget['confirmCommit']; } /** * Placement for anything that is one `Object3D` backed by a `DbFile` — a fragment model, a * loaded GLB, a DXF group. What it may change is whatever `capabilities` allows. */ export declare function objectTarget({ id, name, object, updateFile, capabilities, confirmCommit, }: ObjectTargetSetup): PlacementTarget; //# sourceMappingURL=objectTarget.d.ts.map