// AUTO-GENERATED by objcjs-types generator — DO NOT EDIT
import { callFunction } from "objc-js";
export function GLKMathProject(object_, model, projection, viewport) {
    return callFunction("GLKMathProject", { returns: "@" }, object_, model, projection, viewport);
}
export function GLKMathUnproject(window, model, projection, viewport, success) {
    return callFunction("GLKMathUnproject", { returns: "@" }, window, model, projection, viewport, success);
}
export function GLKMatrix3Invert(matrix, isInvertible) {
    return callFunction("GLKMatrix3Invert", { returns: "@" }, matrix, isInvertible);
}
export function GLKMatrix3InvertAndTranspose(matrix, isInvertible) {
    return callFunction("GLKMatrix3InvertAndTranspose", { returns: "@" }, matrix, isInvertible);
}
export function GLKMatrix4Invert(matrix, isInvertible) {
    return callFunction("GLKMatrix4Invert", { returns: "@" }, matrix, isInvertible);
}
export function GLKMatrix4InvertAndTranspose(matrix, isInvertible) {
    return callFunction("GLKMatrix4InvertAndTranspose", { returns: "@" }, matrix, isInvertible);
}
export function GLKMatrixStackCreate(alloc) {
    return callFunction("GLKMatrixStackCreate", { returns: "@" }, alloc);
}
export function GLKMatrixStackGetMatrix2(stack) {
    return callFunction("GLKMatrixStackGetMatrix2", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix3(stack) {
    return callFunction("GLKMatrixStackGetMatrix3", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix3Inverse(stack) {
    return callFunction("GLKMatrixStackGetMatrix3Inverse", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix3InverseTranspose(stack) {
    return callFunction("GLKMatrixStackGetMatrix3InverseTranspose", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix4(stack) {
    return callFunction("GLKMatrixStackGetMatrix4", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix4Inverse(stack) {
    return callFunction("GLKMatrixStackGetMatrix4Inverse", { returns: "@" }, stack);
}
export function GLKMatrixStackGetMatrix4InverseTranspose(stack) {
    return callFunction("GLKMatrixStackGetMatrix4InverseTranspose", { returns: "@" }, stack);
}
export function GLKMatrixStackGetTypeID() {
    return callFunction("GLKMatrixStackGetTypeID", { returns: "L" });
}
export function GLKMatrixStackLoadMatrix4(stack, matrix) {
    callFunction("GLKMatrixStackLoadMatrix4", undefined, stack, matrix);
}
export function GLKMatrixStackMultiplyMatrix4(stack, matrix) {
    callFunction("GLKMatrixStackMultiplyMatrix4", undefined, stack, matrix);
}
export function GLKMatrixStackMultiplyMatrixStack(stackLeft, stackRight) {
    callFunction("GLKMatrixStackMultiplyMatrixStack", undefined, stackLeft, stackRight);
}
export function GLKMatrixStackPop(stack) {
    callFunction("GLKMatrixStackPop", undefined, stack);
}
export function GLKMatrixStackPush(stack) {
    callFunction("GLKMatrixStackPush", undefined, stack);
}
export function GLKMatrixStackRotate(stack, radians, x, y, z) {
    callFunction("GLKMatrixStackRotate", { args: ["@", "f", "f", "f", "f"] }, stack, radians, x, y, z);
}
export function GLKMatrixStackRotateWithVector3(stack, radians, axisVector) {
    callFunction("GLKMatrixStackRotateWithVector3", { args: ["@", "f", "@"] }, stack, radians, axisVector);
}
export function GLKMatrixStackRotateWithVector4(stack, radians, axisVector) {
    callFunction("GLKMatrixStackRotateWithVector4", { args: ["@", "f", "@"] }, stack, radians, axisVector);
}
export function GLKMatrixStackRotateX(stack, radians) {
    callFunction("GLKMatrixStackRotateX", { args: ["@", "f"] }, stack, radians);
}
export function GLKMatrixStackRotateY(stack, radians) {
    callFunction("GLKMatrixStackRotateY", { args: ["@", "f"] }, stack, radians);
}
export function GLKMatrixStackRotateZ(stack, radians) {
    callFunction("GLKMatrixStackRotateZ", { args: ["@", "f"] }, stack, radians);
}
export function GLKMatrixStackScale(stack, sx, sy, sz) {
    callFunction("GLKMatrixStackScale", { args: ["@", "f", "f", "f"] }, stack, sx, sy, sz);
}
export function GLKMatrixStackScaleWithVector3(stack, scaleVector) {
    callFunction("GLKMatrixStackScaleWithVector3", undefined, stack, scaleVector);
}
export function GLKMatrixStackScaleWithVector4(stack, scaleVector) {
    callFunction("GLKMatrixStackScaleWithVector4", undefined, stack, scaleVector);
}
export function GLKMatrixStackSize(stack) {
    return callFunction("GLKMatrixStackSize", { returns: "i" }, stack);
}
export function GLKMatrixStackTranslate(stack, tx, ty, tz) {
    callFunction("GLKMatrixStackTranslate", { args: ["@", "f", "f", "f"] }, stack, tx, ty, tz);
}
export function GLKMatrixStackTranslateWithVector3(stack, translationVector) {
    callFunction("GLKMatrixStackTranslateWithVector3", undefined, stack, translationVector);
}
export function GLKMatrixStackTranslateWithVector4(stack, translationVector) {
    callFunction("GLKMatrixStackTranslateWithVector4", undefined, stack, translationVector);
}
export function GLKQuaternionAngle(quaternion) {
    return callFunction("GLKQuaternionAngle", { returns: "f" }, quaternion);
}
export function GLKQuaternionAxis(quaternion) {
    return callFunction("GLKQuaternionAxis", { returns: "@" }, quaternion);
}
export function GLKQuaternionMakeWithMatrix3(matrix) {
    return callFunction("GLKQuaternionMakeWithMatrix3", { returns: "@" }, matrix);
}
export function GLKQuaternionMakeWithMatrix4(matrix) {
    return callFunction("GLKQuaternionMakeWithMatrix4", { returns: "@" }, matrix);
}
export function GLKQuaternionRotateVector3Array(quaternion, vectors, vectorCount) {
    callFunction("GLKQuaternionRotateVector3Array", { args: ["@", "@", "Q"] }, quaternion, vectors, vectorCount);
}
export function GLKQuaternionRotateVector4Array(quaternion, vectors, vectorCount) {
    callFunction("GLKQuaternionRotateVector4Array", { args: ["@", "@", "Q"] }, quaternion, vectors, vectorCount);
}
export function GLKQuaternionSlerp(quaternionStart, quaternionEnd, t) {
    return callFunction("GLKQuaternionSlerp", { returns: "@", args: ["@", "@", "f"] }, quaternionStart, quaternionEnd, t);
}
export function GLKVertexAttributeParametersFromModelIO(vertexFormat) {
    return callFunction("GLKVertexAttributeParametersFromModelIO", { returns: "@", args: ["q"] }, vertexFormat);
}
export function NSStringFromGLKMatrix2(matrix) {
    return callFunction("NSStringFromGLKMatrix2", { returns: "@" }, matrix);
}
export function NSStringFromGLKMatrix3(matrix) {
    return callFunction("NSStringFromGLKMatrix3", { returns: "@" }, matrix);
}
export function NSStringFromGLKMatrix4(matrix) {
    return callFunction("NSStringFromGLKMatrix4", { returns: "@" }, matrix);
}
export function NSStringFromGLKQuaternion(quaternion) {
    return callFunction("NSStringFromGLKQuaternion", { returns: "@" }, quaternion);
}
export function NSStringFromGLKVector2(vector) {
    return callFunction("NSStringFromGLKVector2", { returns: "@" }, vector);
}
export function NSStringFromGLKVector3(vector) {
    return callFunction("NSStringFromGLKVector3", { returns: "@" }, vector);
}
export function NSStringFromGLKVector4(vector) {
    return callFunction("NSStringFromGLKVector4", { returns: "@" }, vector);
}
