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

#import <KakaoGame/KGObject.h>

/**
 * @brief 아이템 상태를 위한 Enum.
 */
typedef NS_ENUM(NSInteger, KGItemState)
{
    KGItemStateUnconfirmed, /**< 수령되지 않은 아이템. */
    KGItemStateConfirmed,   /**< 수령한 아이템. */
    KGItemStateExpired      /**< 유효 기간이 만료됨. */
};

/**
 * @brief KGItem클래스는 아이템 관련 정보를 다룬다.
 */
@interface KGItem : KGObject

/**
 * @brief 아이템 식별자.(읽기만 가능)
 */
@property (readonly, nonatomic) NSString        *itemId;

/**
 * @brief 아이템 코드.(읽기만 가능)
 */
@property (readonly, nonatomic) NSString        *itemCode;

/**
 * @brief 아이템 개수.(읽기만 가능)
 */
@property (readonly, nonatomic) long long       quantity;

/**
 * @brief 아이템의 유효 시각. Epoch time(단위:ms).(읽기만 가능)
 */
@property (readonly, nonatomic) long long       validityTime;

/**
 * @brief 아이템의 만료 시각. Epoch time(단위:ms).(읽기만 가능)
 */
@property (readonly, nonatomic) long long       expiryTime;

/**
 * @brief 아이템 상태.(읽기만 가능)
 *
 * @see KGItemState
 */
@property (readonly, nonatomic) KGItemState     state;

@end
