import { BaseItemsCommand } from "./BaseItemsCommand";
import { IHistoryArgs } from "../ModelUpdateCommand";
import { PlaceholderItem, ImageItem, ImageMetaData } from "@aurigma/design-atoms-model/Product/Items";
import { ProductHandler } from "../../Services/ProductHandler";
import { VariableItemHelper } from "../../Services/VariableItemHelper";
import { ICommandManager } from "../ICommandManager";
import { EventManager } from "../../Services/EventManager";
import { RotatedRectangleF } from "@aurigma/design-atoms-model/Math";
import { ISetImageMetadataCommandArgs as ISetImageMetadataCommandArgsAbstraction, ISetMetadataListItem as ISetMetadataListItemAbstraction } from "@aurigma/design-atoms-interfaces";
export interface ISetImageMetadataCommandArgs extends ISetImageMetadataCommandArgsAbstraction<ImageItem, PlaceholderItem, ImageMetaData, RotatedRectangleF> {
}
export interface ISetMetadataListItem extends ISetMetadataListItemAbstraction<ImageItem, PlaceholderItem, ImageMetaData, RotatedRectangleF> {
}
export declare class SetImageMetadataCommand extends BaseItemsCommand<ISetImageMetadataCommandArgs, void> {
    private _variableItemHelper;
    private _commandManager;
    private _eventManager;
    constructor(productHandler: ProductHandler, historyArgs: IHistoryArgs, args: ISetImageMetadataCommandArgs, _variableItemHelper: VariableItemHelper, _commandManager: ICommandManager, _eventManager: EventManager);
    _executeCommandBody(): Promise<void>;
    private _setImageDataList;
    private _ensureImageItemName;
    private _normalizeDataList;
    redo(): Promise<void>;
    undo(): Promise<void>;
    static setDataToImage(data: ImageMetaData, imageItem: ImageItem): void;
}
