Files
seadisk/include/seafile/account_info.hpp
T
2026-06-20 16:11:17 +08:00

75 lines
1.6 KiB
C++

//
// Created by Shell on 2026-06-18.
//
#ifndef SEADISK_ACCOUNT_INFO_HPP
#define SEADISK_ACCOUNT_INFO_HPP
#include <string>
#include <nlohmann/json.hpp>
namespace seafile
{
/**
* @brief Seafile user profile information.
*/
struct AccountInfo final
{
/// Space usage percentage.
std::string space_usage;
/// User avatar URL.
std::string avatar_url;
/// Login email address.
std::string email;
/// Display name.
std::string name;
/// Total available storage space in bytes.
std::uint64_t total{};
/// Used storage space in bytes.
std::uint64_t usage{};
/// Login identifier.
std::string login_id;
/// User department.
std::string department;
/// Contact email address.
std::string contact_email;
/// Institution or organization name.
std::string institution;
/// Indicates whether the user is a staff member.
bool is_staff{};
/// File update notification interval.
int file_updates_email_interval{};
/// Collaboration notification interval.
int collaborate_email_interval{};
NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(
AccountInfo,
space_usage,
avatar_url,
email,
name,
total,
usage,
login_id,
department,
contact_email,
institution,
is_staff,
file_updates_email_interval,
collaborate_email_interval)
};
}
#endif //SEADISK_ACCOUNT_INFO_HPP