import { EventEmitter2 } from "@inweb/eventemitter2";
import { IOptions, RGB } from "./IOptions";
export declare class Options implements IOptions {
    protected _emitter?: EventEmitter2;
    protected _data: IOptions;
    constructor(emitter?: EventEmitter2);
    static defaults(): IOptions;
    notifierChangeEvent(): void;
    change(): void;
    saveToStorage(): void;
    loadFromStorage(): void;
    /**
     * Resets options to default values.
     *
     * @param fields - Name of fields to be reset. Specify `undefined` to reset all.
     */
    resetToDefaults(fields?: string[]): void;
    get data(): IOptions;
    set data(value: IOptions);
    get showWCS(): boolean;
    set showWCS(value: boolean);
    get cameraAnimation(): boolean;
    set cameraAnimation(value: boolean);
    get antialiasing(): boolean;
    set antialiasing(value: boolean);
    get groundShadow(): boolean;
    set groundShadow(value: boolean);
    get shadows(): boolean;
    set shadows(value: boolean);
    get cameraAxisXSpeed(): number;
    set cameraAxisXSpeed(value: number);
    get cameraAxisYSpeed(): number;
    set cameraAxisYSpeed(value: number);
    get ambientOcclusion(): boolean;
    set ambientOcclusion(value: boolean);
    get enableStreamingMode(): boolean;
    set enableStreamingMode(value: boolean);
    get enablePartialMode(): boolean;
    set enablePartialMode(value: boolean);
    get memoryLimit(): number;
    set memoryLimit(value: number);
    get cuttingPlaneFillColor(): RGB;
    set cuttingPlaneFillColor(value: RGB);
    get edgesColor(): {
        r: number;
        g: number;
        b: number;
    };
    set edgesColor(value: {
        r: number;
        g: number;
        b: number;
    });
    get facesColor(): {
        r: number;
        g: number;
        b: number;
    };
    set facesColor(value: {
        r: number;
        g: number;
        b: number;
    });
    get edgesVisibility(): boolean;
    set edgesVisibility(value: boolean);
    get edgesOverlap(): boolean;
    set edgesOverlap(value: boolean);
    get facesOverlap(): boolean;
    set facesOverlap(value: boolean);
    get facesTransparancy(): number;
    set facesTransparancy(value: number);
    get enableCustomHighlight(): boolean;
    set enableCustomHighlight(value: boolean);
    get sceneGraph(): boolean;
    set sceneGraph(value: boolean);
    get edgeModel(): boolean;
    set edgeModel(value: boolean);
    get reverseZoomWheel(): boolean;
    set reverseZoomWheel(value: boolean);
    get enableZoomWheel(): boolean;
    set enableZoomWheel(value: boolean);
    get enableGestures(): boolean;
    set enableGestures(value: boolean);
    get geometryType(): string;
    set geometryType(value: string);
    get rulerUnit(): string;
    set rulerUnit(value: string);
}
