// =============================================================================
// TudadaSDK Storage Types
//
// 스토리지 관련 API 타입 정의 (LocalStorage, TudadaStore)
// =============================================================================

using System;

namespace Tudada
{
    /// <summary>
    /// 스토리지 정보
    /// </summary>
    [Serializable]
    public class StorageInfo
    {
        /// <summary>
        /// 현재 저장된 모든 키 목록
        /// </summary>
        public string[] keys;

        /// <summary>
        /// 현재 사용 중인 용량 (KB)
        /// </summary>
        public float currentSize;

        /// <summary>
        /// 최대 사용 가능 용량 (KB)
        /// </summary>
        public float limitSize;
    }

    /// <summary>
    /// getStorage 성공 결과
    /// </summary>
    [Serializable]
    public class GetStorageResult
    {
        /// <summary>
        /// 저장된 데이터 (JSON 문자열)
        /// </summary>
        public string data;

        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }

    /// <summary>
    /// setStorage 성공 결과
    /// </summary>
    [Serializable]
    public class SetStorageResult
    {
        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }

    /// <summary>
    /// removeStorage 성공 결과
    /// </summary>
    [Serializable]
    public class RemoveStorageResult
    {
        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }

    /// <summary>
    /// clearStorage 성공 결과
    /// </summary>
    [Serializable]
    public class ClearStorageResult
    {
        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }

    /// <summary>
    /// TudadaStore Get 성공 결과
    /// </summary>
    [Serializable]
    public class TudadaStoreGetResult
    {
        /// <summary>
        /// 저장된 값
        /// </summary>
        public string value;

        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }

    /// <summary>
    /// TudadaStore Save 성공 결과
    /// </summary>
    [Serializable]
    public class TudadaStoreSaveResult
    {
        /// <summary>
        /// 에러 메시지
        /// </summary>
        public string errMsg;
    }
}
