/* * Copyright (c) 2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include <functional> #import <Cocoa/Cocoa.h> #import <Sparkle/Sparkle.h> namespace Swift { class SparkleAutoUpdater; } @interface SparkleAutoUpdaterDelegate : NSObject<SUUpdaterDelegate> @property (atomic) std::function< void ()> updateDownloadFinished; - (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast; - (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update; - (id <SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater; - (void)updaterDidNotFindUpdate:(SUUpdater *)update; - (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update; - (void)updater:(SUUpdater *)updater willInstallUpdateOnQuit:(SUAppcastItem *)item immediateInstallationInvocation:(NSInvocation *)invocation; - (void)updater:(SUUpdater *)updater didAbortWithError:(NSError *)error; @end