import { OpenCascadeInstance, TopoDS_Compound, TopoDS_Edge, TopoDS_Shape, TopoDS_Wire, TopoDS_Face } from "../../bitbybit-dev-occt/bitbybit-dev-occt";
import { OccHelper } from "../occ-helper";
import * as Inputs from "../api/inputs/inputs";
export declare class OCCTOperations {
    private readonly occ;
    private readonly och;
    constructor(occ: OpenCascadeInstance, och: OccHelper);
    closestPointsBetweenTwoShapes(inputs: Inputs.OCCT.ClosestPointsBetweenTwoShapesDto<TopoDS_Shape>): [Inputs.Base.Point3, Inputs.Base.Point3];
    closestPointsOnShapeFromPoints(inputs: Inputs.OCCT.ClosestPointsOnShapeFromPointsDto<TopoDS_Shape>): Inputs.Base.Point3[];
    closestPointsOnShapesFromPoints(inputs: Inputs.OCCT.ClosestPointsOnShapesFromPointsDto<TopoDS_Shape>): Inputs.Base.Point3[];
    distancesToShapeFromPoints(inputs: Inputs.OCCT.ClosestPointsOnShapeFromPointsDto<TopoDS_Shape>): number[];
    loft(inputs: Inputs.OCCT.LoftDto<TopoDS_Wire | TopoDS_Edge>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    loftAdvanced(inputs: Inputs.OCCT.LoftAdvancedDto<TopoDS_Wire | TopoDS_Edge>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    offset(inputs: Inputs.OCCT.OffsetDto<TopoDS_Shape, TopoDS_Face>): TopoDS_Shape;
    offsetAdv(inputs: Inputs.OCCT.OffsetAdvancedDto<TopoDS_Shape, TopoDS_Face>): TopoDS_Shape;
    offset3DWire(inputs: Inputs.OCCT.Offset3DWireDto<TopoDS_Wire>): TopoDS_Wire | TopoDS_Edge[];
    extrudeShapes(inputs: Inputs.OCCT.ExtrudeShapesDto<TopoDS_Shape>): TopoDS_Shape[];
    extrude(inputs: Inputs.OCCT.ExtrudeDto<TopoDS_Shape>): TopoDS_Shape;
    splitShapeWithShapes(inputs: Inputs.OCCT.SplitDto<TopoDS_Shape>): TopoDS_Shape;
    revolve(inputs: Inputs.OCCT.RevolveDto<TopoDS_Shape>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    rotatedExtrude(inputs: Inputs.OCCT.RotationExtrudeDto<TopoDS_Shape>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    pipe(inputs: Inputs.OCCT.ShapeShapesDto<TopoDS_Wire, TopoDS_Shape>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    pipePolylineWireNGon(inputs: Inputs.OCCT.PipePolygonWireNGonDto<TopoDS_Wire>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    pipeWireCylindrical(inputs: Inputs.OCCT.PipeWireCylindricalDto<TopoDS_Wire>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    pipeWiresCylindrical(inputs: Inputs.OCCT.PipeWiresCylindricalDto<TopoDS_Wire>): (TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound)[];
    makeThickSolidSimple(inputs: Inputs.OCCT.ThisckSolidSimpleDto<TopoDS_Shape>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    makeThickSolidByJoin(inputs: Inputs.OCCT.ThickSolidByJoinDto<TopoDS_Shape>): TopoDS_Edge | TopoDS_Face | TopoDS_Wire | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Shell | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Vertex | import("../../bitbybit-dev-occt/bitbybit-dev-occt").TopoDS_Solid | TopoDS_Compound;
    slice(inputs: Inputs.OCCT.SliceDto<TopoDS_Shape>): TopoDS_Compound;
    sliceInStepPattern(inputs: Inputs.OCCT.SliceInStepPatternDto<TopoDS_Shape>): TopoDS_Compound;
}
