Represents relevant User information for clients using this AuctionHouse.
User information
@type ingame_name() :: String.t()
@type patreon?() :: boolean()
@type slug() :: String.t()
@type t() :: %Shared.Data.User{ ingame_name: ingame_name(), patreon?: patreon?(), slug: slug() }
@type user() :: %{ required(ingame_name :: String.t()) => String.t(), required(slug :: String.t()) => String.t(), required(patreon? :: String.t()) => boolean() } | [ingame_name: String.t(), slug: String.t(), patreon?: boolean()]
@spec new(user()) :: t()