import { GroupItem } from "./GroupItem";
import { Item } from "./Item";
import { Color } from "../../Colors";
import { IColorWithTitle } from "../Interfaces/IColorWithTitle";
export declare class ClipartItem extends GroupItem {
    static type: string;
    type: string;
    private _colorGroups;
    constructor(items?: Item[], colorGroups?: ColorGroup[]);
    getSimplifiedObject(omitProperties?: string[] | string): Object;
    clone(generateNewIds?: boolean, appropriateParentContainer?: boolean): ClipartItem;
    applyPermissionsConstrain(): void;
    get colorGroups(): ColorGroup[];
    set colorGroups(value: ColorGroup[]);
    setColor(colorGroup: ColorGroup, targetColor: Color | IColorWithTitle): void;
    protected _copy(source: ClipartItem, destination: ClipartItem, generateNewIds: boolean, appropriateParentContainer: boolean): void;
    private _onItemAdded;
    private _onItemRemoved;
    private static _generateColorGroups;
    private _setShapeItemColor;
}
export declare class ColorGroup {
    color: Color;
    targets: ColorGroupTarget[];
    constructor(color: Color, targets?: ColorGroupTarget[]);
    clone(): ColorGroup;
}
export declare class ColorGroupTarget {
    itemId: string;
    prop: ItemColorProperty;
}
export declare enum ItemColorProperty {
    BorderColor = 0,
    FillColor = 1
}
