using System;
using ObjCRuntime;
using Foundation;
using UIKit;
///
/// V2.0.1
/// ## ON乐橙和丰林同时合并一起打包生成DLL库
///
namespace Shared.IOS.ESVideoOnSDK
{
// @interface ESVideo : NSObject
[BaseType(typeof(NSObject))]
interface ESVideo
{
//// @property (nonatomic, strong) int * _Nonnull es;
//[Export("es", ArgumentSemantic.Strong)]
//unsafe int* Es { get; set; }
//// @property (copy, nonatomic) int snapImageCallback;
//[Export("snapImageCallback", ArgumentSemantic.Copy)]
//int SnapImageCallback { get; set; }
// +(instancetype _Nonnull)shareInstance;
[Static]
[Export("shareInstance")]
ESVideo ShareInstance();
// +(void)haltSharedInstance;
[Static]
[Export("haltSharedInstance")]
void HaltSharedInstance();
// -(void)initSDK;
[Export("initSDK")]
void InitSDK();
}
// @protocol ESCallDelegate
[Protocol, Model(AutoGeneratedName = true)]
[BaseType(typeof(NSObject))]
interface ESCallDelegate
{
// @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 ESCallDelegate : NSObject
//[BaseType(typeof(NSObject))]
//interface ESCallDelegate
//{
//}
// @interface ESOnIntercomViewController : UIViewController
[BaseType(typeof(UIViewController))]
interface ESOnIntercomViewController
{
// @property (nonatomic, strong) NSString * _Nonnull mESVideoID;
[Export("mESVideoID", ArgumentSemantic.Strong)]
string MESVideoID { get; set; }
// @property (assign, nonatomic) int mESRoomID;
[Export("mESRoomID")]
int MESRoomID { get; set; }
// @property (nonatomic, strong) NSString * _Nonnull roomName;
[Export("roomName", ArgumentSemantic.Strong)]
string RoomName { get; set; }
// @property (nonatomic, strong) NSString * _Nonnull deviceName;
[Export("deviceName", ArgumentSemantic.Strong)]
string DeviceName { get; set; }
[Wrap("WeakMESCallDelegate")]
[NullAllowed]
ESCallDelegate MESCallDelegate { get; set; }
// @property (nonatomic, weak) id _Nullable mESCallDelegate;
[NullAllowed, Export("mESCallDelegate", ArgumentSemantic.Weak)]
NSObject WeakMESCallDelegate { get; set; }
}
// @interface ESOnMonitorViewController : UIViewController
[BaseType(typeof(UIViewController))]
interface ESOnMonitorViewController
{
// @property (nonatomic, strong) NSString * _Nonnull mESVideoID;
[Export("mESVideoID", ArgumentSemantic.Strong)]
string MESVideoID { get; set; }
// @property (assign, nonatomic) int mESRoomID;
[Export("mESRoomID")]
int MESRoomID { get; set; }
// @property (nonatomic, strong) NSString * _Nonnull roomName;
[Export("roomName", ArgumentSemantic.Strong)]
string RoomName { get; set; }
// @property (nonatomic, strong) NSString * _Nonnull deviceName;
[Export("deviceName", ArgumentSemantic.Strong)]
string DeviceName { get; set; }
[Wrap("WeakMESCallDelegate")]
[NullAllowed]
ESCallDelegate MESCallDelegate { get; set; }
// @property (nonatomic, weak) id _Nullable mESCallDelegate;
[NullAllowed, Export("mESCallDelegate", ArgumentSemantic.Weak)]
NSObject WeakMESCallDelegate { get; set; }
}
////*******************乐橙可视对讲*********************
//// @interface LCApiKit : NSObject
//[BaseType(typeof(NSObject))]
//interface LCApiKit
//{
// // +(instancetype _Nonnull)sharedInstance;
// [Static]
// [Export("sharedInstance")]
// LCApiKit SharedInstance();
// // @property (nonatomic, strong) NSString * _Nonnull lcSdkToken;
// [Export("lcSdkToken", ArgumentSemantic.Strong)]
// string LcSdkToken { get; set; }
// // @property (nonatomic, strong) NSString * _Nonnull sdkHostApi;
// [Export("sdkHostApi", ArgumentSemantic.Strong)]
// string SdkHostApi { get; set; }
// // @property (assign, nonatomic) _Bool isChinaMainland;
// [Export("isChinaMainland")]
// bool IsChinaMainland { get; set; }
// // @property (nonatomic, strong) NSString * _Nonnull currentDeviceId;
// [Export("currentDeviceId", ArgumentSemantic.Strong)]
// string CurrentDeviceId { get; set; }
// // @property (nonatomic, strong) NSString * _Nonnull currentDeviceName;
// [Export("currentDeviceName", ArgumentSemantic.Strong)]
// string CurrentDeviceName { get; set; }
// // @property (nonatomic, strong) NSString * _Nonnull currentPsk;
// [Export("currentPsk", ArgumentSemantic.Strong)]
// string CurrentPsk { get; set; }
// // @property (nonatomic, strong) NSString * _Nonnull currentDevicePlayToken;
// [Export("currentDevicePlayToken", ArgumentSemantic.Strong)]
// string CurrentDevicePlayToken { get; set; }
// // -(NSString * _Nonnull)LCSDKHost;
// [Export("LCSDKHost")]
// //[Verify(MethodToProperty)]
// string LCSDKHost { get; }
// // -(NSInteger)LCSDKPort;
// [Export("LCSDKPort")]
// //[Verify(MethodToProperty)]
// nint LCSDKPort { get; }
// // -(void)initSDKOpenApi:(NSString * _Nonnull)lcToken;
// [Export("initSDKOpenApi:")]
// void InitSDKOpenApi(string lcToken);
//}
//// @interface LCOnIntercomViewController : UIViewController
//[BaseType(typeof(UIViewController))]
//interface LCOnIntercomViewController
//{
// [Wrap("WeakMESCallDelegate")]
// [NullAllowed]
// ESCallDelegate MESCallDelegate { get; set; }
// // @property (nonatomic, weak) id _Nullable mESCallDelegate;
// [NullAllowed, Export("mESCallDelegate", ArgumentSemantic.Weak)]
// NSObject WeakMESCallDelegate { get; set; }
//}
//// @interface LCOnMonitorViewController : UIViewController
//[BaseType(typeof(UIViewController))]
//interface LCOnMonitorViewController
//{
//}
}