@huukhanhnguyen/model / schema/_locals/domains__mesh
schema/_locals/domains__mesh
KernelMeshJson
KernelMeshJson = {
faceAttributes?: (Record<string,unknown> |null)[];faces:number[][];positions:number[]; }
The kernel's own indexed-face-set wire format — flat faces with a parallel faceAttributes, which is NOT the stream shape (MeshData.faces is MeshFace[]). It stays the crate's, and the conversion lives at the door in nodeMethods/mesh.ts rather than in a sibling type. File-local to that module; hoisted here so law 1 holds.
faceAttributes?
optionalfaceAttributes?: (Record<string,unknown> |null)[]
faces
faces:
number[][]
positions
positions:
number[]