import { ImageContainer } from "../ItemHandlers/ImageContainer";
import { RectangleF } from "@aurigma/design-atoms-model/Math/RectangleF";
interface ICombinedImageDescription {
    fileCacheId: string;
    itemsRectangles: Map<string, string>;
    largeImagesIds: string[];
}
export declare class ItemHandlerImageLoaderService {
    private _serviceEndpoint;
    private readonly _imageContainers;
    private readonly _fileCacheIdToCombined;
    private readonly _locks;
    private readonly _rectangles;
    private _imageContainerLoadedEvent;
    constructor(_serviceEndpoint: any);
    loadCombinedImage(combinedImageDescription: ICombinedImageDescription): void;
    getImageContainerFor(cacheFileId: string): ImageContainer;
    hasImageContainerFor(cacheFileId: string): boolean;
    lockImageContainerFor(cacheFileId: string, lockObjectId: string): void;
    releaseImageContainerFor(cacheFileId: string, lockObjectId: string): void;
    private _releaseCacheId;
    getImageContainerRectangleFor(cacheFileId: string): RectangleF;
    addImageContainerLoaded(handler: (sender: ItemHandlerImageLoaderService) => any): void;
    removeImageContainerLoaded(handler: (sender: ItemHandlerImageLoaderService) => any): void;
    private _getImageUrl;
    private _raiseImageLoadedEvent;
}
export {};
