/** * Zod validation schemas for moicad SDK * * These schemas provide runtime validation for shape parameters * and geometry data. */ import { z } from 'zod'; export declare const Vector2Schema: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>; export declare const Vector3Schema: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; export declare const ColorSchema: z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>; export declare const SizeSchema: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>; export declare const Size2DSchema: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; export declare const CubeParamsSchema: z.ZodObject<{ size: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>; center: z.ZodOptional; }, "strip", z.ZodTypeAny, { size: number | [number, number, number]; center?: boolean | undefined; }, { size: number | [number, number, number]; center?: boolean | undefined; }>; export declare const SphereParamsSchema: z.ZodObject<{ radius: z.ZodNumber; $fn: z.ZodOptional; $fa: z.ZodOptional; $fs: z.ZodOptional; }, "strip", z.ZodTypeAny, { radius: number; $fn?: number | undefined; $fa?: number | undefined; $fs?: number | undefined; }, { radius: number; $fn?: number | undefined; $fa?: number | undefined; $fs?: number | undefined; }>; export declare const CylinderParamsSchema: z.ZodObject<{ height: z.ZodNumber; radius: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; center: z.ZodOptional; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { height: number; radius: number | [number, number]; center?: boolean | undefined; $fn?: number | undefined; }, { height: number; radius: number | [number, number]; center?: boolean | undefined; $fn?: number | undefined; }>; export declare const ConeParamsSchema: z.ZodObject<{ height: z.ZodNumber; radius: z.ZodNumber; center: z.ZodOptional; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { height: number; radius: number; center?: boolean | undefined; $fn?: number | undefined; }, { height: number; radius: number; center?: boolean | undefined; $fn?: number | undefined; }>; export declare const PyramidParamsSchema: z.ZodObject<{ size: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>; sides: z.ZodOptional; center: z.ZodOptional; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { size: number | [number, number, number]; center?: boolean | undefined; $fn?: number | undefined; sides?: number | undefined; }, { size: number | [number, number, number]; center?: boolean | undefined; $fn?: number | undefined; sides?: number | undefined; }>; export declare const CircleParamsSchema: z.ZodObject<{ radius: z.ZodNumber; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { radius: number; $fn?: number | undefined; }, { radius: number; $fn?: number | undefined; }>; export declare const SquareParamsSchema: z.ZodObject<{ size: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>]>; center: z.ZodOptional; }, "strip", z.ZodTypeAny, { size: number | [number, number]; center?: boolean | undefined; }, { size: number | [number, number]; center?: boolean | undefined; }>; export declare const PolygonParamsSchema: z.ZodObject<{ points: z.ZodArray, "many">; paths: z.ZodOptional, "many">>; }, "strip", z.ZodTypeAny, { points: [number, number][]; paths?: number[][] | undefined; }, { points: [number, number][]; paths?: number[][] | undefined; }>; export declare const PolyhedronParamsSchema: z.ZodObject<{ points: z.ZodArray, "many">; faces: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { points: [number, number, number][]; faces: number[][]; }, { points: [number, number, number][]; faces: number[][]; }>; export declare const TranslateParamsSchema: z.ZodObject<{ offset: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { offset: [number, number, number]; }, { offset: [number, number, number]; }>; export declare const RotateParamsSchema: z.ZodObject<{ angles: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { angles: [number, number, number]; }, { angles: [number, number, number]; }>; export declare const ScaleParamsSchema: z.ZodObject<{ factors: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>; }, "strip", z.ZodTypeAny, { factors: number | [number, number, number]; }, { factors: number | [number, number, number]; }>; export declare const MirrorParamsSchema: z.ZodObject<{ normal: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { normal: [number, number, number]; }, { normal: [number, number, number]; }>; export declare const LinearExtrudeParamsSchema: z.ZodObject<{ height: z.ZodNumber; twist: z.ZodOptional; scale: z.ZodOptional]>>; slices: z.ZodOptional; center: z.ZodOptional; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { height: number; scale?: number | [number, number] | undefined; center?: boolean | undefined; slices?: number | undefined; $fn?: number | undefined; twist?: number | undefined; }, { height: number; scale?: number | [number, number] | undefined; center?: boolean | undefined; slices?: number | undefined; $fn?: number | undefined; twist?: number | undefined; }>; export declare const RotateExtrudeParamsSchema: z.ZodObject<{ angle: z.ZodOptional; $fn: z.ZodOptional; }, "strip", z.ZodTypeAny, { $fn?: number | undefined; angle?: number | undefined; }, { $fn?: number | undefined; angle?: number | undefined; }>; export declare const BoundsSchema: z.ZodObject<{ min: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; max: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { min: [number, number, number]; max: [number, number, number]; }, { min: [number, number, number]; max: [number, number, number]; }>; export declare const GeometryStatsSchema: z.ZodObject<{ vertexCount: z.ZodNumber; faceCount: z.ZodNumber; volume: z.ZodOptional; surfaceArea: z.ZodOptional; }, "strip", z.ZodTypeAny, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }>; export declare const GeometrySchema: z.ZodObject<{ vertices: z.ZodArray; indices: z.ZodArray; normals: z.ZodArray; bounds: z.ZodObject<{ min: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; max: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { min: [number, number, number]; max: [number, number, number]; }, { min: [number, number, number]; max: [number, number, number]; }>; stats: z.ZodOptional; surfaceArea: z.ZodOptional; }, "strip", z.ZodTypeAny, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; }, { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; }>; export declare const ParseErrorSchema: z.ZodObject<{ message: z.ZodString; line: z.ZodNumber; column: z.ZodNumber; code: z.ZodString; }, "strip", z.ZodTypeAny, { line: number; code: string; message: string; column: number; }, { line: number; code: string; message: string; column: number; }>; export declare const ParseResultSchema: z.ZodObject<{ ast: z.ZodNullable; errors: z.ZodArray, "many">; success: z.ZodBoolean; }, "strip", z.ZodTypeAny, { errors: { line: number; code: string; message: string; column: number; }[]; success: boolean; ast?: any; }, { errors: { line: number; code: string; message: string; column: number; }[]; success: boolean; ast?: any; }>; export declare const EvaluationErrorSchema: z.ZodObject<{ message: z.ZodString; line: z.ZodOptional; stack: z.ZodOptional; }, "strip", z.ZodTypeAny, { message: string; line?: number | undefined; stack?: string | undefined; }, { message: string; line?: number | undefined; stack?: string | undefined; }>; export declare const EvaluateResultSchema: z.ZodObject<{ geometry: z.ZodNullable; indices: z.ZodArray; normals: z.ZodArray; bounds: z.ZodObject<{ min: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; max: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>; }, "strip", z.ZodTypeAny, { min: [number, number, number]; max: [number, number, number]; }, { min: [number, number, number]; max: [number, number, number]; }>; stats: z.ZodOptional; surfaceArea: z.ZodOptional; }, "strip", z.ZodTypeAny, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }, { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; }, { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; }>>; errors: z.ZodArray; stack: z.ZodOptional; }, "strip", z.ZodTypeAny, { message: string; line?: number | undefined; stack?: string | undefined; }, { message: string; line?: number | undefined; stack?: string | undefined; }>, "many">; success: z.ZodBoolean; executionTime: z.ZodNumber; }, "strip", z.ZodTypeAny, { errors: { message: string; line?: number | undefined; stack?: string | undefined; }[]; success: boolean; geometry: { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; } | null; executionTime: number; }, { errors: { message: string; line?: number | undefined; stack?: string | undefined; }[]; success: boolean; geometry: { vertices: number[]; indices: number[]; normals: number[]; bounds: { min: [number, number, number]; max: [number, number, number]; }; stats?: { vertexCount: number; faceCount: number; volume?: number | undefined; surfaceArea?: number | undefined; } | undefined; } | null; executionTime: number; }>; export type Vector2 = z.infer; export type Vector3 = z.infer; export type Color = z.infer; export type CubeParams = z.infer; export type SphereParams = z.infer; export type CylinderParams = z.infer; export type ConeParams = z.infer; export type PyramidParams = z.infer; export type CircleParams = z.infer; export type SquareParams = z.infer; export type PolygonParams = z.infer; export type PolyhedronParams = z.infer; export type TranslateParams = z.infer; export type RotateParams = z.infer; export type ScaleParams = z.infer; export type MirrorParams = z.infer; export type LinearExtrudeParams = z.infer; export type RotateExtrudeParams = z.infer; export type Bounds = z.infer; export type GeometryStats = z.infer; export type GeometryOutput = z.infer; export type ParseError = z.infer; export type ParseResultOutput = z.infer; export type EvaluationError = z.infer; export type EvaluateResultOutput = z.infer; //# sourceMappingURL=index.d.ts.map