










#import <JYouLoginKit/REDeLoginKit.h>

@interface GaussianCubeInjectionCapSpeak : NSObject<REDeInitCallback,REDeLoginCallback,REDeBuyCallback>

@property (nonatomic, copy) void(^gramSoccerFinishThumbConflictAlternate)(void);
@property (nonatomic, copy) void(^advisedConfigureDisableDismissDivide)(NSString *uid, NSString*token);

@end

@implementation GaussianCubeInjectionCapSpeak

+ (instancetype)shared {
    static id shared = nil;
    static dispatch_once_t footToken;
    dispatch_once(&footToken, ^{
        shared = [[super allocWithZone:NULL] init];
    });
    return shared;
}

- (BOOL)badBloodFrameLinkAppend:(UIApplication *)application
                quickIll:(NSURL *)url
                itsToday:(nullable NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options {
    [REDeLoginKit application:application openURL:url options:options];
    return YES;
}

- (void)mainNumericHourlyHisSeventeenGetCode:(NSString *)sonAnnotatedCode {
    [REDeLoginKit initSDKWithProductCode:sonAnnotatedCode callback:self];
    //注册登录监听者
    [REDeLoginKit setFunctionLoginCallback:self];
    //注册支付监听者
    [REDeLoginKit setFunctionBuyCallback:self];
}

- (void)unwrapLoop:(void(^)(NSString *uid, NSString*token))callback {
    self.advisedConfigureDisableDismissDivide = callback;
    [REDeLoginKit loginWithMenuShow:YES];
}

- (void)herDaySmartSleepFeed:(NSString *)sonAnnotatedCode
                offBars:(NSString *)offBars
                subject:(NSString *)subject
                  surge:(NSString *)totalPrice
              midSender:(NSString *)midSender
          stoppedLength:(NSString *)stoppedLength {
    REDeOrderInfo *param = [REDeOrderInfo infoWithProductId:sonAnnotatedCode offBars:offBars subject:subject surge:totalPrice midSender:midSender];
    param.stoppedLength = stoppedLength;
    [REDeLoginKit IAPWithParameter:param];
}

- (void)tapArterySolveProposalSpacingInfo:(NSString * _Nonnull)outdoorAction
            capWristDryName:(NSString * _Nonnull)capWristDryName
                napEventBit:(NSString * _Nonnull)napEventBit
              socketMixName:(NSString * _Nonnull)socketMixName
             orderTallLevel:(NSString * _Nonnull)orderTallLevel {
    REDeRoleInfo *role = [REDeRoleInfo new];
    role.server_id = outdoorAction;
    role.server_name = capWristDryName;
    role.game_role_id = napEventBit;
    role.game_role_name = socketMixName;
    role.game_role_level = orderTallLevel;
    [REDeLoginKit setGameRoleInfo:role];
}

- (void)halfGetAuto {
    [REDeLoginKit logout];
}

- (void)homeFitItsSeparatorSign:(void(^)(void))homeFitItsSeparatorSign {
    self.gramSoccerFinishThumbConflictAlternate = homeFitItsSeparatorSign;
}


- (void)whoGetOnceSub {
    
}

- (void)exporterHitCadenceRowsCheckingDateMessage:(NSString *)message {
    
}


- (void)petitePlug {
    if (self.gramSoccerFinishThumbConflictAlternate) {
        self.gramSoccerFinishThumbConflictAlternate();
    }
}

- (void)forRelay:(NSString *)uid redoToken:(NSString *)token {
    self.advisedConfigureDisableDismissDivide(uid, token);
}

- (void)echoMen:(NSString *)uid redoToken:(NSString *)token type:(USERCENTER_TYPE)type {}

- (void)bankLight:(NSString *)uid redoToken:(NSString *)token type:(USERCENTER_TYPE)type {}


- (void)firstLostMegabitsSpanLocalAuxiliary:(NSString *)productId offBars:(NSString *)offBars midPhotoTwo:(NSString *)midPhotoTwo {
    
}

- (void)fitMusicBase {
    
}

@end
