import { Path } from './path';
import { Point } from './point';
declare class Shape {
    private paths;
    constructor(paths?: Path[]);
    push(path: Path): void;
    getPaths(): Path[];
    translate(dx?: number, dy?: number, dz?: number): Shape;
    rotateX(origin: Point, angle: number): Shape;
    rotateY(origin: Point, angle: number): Shape;
    rotateZ(origin: Point, angle: number): Shape;
    scale(origin: Point, scaleX: number, scaleY?: number, scaleZ?: number): Shape;
    orderedPaths(): Path[];
    static extrude(path: Path, height?: number): Shape;
    static Prism(origin: Point, dx?: number, dy?: number, dz?: number): Shape;
    static Pyramid(origin: Point, dx?: number, dy?: number, dz?: number): Shape;
    static Cylinder(origin: Point, radius: number | undefined, vertices: number, height: number): Shape;
}
export { Shape };
