//
//  XXGPlay.h
//  XXGOSPlayKit
//
//  Created by apple on 2025/2/27.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
@protocol XXGPlayDelegate;

NS_ASSUME_NONNULL_BEGIN

@interface XXGPlayCN : NSObject

+ (void)xxpk_setPlayDelegate:(id<XXGPlayDelegate>)delegate;

// 登录
+ (void)xxpk_comein;

// 退出
+ (void)xxpk_logout;

// 订单
+ (void)xxpk_createOrder:(NSString *)xxpk_cpOrderId
        xxpk_productCode:(NSString *)xxpk_productCode
             xxpk_amount:(NSString *)xxpk_amount
        xxpk_productName:(NSString *)xxpk_productName
           xxpk_serverId:(NSString *)xxpk_serverId
          xxpk_extraInfo:(NSString *)xxpk_extraInfo
             xxpk_roleId:(NSString *)xxpk_roleId
           xxpk_roleName:(NSString *)xxpk_roleName
          xxpk_roleLevel:(NSString *)xxpk_roleLevel;

// 角色
+ (void)xxpk_uploadRoleInfo:(NSString * _Nonnull)xxpk_serverId
            xxpk_serverName:(NSString * _Nonnull)xxpk_serverName
                xxpk_roleId:(NSString * _Nonnull)xxpk_roleId
              xxpk_roleName:(NSString * _Nonnull)xxpk_roleName
             xxpk_roleLevel:(NSString * _Nonnull)xxpk_roleLevel
                xxpk_extend:(NSDictionary * _Nullable)xxpk_extend;

// finish
+ (void)xxpk_didFinishLaunchingWithOptions:(NSDictionary *_Nullable)launchOptions xconnectOptions:(UISceneConnectionOptions *_Nullable)connectionOptions;

// openurl
+ (BOOL)xxpk_applicationOpenURL:(NSURL *_Nullable)url xoptions:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *_Nullable)options xURLContexts:(NSSet<UIOpenURLContext *> *_Nullable)URLContexts;

// 通用链接
+ (BOOL)xxpk_applicationContinueUserActivity:(NSUserActivity *)userActivity;

// MARK: - 扩展可选
/// 打开个人中心
+ (void)xxpk_openUserCenterSidebar:(NSString *)type;

/// 内购修复
+ (void)xxpk_iapRepair;

/// csj广告
+ (void)xxpk_csjShowRewardedAd:(NSString *)rewardedVideoAdId extra:(NSString *)extra complate:(void(^)(NSString *code))complate;
+ (void)xxpk_csjShowFullscreenAd:(NSString *)fullscreenAdId extra:(NSString *)extra complate:(void(^)(NSString *code))complate;
// 分享
+ (void)xxpk_shareWithType:(NSInteger)platformType
                     title:(NSString *_Nullable)title
                      text:(NSString *_Nullable)text
                    images:(id _Nullable)images
                       url:(NSURL *_Nullable)url
              groupLabelId:(NSString *_Nullable)groupLabelId
                hashtagIds:(NSString *_Nullable)hashtagIds
              footerImages:(NSArray *_Nullable)footerImages
                   failUrl:(NSString *_Nullable)failUrl
                  callback:(void(^)(BOOL result,NSString *errorMsg))callback;

@end

NS_ASSUME_NONNULL_END
