1*753557f6STomasz Sapeta import ABI47_0_0ExpoModulesCore
2*753557f6STomasz Sapeta 
3*753557f6STomasz Sapeta public class TrackingTransparencyModule: Module {
definitionnull4*753557f6STomasz Sapeta   public func definition() -> ModuleDefinition {
5*753557f6STomasz Sapeta     Name("ExpoTrackingTransparency")
6*753557f6STomasz Sapeta 
7*753557f6STomasz Sapeta     OnCreate {
8*753557f6STomasz Sapeta       ABI47_0_0EXPermissionsMethodsDelegate.register([TrackingTransparencyPermissionRequester()], withPermissionsManager: self.appContext?.permissions)
9*753557f6STomasz Sapeta     }
10*753557f6STomasz Sapeta 
11*753557f6STomasz Sapeta     AsyncFunction("getPermissionsAsync") { (promise: Promise) in
12*753557f6STomasz Sapeta       ABI47_0_0EXPermissionsMethodsDelegate.getPermissionWithPermissionsManager(
13*753557f6STomasz Sapeta         self.appContext?.permissions,
14*753557f6STomasz Sapeta         withRequester: TrackingTransparencyPermissionRequester.self,
15*753557f6STomasz Sapeta         resolve: promise.resolver,
16*753557f6STomasz Sapeta         reject: promise.legacyRejecter
17*753557f6STomasz Sapeta       )
18*753557f6STomasz Sapeta     }
19*753557f6STomasz Sapeta 
20*753557f6STomasz Sapeta     AsyncFunction("requestPermissionsAsync") { (promise: Promise) in
21*753557f6STomasz Sapeta       ABI47_0_0EXPermissionsMethodsDelegate.askForPermission(
22*753557f6STomasz Sapeta         withPermissionsManager: self.appContext?.permissions,
23*753557f6STomasz Sapeta         withRequester: TrackingTransparencyPermissionRequester.self,
24*753557f6STomasz Sapeta         resolve: promise.resolver,
25*753557f6STomasz Sapeta         reject: promise.legacyRejecter
26*753557f6STomasz Sapeta       )
27*753557f6STomasz Sapeta     }
28*753557f6STomasz Sapeta   }
29*753557f6STomasz Sapeta }
30