This repository was archived by the owner on May 1, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 173
/
Copy pathApiDefinition.cs
87 lines (71 loc) · 4.44 KB
/
ApiDefinition.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
using Foundation;
using ObjCRuntime;
using System;
#if !NET
using NativeHandle = System.IntPtr;
#endif
namespace Firebase.ABTesting {
// @interface FIRExperimentController : NSObject
[DisableDefaultCtor]
[BaseType (typeof (NSObject), Name = "FIRExperimentController")]
interface ExperimentController {
// +(FIRExperimentController * _Nonnull)sharedInstance;
[Static]
[Export ("sharedInstance")]
ExperimentController SharedInstance { get; }
// -(void)updateExperimentsWithServiceOrigin:(NSString * _Nonnull)origin events:(FIRLifecycleEvents * _Nonnull)events policy:(ABTExperimentPayloadExperimentOverflowPolicy)policy lastStartTime:(NSTimeInterval)lastStartTime payloads:(NSArray<NSData *> * _Nonnull)payloads completionHandler:(void (^ _Nullable)(NSError * _Nullable))completionHandler;
[Export ("updateExperimentsWithServiceOrigin:events:policy:lastStartTime:payloads:completionHandler:")]
void UpdateExperiments (string origin, LifecycleEvents events, NSObject policy, double lastStartTime, NSData [] payloads, [NullAllowed] Action<NSError> completionHandler);
// -(NSTimeInterval)latestExperimentStartTimestampBetweenTimestamp:(NSTimeInterval)timestamp andPayloads:(NSArray<NSData *> * _Nonnull)payloads;
[Export ("latestExperimentStartTimestampBetweenTimestamp:andPayloads:")]
double GetLatestExperimentStartTimestampBetweenTimestamp (double timestamp, NSData [] payloads);
// -(void)validateRunningExperimentsForServiceOrigin:(NSString * _Nonnull)origin runningExperimentPayloads:(NSArray<ABTExperimentPayload *> * _Nonnull)payloads;
[Export ("validateRunningExperimentsForServiceOrigin:runningExperimentPayloads:")]
void ValidateRunningExperiments (string origin, NSObject [] payloads);
// -(void)activateExperiment:(ABTExperimentPayload * _Nonnull)experimentPayload forServiceOrigin:(NSString * _Nonnull)origin;
[Export ("activateExperiment:forServiceOrigin:")]
void ActivateExperiment (NSObject experimentPayload, string origin);
}
[Static]
interface DefaultLifecycleEventNames {
// extern NSString *const _Nonnull FIRSetExperimentEventName;
[Field ("FIRSetExperimentEventName", "__Internal")]
NSString SetExperiment { get; }
// extern NSString *const _Nonnull FIRActivateExperimentEventName;
[Field ("FIRActivateExperimentEventName", "__Internal")]
NSString ActivateExperiment { get; }
// extern NSString *const _Nonnull FIRClearExperimentEventName;
[Field ("FIRClearExperimentEventName", "__Internal")]
NSString ClearExperiment { get; }
// extern NSString *const _Nonnull FIRTimeoutExperimentEventName;
[Field ("FIRTimeoutExperimentEventName", "__Internal")]
NSString TimeoutExperiment { get; }
// extern NSString *const _Nonnull FIRExpireExperimentEventName;
[Field ("FIRExpireExperimentEventName", "__Internal")]
NSString ExpireExperiment { get; }
}
// @interface FIRLifecycleEvents : NSObject
[BaseType (typeof (NSObject), Name = "FIRLifecycleEvents")]
interface LifecycleEvents {
// @property (copy, nonatomic) NSString * _Nonnull setExperimentEventName;
[Advice ("You can use the default event name 'DefaultLifecycleEventNames.SetExperiment'.")]
[Export ("setExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)]
NSString SetExperimentEventName { get; set; }
// @property (copy, nonatomic) NSString * _Nonnull activateExperimentEventName;
[Advice ("You can use the default event name 'DefaultLifecycleEventNames.ActivateExperiment'.")]
[Export ("activateExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)]
NSString ActivateExperimentEventName { get; set; }
// @property (copy, nonatomic) NSString * _Nonnull clearExperimentEventName;
[Advice ("You can use the default event name 'DefaultLifecycleEventNames.ClearExperiment'.")]
[Export ("clearExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)]
NSString ClearExperimentEventName { get; set; }
// @property (copy, nonatomic) NSString * _Nonnull timeoutExperimentEventName;
[Advice ("You can use the default event name 'DefaultLifecycleEventNames.TimeoutExperiment'.")]
[Export ("timeoutExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)]
NSString TimeoutExperimentEventName { get; set; }
// @property (copy, nonatomic) NSString * _Nonnull expireExperimentEventName;
[Advice ("You can use the default event name 'DefaultLifecycleEventNames.ExpireExperiment'.")]
[Export ("expireExperimentEventName", ArgumentSemantic = ArgumentSemantic.Copy)]
NSString ExpireExperimentEventName { get; set; }
}
}