import type { Attribs } from "./api.js";
import type { ReadonlyVec, Vec } from "@thi.ng/vectors";
import { Plane } from "./api/plane.js";
import type { Ray3 } from "./api/ray3.js";
export declare const plane: (normal: Vec, w: number, attribs?: Attribs) => Plane;
export declare const planeWithPoint: (normal: Vec, p: ReadonlyVec, attribs?: Attribs) => Plane;
/**
 * Creates a new plane from the given ray, using the ray's position as point on
 * the plane and the ray's direction as plane normal. If `attribs` are given,
 * they take precedence over the ray's attribs.
 *
 * @param ray
 * @param attribs
 */
export declare const planeFromRay: ({ pos, dir, attribs }: Ray3, $attribs?: Attribs) => Plane;
export declare const planeFrom3Points: (a: ReadonlyVec, b: ReadonlyVec, c: ReadonlyVec, attribs?: Attribs) => Plane;
//# sourceMappingURL=plane.d.ts.map