import { Item } from "./Item";
import { Path } from "../../Math/Path";
import { RectangleF } from "../../Math/RectangleF";
import { ShapePermissions } from "./ShapePermissions";
import { Color } from "../../Colors";
import { EventObject } from "../../EventObject";
import { ShapeViolationSettings } from "./ShapeViolationSettings";
export declare class ShapeItem extends Item {
    private _borderWidth;
    private _fillColor;
    private _borderColor;
    private _altBorderColor;
    private _dash;
    private _fixedBorderWidth;
    private _shapePermissions;
    private _sourcePath;
    private _sourceRectangle;
    private _overprintStroke;
    private _overprintFill;
    constructor(sourcePath?: Path);
    get fixedBorderWidth(): boolean;
    set fixedBorderWidth(value: boolean);
    get borderWidth(): number;
    set borderWidth(value: number);
    get sourcePath(): Path;
    set sourcePath(value: Path);
    get sourceRectangle(): RectangleF;
    set sourceRectangle(value: RectangleF);
    get borderColor(): Color;
    set borderColor(value: Color);
    get overprintStroke(): boolean;
    set overprintStroke(value: boolean);
    get fillColor(): Color;
    set fillColor(value: Color);
    get overprintFill(): boolean;
    set overprintFill(value: boolean);
    get altBorderColor(): Color;
    set altBorderColor(value: Color);
    get dash(): number[];
    set dash(value: number[]);
    sourcePathId: string;
    sourcePathLoaded: boolean;
    private _stubPath;
    private _pathLoadedEvent;
    applyPermissionsConstrain(): void;
    get shapePermissions(): ShapePermissions;
    set shapePermissions(value: ShapePermissions);
    get violationSettings(): ShapeViolationSettings;
    set violationSettings(value: ShapeViolationSettings);
    protected _setViolationSettings(value: ShapeViolationSettings, skipTypeCheck?: boolean): void;
    protected _copy(source: ShapeItem, destination: ShapeItem, generateNewIds: boolean, appropriateParentContainer: boolean): void;
    equals(other: ShapeItem): any;
    clone(generateNewIds?: boolean, appropriateParentContainer?: boolean): ShapeItem;
    getSimplifiedObject(omitProperties?: string[] | string): Object;
    static type: string;
    type: string;
    private _onPathLoaded;
    getPathLoadedEvent(): EventObject<unknown>;
}
