import type { VectorPoint } from 's2json-spec';
/** Constants for orient3d */
export interface Orient3dConstants {
    bc: Float64Array;
    ca: Float64Array;
    ab: Float64Array;
    at_b: Float64Array;
    at_c: Float64Array;
    bt_c: Float64Array;
    bt_a: Float64Array;
    ct_a: Float64Array;
    ct_b: Float64Array;
    bct: Float64Array;
    cat: Float64Array;
    abt: Float64Array;
    u: Float64Array;
    _8: Float64Array;
    _8b: Float64Array;
    _16: Float64Array;
    _12: Float64Array;
    fin: Float64Array;
    fin2: Float64Array;
}
/**
 * Get the orientation of a tetrahedron
 * @param ax - x coordinate of first point
 * @param ay - y coordinate of first point
 * @param az - z coordinate of first point
 * @param bx - x coordinate of second point
 * @param by - y coordinate of second point
 * @param bz - z coordinate of second point
 * @param cx - x coordinate of origin point to create the abc plane
 * @param cy - y coordinate of origin point to create the abc plane
 * @param cz - z coordinate of origin point to create the abc plane
 * @param dx - x coordinate of compare point
 * @param dy - y coordinate of compare point
 * @param dz - z coordinate of compare point
 * @returns - a positive value if the point-plane of a-b-c via d occur in counterclockwise order
 * (c lies to the left of the directed line defined by points a and b).
 * - Returns a negative value if they occur in clockwise order (c lies to the right of the directed line ab).
 * - Returns zero if they are collinear.
 */
export declare function orient3d(ax: number, ay: number, az: number, bx: number, by: number, bz: number, cx: number, cy: number, cz: number, dx: number, dy: number, dz: number): number;
/**
 * Find the orientation of a point relative to a vector a-b plane relative to the origin
 * @param a - first point
 * @param b - second point
 * @param c - comparison point
 * @returns - a positive value if the point-plane of a-b via c occur in counterclockwise order
 * (c lies to the left of the directed line defined by points a and b).
 * - Returns a negative value if they occur in clockwise order (c lies to the right of the directed line ab).
 * - Returns zero if they are collinear.
 */
export declare function orient3dfastVector(a: VectorPoint, b: VectorPoint, c: VectorPoint): number;
/**
 * @param ax - x coordinate of first point
 * @param ay - y coordinate of first point
 * @param az - z coordinate of first point
 * @param bx - x coordinate of second point
 * @param by - y coordinate of second point
 * @param bz - z coordinate of second point
 * @param cx - x coordinate of third point
 * @param cy - y coordinate of third point
 * @param cz - z coordinate of third point
 * @param dx - x coordinate of compare point
 * @param dy - y coordinate of compare point
 * @param dz - z coordinate of compare point
 * @returns - a positive value if the point-plane of a-b-c via d occur in counterclockwise order
 * (c lies to the left of the directed line defined by points a and b).
 * - Returns a negative value if they occur in clockwise order (c lies to the right of the directed line ab).
 * - Returns zero if they are collinear.
 */
export declare function orient3dfast(ax: number, ay: number, az: number, bx: number, by: number, bz: number, cx: number, cy: number, cz: number, dx: number, dy: number, dz: number): number;
//# sourceMappingURL=orient3d.d.ts.map