import { EventEmitter } from 'ag-charts-core';
type NotifiableNode = {
    markDirty: () => void;
};
type EventMap = {
    'image-loaded': {
        uri: string;
    };
    'image-error': {
        uri: string;
    };
};
export interface ImageSizeHint {
    width: number;
    height: number;
}
export declare class ImageLoader extends EventEmitter<EventMap> {
    private readonly cache;
    private imageLoadingCount;
    private destroyed;
    loadImage(uri: string, affectedNode?: NotifiableNode, sizeHint?: ImageSizeHint): HTMLImageElement | undefined;
    unregisterNode(node: NotifiableNode): void;
    private resolveSource;
    waitingToLoad(): boolean;
    destroy(): void;
}
export {};
