import { MarkupEntity, MarkupEntityConstructorArgs } from './MarkupEntity';
import { MarkupSheet2D } from './MarkupSheet2D';
import { MarkupStyle } from '../MarkupEntityTypes';
import { MergableObjectEventArgs } from '../../MergableSet';
import { Color4, Vector3 } from '../../loader/babylonjs-import';
/**
 * Style for the markup text.
 */
export interface MarkupTextStyle {
    /** Background color for the markup text */
    backgroundColor: Color4;
}
/**
 * Class representing a markup text in the markup API.
 * WARNING: MarkupText does not sanitize any text passed to it, if you are using MarkupText in conjunction with Html2CanvasText make sure to use a sanitizer (for example DOMPurify).
 */
export declare class MarkupText extends MarkupEntity implements MarkupStyle<MarkupTextStyle> {
    style: {
        backgroundColor: Color4;
    };
    position: Vector3;
    normal: Vector3;
    scale: Vector3 | number;
    text: string;
    rotation: number;
    /**
     * Do not use. Use {@link MarkupSheet2D.add} instead.
     * @hidden
     */
    constructor({ id, sheet, properties, style, position, normal, scale, text, rotation }: MarkupEntityConstructorArgs & {
        style: MarkupTextStyle;
        position: Vector3;
        normal: Vector3;
        scale: Vector3 | number;
        text: string;
        rotation: number;
    });
    /** @inheritDoc */
    copyTo(sheet: MarkupSheet2D): MarkupText;
    /** @inheritDoc */
    onUpdate(o: MergableObjectEventArgs<MarkupText>): void;
    /**Copies data of other markup text into current */
    copyFrom(text: MarkupText): void;
    /** @inheritDoc */
    clone(): MarkupText;
    /** @inheritDoc */
    isEqual(o: MarkupText): boolean;
    private scalePropertiesEqual;
}
//# sourceMappingURL=MarkupText.d.ts.map