import { MarkupEntity, MarkupEntityConstructorArgs } from './MarkupEntity';
import { MarkupSheet2D } from './MarkupSheet2D';
import { Vertex3 } from '../../math';
import { Color4 } from '../../loader/babylonjs-import';
import { MarkupStyle } from '../MarkupEntityTypes';
import { MergableObjectEventArgs } from '../../MergableSet';
/**
 * Style for the markup line.
 */
export interface MarkupLineStyle {
    /** Background color for the markup line */
    backgroundColor: Color4;
}
/**
 * Class representing a markup line in the markup API.
 */
export declare class MarkupLine extends MarkupEntity implements MarkupStyle<MarkupLineStyle> {
    linePoints: Vertex3[];
    style: {
        backgroundColor: Color4;
    };
    thickness: number;
    /**
     * Do not use. Use {@link MarkupSheet2D.add} instead.
     * @hidden
     */
    constructor({ id, sheet, properties, linePoints, style, thickness }: MarkupEntityConstructorArgs & {
        linePoints: Vertex3[];
        style: MarkupLineStyle;
        thickness: number;
    });
    /**
     * Copy the line to another markup sheet.
     * @param sheet Markup sheet to copy the line to.
     * @returns The new markup line entity.
     */
    copyTo(sheet: MarkupSheet2D): MarkupLine;
    onUpdate(o: MergableObjectEventArgs<MarkupLine>): void;
    copyFrom(line: MarkupLine): void;
    isEqual(o: MarkupLine): boolean;
    clone(): MarkupLine;
}
//# sourceMappingURL=MarkupLine.d.ts.map