import '../../../assert/js/assert.js';
import '../../../globals.js';
/**
 * Represents a RenderProgram on a planar (3d) surface.
 *
 * @author Jonathan Olson <jonathan.olson@colorado.edu>
 */
import { ClippableFace, RenderProgram } from '../imports.js';
import Range from '../../../dot/js/Range.js';
import Vector3 from '../../../dot/js/Vector3.js';
import Matrix3 from '../../../dot/js/Matrix3.js';
import Plane3 from '../../../dot/js/Plane3.js';
export default class RenderPlanar {
    readonly program: RenderProgram;
    readonly pointA: Vector3;
    readonly pointB: Vector3;
    readonly pointC: Vector3;
    readonly plane: Plane3;
    constructor(program: RenderProgram, pointA: Vector3, pointB: Vector3, pointC: Vector3);
    getDepth(x: number, y: number): number;
    /**
     * Returns the range of potential depth values included in the face.
     */
    getDepthRange(face: ClippableFace): Range;
    getDepthSplit(planar: RenderPlanar, face: ClippableFace): {
        ourFaceFront: ClippableFace | null;
        otherFaceFront: ClippableFace | null;
    };
    transformed(transform: Matrix3): RenderPlanar;
    withProgram(program: RenderProgram): RenderPlanar;
}
//# sourceMappingURL=RenderPlanar.d.ts.map