/** Raw NURBS curve data (no methods, just numbers) */
export interface CurveData {
    degree: number;
    knots: number[];
    controlPoints: number[][];
    weights: number[];
}
/** Raw NURBS surface data (no methods, just numbers) */
export interface SurfaceData {
    degreeU: number;
    degreeV: number;
    knotsU: number[];
    knotsV: number[];
    controlPoints: number[][][];
    weights: number[][];
}
/** A face is a surface bounded by trim curves with an orientation */
export interface FaceData {
    surface: SurfaceData;
    outerWire?: CurveData[];
    holes?: CurveData[][];
    orientation: "forward" | "reversed";
}
/** A solid is a closed shell of oriented faces */
export interface SolidData {
    faces: FaceData[];
}
