|
| 1 | +using Foundation; |
| 2 | +using ObjCRuntime; |
| 3 | + |
| 4 | +namespace Firebase.ABTesting { |
| 5 | + // @interface FIRExperimentController : NSObject |
| 6 | + [DisableDefaultCtor] |
| 7 | + [BaseType (typeof (NSObject), Name = "FIRExperimentController")] |
| 8 | + interface ExperimentController { |
| 9 | + // +(FIRExperimentController * _Nonnull)sharedInstance; |
| 10 | + [Static] |
| 11 | + [Export ("sharedInstance")] |
| 12 | + ExperimentController SharedInstance { get; } |
| 13 | + |
| 14 | + // -(void)updateExperimentsWithServiceOrigin:(NSString * _Nonnull)origin events:(FIRLifecycleEvents * _Nonnull)events policy:(NSObject * _Nonnull)policy lastStartTime:(NSTimeInterval)lastStartTime payloads:(NSArray<NSData *> * _Nonnull)payloads; |
| 15 | + [Export ("updateExperimentsWithServiceOrigin:events:policy:lastStartTime:payloads:")] |
| 16 | + void UpdateExperiments (string origin, LifecycleEvents events, NSObject policy, double lastStartTime, NSData [] payloads); |
| 17 | + |
| 18 | + // -(NSTimeInterval)latestExperimentStartTimestampBetweenTimestamp:(NSTimeInterval)timestamp andPayloads:(NSArray<NSData *> * _Nonnull)payloads; |
| 19 | + [Export ("latestExperimentStartTimestampBetweenTimestamp:andPayloads:")] |
| 20 | + double GetLatestExperimentStartTimestampBetweenTimestamp (double timestamp, NSData [] payloads); |
| 21 | + } |
| 22 | + |
| 23 | + [Static] |
| 24 | + interface DefaultLifecycleEventNames { |
| 25 | + // extern NSString *const _Nonnull FIRSetExperimentEventName; |
| 26 | + [Field ("FIRSetExperimentEventName", "__Internal")] |
| 27 | + NSString SetExperiment { get; } |
| 28 | + |
| 29 | + // extern NSString *const _Nonnull FIRActivateExperimentEventName; |
| 30 | + [Field ("FIRActivateExperimentEventName", "__Internal")] |
| 31 | + NSString ActivateExperiment { get; } |
| 32 | + |
| 33 | + // extern NSString *const _Nonnull FIRClearExperimentEventName; |
| 34 | + [Field ("FIRClearExperimentEventName", "__Internal")] |
| 35 | + NSString ClearExperiment { get; } |
| 36 | + |
| 37 | + // extern NSString *const _Nonnull FIRTimeoutExperimentEventName; |
| 38 | + [Field ("FIRTimeoutExperimentEventName", "__Internal")] |
| 39 | + NSString TimeoutExperiment { get; } |
| 40 | + |
| 41 | + // extern NSString *const _Nonnull FIRExpireExperimentEventName; |
| 42 | + [Field ("FIRExpireExperimentEventName", "__Internal")] |
| 43 | + NSString ExpireExperiment { get; } |
| 44 | + } |
| 45 | + |
| 46 | + // @interface FIRLifecycleEvents : NSObject |
| 47 | + [BaseType (typeof (NSObject), Name = "FIRLifecycleEvents")] |
| 48 | + interface LifecycleEvents { |
| 49 | + // @property (copy, nonatomic) NSString * _Nonnull setExperimentEventName; |
| 50 | + [Advice ("You can use the default event name 'DefaultLifecycleEventNames.SetExperiment'.")] |
| 51 | + [Export ("setExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)] |
| 52 | + NSString SetExperimentEventName { get; set; } |
| 53 | + |
| 54 | + // @property (copy, nonatomic) NSString * _Nonnull activateExperimentEventName; |
| 55 | + [Advice ("You can use the default event name 'DefaultLifecycleEventNames.ActivateExperiment'.")] |
| 56 | + [Export ("activateExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)] |
| 57 | + NSString ActivateExperimentEventName { get; set; } |
| 58 | + |
| 59 | + // @property (copy, nonatomic) NSString * _Nonnull clearExperimentEventName; |
| 60 | + [Advice ("You can use the default event name 'DefaultLifecycleEventNames.ClearExperiment'.")] |
| 61 | + [Export ("clearExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)] |
| 62 | + NSString ClearExperimentEventName { get; set; } |
| 63 | + |
| 64 | + // @property (copy, nonatomic) NSString * _Nonnull timeoutExperimentEventName; |
| 65 | + [Advice ("You can use the default event name 'DefaultLifecycleEventNames.TimeoutExperiment'.")] |
| 66 | + [Export ("timeoutExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)] |
| 67 | + NSString TimeoutExperimentEventName { get; set; } |
| 68 | + |
| 69 | + // @property (copy, nonatomic) NSString * _Nonnull expireExperimentEventName; |
| 70 | + [Advice ("You can use the default event name 'DefaultLifecycleEventNames.ExpireExperiment'.")] |
| 71 | + [Export ("expireExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)] |
| 72 | + NSString ExpireExperimentEventName { get; set; } |
| 73 | + } |
| 74 | +} |
0 commit comments