import { Image } from '@lxdhub/db';
import { LXDHubDbSyncSettings } from '../dbsync-settings.interface';
import { LXDService } from '../lxd';
import { ImageDtoFactory } from './factories/image-dto.factory';
import { Repository } from 'typeorm';
export declare class ImageService {
    private imageRepository;
    private imageDtoFactory;
    private dbSyncSettings;
    private lxdService;
    private logger;
    constructor(imageRepository: Repository<Image>, imageDtoFactory: ImageDtoFactory, dbSyncSettings: LXDHubDbSyncSettings, lxdService: LXDService);
    createImage(remoteImage: any): Promise<Image>;
    updateImage(localImage: Image, remoteImage: any): Promise<Image>;
    updateOrCreateImage(remoteImage: any): Promise<Image>;
    getImage(remoteImage: any): Promise<Image>;
    synchronize(): Promise<void>;
}
