//
//  DAClientResponse.h
//
//  Copyright © 2024 Jumio Corporation. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "Common.h"

typedef struct daclient_event_t daclient_event_t;

@class JDAEventAttribute;

NS_ASSUME_NONNULL_BEGIN

JDACLIENT_EXPORT @interface JDAResponse : NSObject

@property (readonly, nonatomic) JDAResponseName name;
@property (readonly, nonatomic) NSArray<JDAEventAttribute*>* attributes;
@property (readonly, atomic) int64_t timestamp;

- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithName:(JDAResponseName)name attributes:(NSArray<JDAEventAttribute*>*)attributes timestamp:(int64_t)timestamp NS_DESIGNATED_INITIALIZER;
- (instancetype)initWithNativeType:(const daclient_event_t*)eventRef;

- (JDAEventAttribute* _Nullable)objectForKeyedSubscript:(JDAEventAttributeName)attributeName;

@end

NS_ASSUME_NONNULL_END
