import { Color } from "../../Colors";
import { EventWithSenderArg } from "../../EventObject";
export declare enum LineJoin {
    Miter = "Miter",
    Round = "Round",
    Bevel = "Bevel"
}
export declare class StrokeSettings {
    private _color;
    private _size;
    private _lineJoin;
    static type: string;
    type: string;
    get color(): Color;
    set color(value: Color);
    get size(): number;
    set size(value: number);
    get lineJoin(): LineJoin;
    set lineJoin(value: LineJoin);
    constructor(object?: {
        color?: Color;
        size?: number;
        lineJoin?: LineJoin;
    });
    clone(): StrokeSettings;
    equals(settings: StrokeSettings): boolean;
    static equals(a: StrokeSettings, b: StrokeSettings): boolean;
    getSimplifiedObject(): {
        color: import("../../Colors").IColor;
        size: number;
        lineJoin: LineJoin;
    };
    protected _propertyChanged: EventWithSenderArg<StrokeSettings, string>;
    addPropertyChanged(listener: (sender: StrokeSettings, eventArgs: string) => void): void;
    removePropertyChanged(listener: (sender: StrokeSettings, eventArgs: string) => void): void;
}
