import { Geom_Circle, Geom_Curve, Geom_Ellipse, Geom_Surface, Handle_Geom_Surface, OpenCascadeInstance, TopoDS_Edge, TopoDS_Face, TopoDS_Shape, TopoDS_Shell, TopoDS_Vertex, TopoDS_Wire, gp_Ax1, gp_Ax2, gp_Ax22d_2, gp_Ax2d_2, gp_Ax3, gp_Dir2d_4, gp_Dir_4, gp_Pln_3, gp_Pnt2d_3, gp_Pnt_3, gp_Vec2d_4, gp_Vec_4, gp_XYZ_2 } from "../../../bitbybit-dev-occt/bitbybit-dev-occt";
import * as Inputs from "../../api/inputs/inputs";
import { Base } from "../../api/inputs/base-inputs";
export declare class EntitiesService {
    readonly occ: OpenCascadeInstance;
    constructor(occ: OpenCascadeInstance);
    createCircle(radius: number, center: Base.Point3, direction: Base.Vector3, type: Inputs.OCCT.typeSpecificityEnum): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | Geom_Circle;
    createEllipse(minorRadius: number, majorRadius: number, center: Base.Point3, direction: Base.Vector3, type: Inputs.OCCT.typeSpecificityEnum): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | Geom_Ellipse;
    makeVertex(pt: Base.Point3): TopoDS_Vertex;
    gpPnt2d(point: Base.Point2): gp_Pnt2d_3;
    gpPnt(point: Base.Point3): gp_Pnt_3;
    gpVec(vec: Base.Vector3): gp_Vec_4;
    gpXYZ(point: Base.Point3): gp_XYZ_2;
    gpVec2d(vec: Base.Vector2): gp_Vec2d_4;
    gpDir(direction: Base.Vector3): gp_Dir_4;
    gpDir2d(direction: Base.Point2): gp_Dir2d_4;
    gcMakeCircle(center: Base.Point3, direction: Base.Vector3, radius: number): Geom_Circle;
    gcMakeEllipse(center: Base.Point3, direction: Base.Vector3, minorRadius: number, majorRadius: number): Geom_Ellipse;
    bRepBuilderAPIMakeEdge(curve: Geom_Curve): TopoDS_Edge;
    bRepBuilderAPIMakeWire(edge: TopoDS_Edge): TopoDS_Wire;
    bRepBuilderAPIMakeShell(face: TopoDS_Face): TopoDS_Shell;
    bRepBuilderAPIMakeFaceFromWires(wires: TopoDS_Wire[], planar: boolean, guideFace?: TopoDS_Face, inside?: boolean): TopoDS_Face;
    bRepBuilderAPIMakeFaceFromWire(wire: TopoDS_Wire, planar: boolean): TopoDS_Face;
    bRepBuilderAPIMakeFacesFromWiresOnFace(face: TopoDS_Face, wires: TopoDS_Wire[], inside: boolean): TopoDS_Face[];
    bRepBuilderAPIMakeFaceFromWireOnFace(face: TopoDS_Face, wire: TopoDS_Wire, inside: boolean): TopoDS_Face;
    bRepBuilderAPIMakeFaceFromWireOnSurface(surface: Handle_Geom_Surface, wire: TopoDS_Wire, inside: boolean): TopoDS_Face;
    bRepBuilderAPIMakeFaceFromSurface(surface: Geom_Surface, tolDegen: number): TopoDS_Face;
    bRepBuilderAPIMakeFaceFromSurfaceAndWire(surface: Geom_Surface, wire: TopoDS_Wire, inside: boolean): TopoDS_Face;
    bRepPrimAPIMakeSphere(center: Base.Point3, direction: Base.Vector3, radius: number): TopoDS_Shape;
    gpAx3(point: Base.Point3, direction: Base.Vector3): gp_Ax3;
    gpAx2(point: Base.Point3, direction: Base.Vector3): gp_Ax2;
    gpAx2FromTwoVectors(point: Base.Point3, directionFirst: Base.Vector3, directionSecond: Base.Vector3): gp_Ax2;
    gpAx1(point: Base.Point3, direction: Base.Vector3): gp_Ax1;
    gpAx2d(point: Base.Point2, direction: Base.Vector2): gp_Ax2d_2;
    gpAx22d(point: Base.Point2, direction1: Base.Vector2, direction2: Base.Vector2): gp_Ax22d_2;
    gpPln(point: Base.Point3, direction: Base.Vector3): gp_Pln_3;
    bRepPrimAPIMakeCylinder(center: Base.Point3, direction: Base.Vector3, radius: number, height: number, angle: number): TopoDS_Shape;
    bRepPrimAPIMakeCylinderBetweenPoints(start: Base.Point3, end: Base.Point3, radius: number): TopoDS_Shape;
    bRepPrimAPIMakeBox(width: number, length: number, height: number, center: number[]): TopoDS_Shape;
    private castToHandleGeomCurve;
}
