import { IEventEmitter } from "@inweb/eventemitter2";
import { IViewpoint } from "@inweb/viewer-core";
import { IMarkup, IMarkupObject, IWorldTransform, MarkupMode } from "@inweb/markup";
export declare class VisualizeMarkup implements IMarkup {
    private _viewer;
    protected _markupColor: {
        r: number;
        g: number;
        b: number;
    };
    lineWidth: number;
    lineType: "solid";
    fontSize: number;
    initialize(container: HTMLElement, containerEvents: string[], viewer?: IEventEmitter, worldTransformer?: IWorldTransform): void;
    dispose(): void;
    syncOverlay(): void;
    clearOverlay(): void;
    getMarkupColor(): {
        r: number;
        g: number;
        b: number;
    };
    setMarkupColor(r: number, g: number, b: number): void;
    colorizeAllMarkup(r?: number, g?: number, b?: number): void;
    colorizeSelectedMarkups(r?: number, g?: number, b?: number): void;
    setViewpoint(viewpoint: IViewpoint): void;
    getViewpoint(viewpoint: IViewpoint): IViewpoint;
    enableEditMode(mode: MarkupMode | false): this;
    createObject(type: string, params: any): IMarkupObject;
    getObjects(): IMarkupObject[];
    getSelectedObjects(): IMarkupObject[];
    selectObjects(objects: IMarkupObject[]): void;
    clearSelected(): void;
}
