// reference to this transform node (a unique string, can be UUID)
ref:string,
// version of the node (a unique string, can be UUID)
version:string
}
interfaceTransform.Props{
// tag used in state related operation
tag?:string
// is the node visible in the UI
isGhost?:boolean,
// is the node bound to its parent? (shown as a single node in the UI)
isBinding?:boolean
}
```
"Built-in" data state transforms and description of their parameters are defined in ``mol-plugin/state/transforms``. Behavior transforms are defined in ``mol-plugin/behavior``. Auto-generated documentation for the transforms is also [available](transforms.md).
# Canvas3D State
Defined by ``Canvas3DParams`` in ``mol-canvas3d/canvas3d.ts``.
# Camera Snapshots
The camera position (defined in ``mol-canvas3d/camera.ts``) is a plain JS object with the type:
```ts
interfaceCamera.Snapshot{
mode:Mode,// = 'perspective' | 'orthographic'
position:Vec3,// array with [x, y, z]
// Normalized camera direction
direction:Vec3,// array with [x, y, z]
up:Vec3,// array with [x, y, z]
target:Vec3,// array with [x, y, z]
near:number,
far:number,
fogNear:number,
fogFar:number,
fov:number,
zoom:number
}
```
The ``cameraSnapshots`` component of the state are defined in ``mol-plugin/state/camera.ts``
```js
interfaceCameraSnapshotManager.StateSnapshot{
entries:Entry[]
}
interfaceEntry{
id:UUID,// or any string
timestamp:string,// timestamp usually in UTC format