Named tuples provide structured data with named fields, similar to lightweight nested objects.
import { ClickHouseNamedTuple } from "@514labs/moose-lib"; interface Point { x: number; y: number;} interface Shape { center: Point & ClickHouseNamedTuple; // Named tuple radius: number;}import { ClickHouseNamedTuple } from "@514labs/moose-lib"; interface Coordinate { x: number; y: number;} interface Path { points: (Coordinate & ClickHouseNamedTuple)[]; // Array(Tuple(x Float64, y Float64))}Named tuples are more lightweight than nested types and are stored inline. Use tuples for simple structures with a few fields; use nested types for more complex hierarchies.
import { ClickHouseNamedTuple } from "@514labs/moose-lib"; interface Point { x: number; y: number;} interface Shape { center: Point & ClickHouseNamedTuple; // Named tuple radius: number;}import { ClickHouseNamedTuple } from "@514labs/moose-lib"; interface Coordinate { x: number; y: number;} interface Path { points: (Coordinate & ClickHouseNamedTuple)[]; // Array(Tuple(x Float64, y Float64))}