diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings
index 76dad0ad8d3ec094cdd6d1861b2cb8840f6f7b7a..7deb2af8763d521a3722d63dcf5dac757fffdd64 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings
index 76dad0ad8d3ec094cdd6d1861b2cb8840f6f7b7a..7deb2af8763d521a3722d63dcf5dac757fffdd64 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/A/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings
index 76dad0ad8d3ec094cdd6d1861b2cb8840f6f7b7a..7deb2af8763d521a3722d63dcf5dac757fffdd64 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings
index 70db287d4524a2ea68a351bad57190449a394127..52b9c735dfdf8199066c1b37a8c4c7215edd6358 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings
index 70db287d4524a2ea68a351bad57190449a394127..52b9c735dfdf8199066c1b37a8c4c7215edd6358 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/A/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings
index 70db287d4524a2ea68a351bad57190449a394127..52b9c735dfdf8199066c1b37a8c4c7215edd6358 100644
Binary files a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings and b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Bindings differ
diff --git a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
index 8fe951928206d04322ad622c843ac12638967045..a41d44bfe177944db130580f0f6312789b5aedf9 100644
--- a/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
+++ b/Frameworks/Bindings.xcframework/ios-arm64_x86_64-simulator/Bindings.framework/Versions/Current/Headers/Bindings.objc.h
@@ -67,6 +67,8 @@
 @class BindingsSingleUseCallback;
 @protocol BindingsSingleUseResponse;
 @class BindingsSingleUseResponse;
+@protocol BindingsStopper;
+@class BindingsStopper;
 @protocol BindingsUdNetworkStatus;
 @class BindingsUdNetworkStatus;
 @protocol BindingsUpdateBackupFunc;
@@ -168,6 +170,10 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+@protocol BindingsStopper <NSObject>
+- (void)stop;
+@end
+
 @protocol BindingsUdNetworkStatus <NSObject>
 /**
  * UdNetworkStatus returns:
@@ -267,7 +273,7 @@ Example JSON:
 /**
  * Channel is a bindings-level struct encapsulating the broadcast.Channel client object.
  */
-@interface BindingsChannel : NSObject <goSeqRefInterface> {
+@interface BindingsChannel : NSObject <goSeqRefInterface, BindingsStopper> {
 }
 @property(strong, readonly) _Nonnull id _ref;
 
@@ -1416,8 +1422,19 @@ Params
  */
 FOUNDATION_EXPORT BindingsBackup* _Nullable BindingsInitializeBackup(long e2eID, long udID, NSString* _Nullable password, id<BindingsUpdateBackupFunc> _Nullable cb, NSError* _Nullable* _Nullable error);
 
-// skipped function Listen with unsupported parameter or return types
+/**
+ * Listen starts a single-use listener on a given tag using the passed in e2e object
+and SingleUseCallback func.
+
+Parameters:
+ - e2eID - ID of the e2e object in the tracker
+ - tag - identifies the single-use message
+ - cb - the callback that will be called when a response is received
 
+Returns:
+ - Stopper - an interface containing a function used to stop the listener
+ */
+FOUNDATION_EXPORT id<BindingsStopper> _Nullable BindingsListen(long e2eID, NSString* _Nullable tag, id<BindingsSingleUseCallback> _Nullable cb, NSError* _Nullable* _Nullable error);
 
 /**
  * LoadCmix will load an existing user storage from the storageDir using the password.
@@ -1638,6 +1655,8 @@ FOUNDATION_EXPORT NSData* _Nullable BindingsTransmitSingleUse(long e2eID, NSData
 
 @class BindingsSingleUseResponse;
 
+@class BindingsStopper;
+
 @class BindingsUdNetworkStatus;
 
 @class BindingsUpdateBackupFunc;
@@ -1869,6 +1888,17 @@ Parameters:
 - (void)callback:(NSData* _Nullable)responseReport err:(NSError* _Nullable)err;
 @end
 
+/**
+ * Stopper is a public interface returned by Listen, allowing users to stop the registered listener.
+ */
+@interface BindingsStopper : NSObject <goSeqRefInterface, BindingsStopper> {
+}
+@property(strong, readonly) _Nonnull id _ref;
+
+- (nonnull instancetype)initWithRef:(_Nonnull id)ref;
+- (void)stop;
+@end
+
 /**
  * UdNetworkStatus contains the UdNetworkStatus, which is a bindings-level
 interface for ud.udNetworkStatus.