This repository has been archived on 2022-03-12. You can view files and clone it, but cannot push or open issues or pull requests.
2021-04-02 02:24:13 +03:00

56 lines
2.0 KiB
Objective-C

// Copyright © 2019 650 Industries. All rights reserved.
#import <EXUpdates/EXUpdatesAsset.h>
#import <EXUpdates/EXUpdatesConfig.h>
@class EXUpdatesDatabase;
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSInteger, EXUpdatesUpdateStatus) {
EXUpdatesUpdateStatusFailed = 0,
EXUpdatesUpdateStatusReady = 1,
EXUpdatesUpdateStatusLaunchable = 2,
EXUpdatesUpdateStatusPending = 3,
EXUpdatesUpdateStatusUnused = 4,
EXUpdatesUpdateStatusEmbedded = 5,
EXUpdatesUpdateStatusDevelopment = 6
};
@interface EXUpdatesUpdate : NSObject
@property (nonatomic, strong, readonly) NSUUID *updateId;
@property (nonatomic, strong, readonly) NSString *scopeKey;
@property (nonatomic, strong, readonly) NSDate *commitTime;
@property (nonatomic, strong, readonly) NSString *runtimeVersion;
@property (nonatomic, strong, readonly, nullable) NSDictionary * metadata;
@property (nonatomic, assign, readonly) BOOL keep;
@property (nonatomic, strong, readonly) NSArray<EXUpdatesAsset *> *assets;
@property (nonatomic, assign, readonly) BOOL isDevelopmentMode;
@property (nonatomic, strong, readonly) NSDictionary *rawManifest;
@property (nonatomic, assign) EXUpdatesUpdateStatus status;
+ (instancetype)updateWithId:(NSUUID *)updateId
scopeKey:(NSString *)scopeKey
commitTime:(NSDate *)commitTime
runtimeVersion:(NSString *)runtimeVersion
metadata:(nullable NSDictionary *)metadata
status:(EXUpdatesUpdateStatus)status
keep:(BOOL)keep
config:(EXUpdatesConfig *)config
database:(EXUpdatesDatabase *)database;
+ (instancetype)updateWithManifest:(NSDictionary *)manifest
config:(EXUpdatesConfig *)config
database:(EXUpdatesDatabase *)database;
+ (instancetype)updateWithEmbeddedManifest:(NSDictionary *)manifest
config:(EXUpdatesConfig *)config
database:(nullable EXUpdatesDatabase *)database;
@end
NS_ASSUME_NONNULL_END