diff --git a/src/callkit.cs b/src/callkit.cs
index 73ab60d1ef3..2b1dfbe5556 100644
--- a/src/callkit.cs
+++ b/src/callkit.cs
@@ -58,6 +58,7 @@ public enum CXErrorCodeIncomingCallError : long {
FilteredByBlockList = 4,
FilteredDuringRestrictedSharingMode = 5,
CallIsProtected = 6,
+ FilteredBySensitiveParticipants = 7,
}
/// Enumerates transaction request errors.
@@ -673,6 +674,10 @@ interface CXProviderDelegate {
[MacCatalyst (13, 1)]
[Export ("provider:didDeactivateAudioSession:")]
void DidDeactivateAudioSession (CXProvider provider, AVAudioSession audioSession);
+
+ [iOS (26, 0), NoMacCatalyst, NoMac]
+ [Export ("provider:performSetTranslatingCallAction:")]
+ void PerformSetTranslatingCallAction (CXProvider provider, CXSetTranslatingCallAction action);
}
/// Reports external (out-of-band) events, such as incoming calls, to the system, and receives internal (in-band) user action events from the system.
@@ -785,6 +790,10 @@ interface CXProviderConfiguration : NSCopying {
[DesignatedInitializer]
[Export ("init")]
NativeHandle Constructor ();
+
+ [iOS (26, 0), MacCatalyst (26, 0), Mac (26, 0)]
+ [Export ("supportsAudioTranslation")]
+ bool SupportsAudioTranslation { get; set; }
}
/// Contains the data that are needed to join a group call.
@@ -913,4 +922,32 @@ interface CXTransaction : NSCopying, NSSecureCoding {
[Export ("addAction:")]
void AddAction (CXAction action);
}
+
+ [NoTV, NoMacCatalyst, NoMac, iOS (26, 0)]
+ [BaseType (typeof (CXCallAction))]
+ [DisableDefaultCtor]
+ interface CXSetTranslatingCallAction : NSSecureCoding {
+ [Export ("isTranslating")]
+ bool IsTranslating { get; }
+
+ [Export ("localLanguage", ArgumentSemantic.Strong)]
+ NSLocale LocalLanguage { get; }
+
+ [Export ("remoteLanguage", ArgumentSemantic.Strong)]
+ NSLocale RemoteLanguage { get; }
+
+ [Export ("initWithCallUUID:isTranslating:localLanguage:remoteLanguage:")]
+ [DesignatedInitializer]
+ NativeHandle Constructor (NSUuid uuid, bool isTranslating, NSLocale localLanguage, NSLocale remoteLanguage);
+
+ [Export ("fulfillUsingTranslationEngine:")]
+ void Fulfill (CXTranslationEngine translationEngine);
+ }
+
+ [iOS (26, 0), NoMacCatalyst, NoMac]
+ [Native]
+ public enum CXTranslationEngine : long {
+ Default,
+ Custom,
+ }
}
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo
deleted file mode 100644
index 8a49dec7fc8..00000000000
--- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo
+++ /dev/null
@@ -1,3 +0,0 @@
-!missing-enum-value! CXErrorCodeIncomingCallError native value CXErrorCodeIncomingCallErrorFilteredBySensitiveParticipants = 7 not bound
-!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound
-!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo
deleted file mode 100644
index 2777e6a854b..00000000000
--- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo
+++ /dev/null
@@ -1,12 +0,0 @@
-!missing-enum! CXTranslationEngine not bound
-!missing-enum-value! CXErrorCodeIncomingCallError native value CXErrorCodeIncomingCallErrorFilteredBySensitiveParticipants = 7 not bound
-!missing-protocol-member! CXProviderDelegate::provider:performSetTranslatingCallAction: not found
-!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound
-!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound
-!missing-selector! CXSetTranslatingCallAction::initWithCoder: not bound
-!missing-selector! CXSetTranslatingCallAction::isTranslating not bound
-!missing-type! CXSetTranslatingCallAction not bound
-!missing-selector! CXSetTranslatingCallAction::fulfillUsingTranslationEngine: not bound
-!missing-selector! CXSetTranslatingCallAction::initWithCallUUID:isTranslating:localLanguage:remoteLanguage: not bound
-!missing-selector! CXSetTranslatingCallAction::localLanguage not bound
-!missing-selector! CXSetTranslatingCallAction::remoteLanguage not bound
diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo
deleted file mode 100644
index e8eeba98333..00000000000
--- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo
+++ /dev/null
@@ -1,2 +0,0 @@
-!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound
-!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound