import { Base } from "./base-inputs";
export declare namespace Line {
    class LinePointsDto {
        /**
         * Provide options without default values
         */
        constructor(start?: Base.Point3, end?: Base.Point3);
        /**
         * Start point
         */
        start: Base.Point3;
        /**
         * End point
         */
        end: Base.Point3;
    }
    class LineStartEndPointsDto {
        /**
         * Provide options without default values
         */
        constructor(startPoints?: Base.Point3[], endPoints?: Base.Point3[]);
        /**
         * Start points
         */
        startPoints: Base.Point3[];
        /**
         * End points
         */
        endPoints: Base.Point3[];
    }
    class DrawLineDto<T> {
        /**
         * Provide options without default values
         */
        constructor(line?: LinePointsDto, opacity?: number, colours?: string | string[], size?: number, updatable?: boolean, lineMesh?: T);
        /**
         * Line
         */
        line: LinePointsDto;
        /**
         * Value between 0 and 1
         */
        opacity: number;
        /**
         * Hex colour string
         */
        colours: string | string[];
        /**
         * Width of the line
         */
        size: number;
        /**
         * Indicates wether the position of this line will change in time
         */
        updatable: boolean;
        /**
         * Line mesh variable in case it already exists and needs updating
         */
        lineMesh?: T;
    }
    class DrawLinesDto<T> {
        /**
         * Provide options without default values
         */
        constructor(lines?: LinePointsDto[], opacity?: number, colours?: string | string[], size?: number, updatable?: boolean, linesMesh?: T);
        /**
         * Lines
         */
        lines: LinePointsDto[];
        /**
         * Value between 0 and 1
         */
        opacity: number;
        /**
         * Hex colour string
         */
        colours: string | string[];
        /**
         * Width of the line
         */
        size: number;
        /**
         * Indicates wether the position of these lines will change in time
         */
        updatable: boolean;
        /**
         * Line mesh variable in case it already exists and needs updating
         */
        linesMesh?: T;
    }
    class PointsLinesDto {
        constructor(points?: Base.Point3[]);
        /**
         * Points
         */
        points: Base.Point3[];
    }
    class LineDto {
        constructor(line?: LinePointsDto);
        /**
         * Line to convert
         */
        line: LinePointsDto;
    }
    class LinesDto {
        constructor(lines?: LinePointsDto[]);
        /**
         * Lines to convert
         */
        lines: LinePointsDto[];
    }
    class PointOnLineDto {
        constructor(line?: LinePointsDto, param?: number);
        /**
         * Line to get point on
         */
        line: LinePointsDto;
        /**
         * Param to use for point on line
         */
        param: number;
    }
    class TransformLineDto {
        constructor(line?: LinePointsDto, transformation?: Base.TransformMatrixes);
        /**
         * Line to transform
         */
        line: LinePointsDto;
        /**
         * Transformation matrix or a list of transformation matrixes
         */
        transformation: Base.TransformMatrixes;
    }
    class TransformsLinesDto {
        constructor(lines?: LinePointsDto[], transformation?: Base.TransformMatrixes[]);
        /**
         * Lines to transform
         */
        lines: LinePointsDto[];
        /**
         * Transformations matrix or a list of transformations matrixes
         */
        transformation: Base.TransformMatrixes[];
    }
    class TransformLinesDto {
        constructor(lines?: LinePointsDto[], transformation?: Base.TransformMatrixes);
        /**
         * Lines to transform
         */
        lines: LinePointsDto[];
        /**
         * Transformation matrix or a list of transformation matrixes
         */
        transformation: Base.TransformMatrixes;
    }
}
