//
//  KGObject.h
//  KakaoGame SDK
//
//  Created by Ronaldo Kim on 2016. 9. 19..
//  Copyright (c) 2016. Kakao Corp. All rights reserved.
//

#import <Foundation/Foundation.h>

/**
 * @brief KGObject클래스는 내부 데이터를 NSDictionary 객체로 다룬다.<br>
 * SDK가 제공하는 데이터를 다루는 클래스는 KGObject클래스를 상속받는다.
 */
@interface KGObject : NSObject<NSCoding, NSCopying>

@property (nonatomic, readonly) NSDictionary    *dictionary;
@property (nonatomic, readonly) NSArray         *allKeys;
@property (nonatomic, readonly) NSArray         *allValues;

/**
 * @brief 키에 해당하는 설정 값을 반환한다.
 *
 * @param key 커스텀 속성 키.
 *
 * @return 키에 설정된 값.
 */
- (id)objectForKey:(NSString *)key;

@end
