chenqiyang
2021-08-09 c405db685fc52e740ec95515d4531bf82f604a05
Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/ApiDefinition.cs
@@ -1,11 +1,77 @@
using System;
using Foundation;
using ObjCRuntime;
using Foundation;
using UIKit;
namespace Shared.IOS.HDLLinphoneSDK
{
    //[Static]
    //[Verify(ConstantsInterfaceAssociation)]
    //partial interface Constants
    //{
    //    // extern NSString *const _Nonnull LCCallDelegateOpenDoorSuccess;
    //    [Field("LCCallDelegateOpenDoorSuccess", "__Internal")]
    //    NSString LCCallDelegateOpenDoorSuccess { get; }
    //}
  
    // @protocol HDLLinphoneCallDelegate <NSObject>
    [Protocol, Model(AutoGeneratedName = true)]
   [BaseType(typeof(NSObject))]
   interface HDLLinphoneCallDelegate
   {
      // @required -(void)onAnswerAction;
      [Abstract]
      [Export("onAnswerAction")]
      void OnAnswerAction();
      // @required -(void)onRejectCallAction;
      [Abstract]
      [Export("onRejectCallAction")]
      void OnRejectCallAction();
      // @required -(void)onUnlockAction;
      [Abstract]
      [Export("onUnlockAction")]
      void OnUnlockAction();
      // @required -(void)onHangUpAction:(int)callDuration;
      [Abstract]
      [Export("onHangUpAction:")]
      void OnHangUpAction(int callDuration);
      // @required -(void)onScreenshotSuccessfulAction:(UIImage * _Nonnull)image;
      [Abstract]
      [Export("onScreenshotSuccessfulAction:")]
      void OnScreenshotSuccessfulAction(UIImage image);
}
   //// @interface HDLLinphoneCallDelegate : NSObject
   //[BaseType(typeof(NSObject))]
   //interface HDLLinphoneCallDelegate
   //{
   //}
   // @interface HDLLinPhoneSDK : NSObject
   [BaseType(typeof(NSObject))]
   interface HDLLinPhoneSDK
   {
      [Wrap("WeakHdlLinphoneCallDelegate")]
      HDLLinphoneCallDelegate HdlLinphoneCallDelegate { get; set; }
      // @property (nonatomic, weak) id<HDLLinphoneCallDelegate> hdlLinphoneCallDelegate;
      [NullAllowed, Export("hdlLinphoneCallDelegate", ArgumentSemantic.Weak)]
      NSObject WeakHdlLinphoneCallDelegate { get; set; }
      // +(instancetype)instance;
      [Static]
      [Export("instance")]
      HDLLinPhoneSDK Instance();
      // -(void)login:(NSString *)username password:(NSString *)pwd domain:(NSString *)domain;
      [Export("login:password:domain:")]
      void Login(string username, string pwd, string domain);
      // -(void)initalLinPhone;
      [Export("initalLinPhone")]
      void InitalLinPhone();
   }
}