import { Matrix3, Matrix4, Quaternion, Quaternion2, Vector, Vector2, Vector3, Vector4 } from "../../../../cauldron/type_definitions/array_type_definitions.js"; export declare function vec_create(length: number): Vector; export declare function vec_create(firstValue: number, ...remainingValues: number[]): Vector; export declare function vec_getAllocationFunction(): (length: number) => Vector; export declare function vec_setAllocationFunction(allocationFunction: (length: number) => Vector): void; export declare function vec2_create(): Vector2; export declare function vec2_create(x: number, y: number): Vector2; export declare function vec2_create(uniformValue: number): Vector2; export declare function vec2_getAllocationFunction(): () => Vector2; export declare function vec2_setAllocationFunction(allocationFunction: () => Vector2): void; export declare function vec3_create(): Vector3; export declare function vec3_create(x: number, y: number, z: number): Vector3; export declare function vec3_create(uniformValue: number): Vector3; export declare function vec3_getAllocationFunction(): () => Vector3; export declare function vec3_setAllocationFunction(allocationFunction: () => Vector3): void; export declare function vec4_create(): Vector4; export declare function vec4_create(x: number, y: number, z: number, w: number): Vector4; export declare function vec4_create(uniformValue: number): Vector4; export declare function vec4_getAllocationFunction(): () => Vector4; export declare function vec4_setAllocationFunction(allocationFunction: () => Vector4): void; export declare function quat_create(): Quaternion; export declare function quat_create(x: number, y: number, z: number, w: number): Quaternion; export declare function quat_create(uniformValue: number): Quaternion; export declare function quat_getAllocationFunction(): () => Quaternion; export declare function quat_setAllocationFunction(allocationFunction: () => Quaternion): void; export declare function quat2_create(): Quaternion2; export declare function quat2_create(x1: number, y1: number, z1: number, w1: number, x2: number, y2: number, z2: number, w2: number): Quaternion2; export declare function quat2_create(uniformValue: number): Quaternion2; export declare function quat2_getAllocationFunction(): () => Quaternion2; export declare function quat2_setAllocationFunction(allocationFunction: () => Quaternion2): void; export declare function mat3_create(): Matrix3; export declare function mat3_create(m00: number, m01: number, m02: number, m10: number, m11: number, m12: number, m20: number, m21: number, m22: number): Matrix3; export declare function mat3_create(uniformValue: number): Matrix3; export declare function mat3_getAllocationFunction(): () => Matrix3; export declare function mat3_setAllocationFunction(allocationFunction: () => Matrix3): void; export declare function mat4_create(): Matrix4; export declare function mat4_create(m00: number, m01: number, m02: number, m03: number, m10: number, m11: number, m12: number, m13: number, m20: number, m21: number, m22: number, m23: number, m30: number, m31: number, m32: number, m33: number): Matrix4; export declare function mat4_create(uniformValue: number): Matrix4; export declare function mat4_getAllocationFunction(): () => Matrix4; export declare function mat4_setAllocationFunction(allocationFunction: () => Matrix4): void;