#ifndef ASH_PUBLIC_CPP_SESSION_USER_INFO_H_
#define ASH_PUBLIC_CPP_SESSION_USER_INFO_H_
#include <stdint.h>
#include <string>
#include <vector>
#include "ash/public/cpp/ash_public_export.h"
#include "base/token.h"
#include "components/account_id/account_id.h"
#include "components/user_manager/user_type.h"
#include "ui/gfx/image/image_skia.h"
namespace ash {
struct ASH_PUBLIC_EXPORT UserAvatar {
UserAvatar();
UserAvatar(const UserAvatar& other);
~UserAvatar();
gfx::ImageSkia image;
std::vector<uint8_t> bytes;
};
ASH_PUBLIC_EXPORT bool operator==(const UserAvatar& a, const UserAvatar& b);
struct ASH_PUBLIC_EXPORT UserInfo {
UserInfo();
UserInfo(const UserInfo& other);
~UserInfo();
user_manager::UserType type = user_manager::UserType::kRegular;
AccountId account_id;
std::string display_name;
std::string display_email;
std::string given_name;
UserAvatar avatar;
bool is_new_profile = false;
bool is_ephemeral = false;
bool has_gaia_account = false;
bool should_display_managed_ui = false;
bool is_managed = false;
};
ASH_PUBLIC_EXPORT bool operator==(const UserInfo& a, const UserInfo& b);
}
#endif