All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.princesslana.eriscasper.data.resource.PresenceUpdate Maven / Gradle / Ivy

The newest version!
package com.github.princesslana.eriscasper.data.resource;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.github.princesslana.eriscasper.data.Snowflake;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import org.immutables.value.Value;

@Value.Immutable
@JsonDeserialize(as=ImmutablePresenceUpdate.class)
public interface PresenceUpdate {
  /**
    * the user presence is being updated for
    */
  @JsonProperty("user")
  UserId getUser();

  /**
    * roles this user is in
    */
  @JsonProperty("roles")
  java.util.Optional> getRoles();

  /**
    * null, or the user's current activity
    */
  @JsonProperty("game")
  com.github.princesslana.eriscasper.data.util.Nullable getGame();

  /**
    * id of the guild
    */
  @JsonProperty("guild_id")
  java.util.Optional getGuildId();

  /**
    * either "idle", "dnd", "online", or "offline"
    */
  @JsonProperty("status")
  java.util.Optional getStatus();

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy