//
//  HPAPI.h
//  HotPocket
//
//  Created by Tomek Wójcik on 23/09/2025.
//

#import <Foundation/Foundation.h>

#import "HPRPCClient.h"

NS_ASSUME_NONNULL_BEGIN

typedef void (^HPAPICheckAuthCompletionHandler)(BOOL authValid, NSError * _Nullable error, NSString * _Nullable callId);

@interface HPAPI : NSObject

@property (nullable) HPRPCClient *rpcClient;
@property NSMutableSet *callIds;

-(id)initWithRPCClientDelegate:(id<HPRPCClientDelegate>)delegate;

+(NSDictionary *)getAccessTokenMeta;

-(NSString *)checkAuth;
-(void)checkAuth:(HPAPICheckAuthCompletionHandler)completionHandler;
-(NSString *)save:(NSURL *)url;
-(BOOL)save:(NSURL *)url completionHandler:(HPRPCClientCompletionHandler)completionHandler;

@end

NS_ASSUME_NONNULL_END
