// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: define.proto

package io.grasscutter.net.proto.define;

public interface AvatarInfoOrBuilder extends
    // @@protoc_insertion_point(interface_extends:AvatarInfo)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <code>repeated uint32 team_resonance_list = 20;</code>
   * @return A list containing the teamResonanceList.
   */
  java.util.List<java.lang.Integer> getTeamResonanceListList();
  /**
   * <code>repeated uint32 team_resonance_list = 20;</code>
   * @return The count of teamResonanceList.
   */
  int getTeamResonanceListCount();
  /**
   * <code>repeated uint32 team_resonance_list = 20;</code>
   * @param index The index of the element to return.
   * @return The teamResonanceList at the given index.
   */
  int getTeamResonanceList(int index);

  /**
   * <code>.IJJPJMEEPFI HKEPBGNEHCN = 28;</code>
   * @return Whether the hKEPBGNEHCN field is set.
   */
  boolean hasHKEPBGNEHCN();
  /**
   * <code>.IJJPJMEEPFI HKEPBGNEHCN = 28;</code>
   * @return The hKEPBGNEHCN.
   */
  io.grasscutter.net.proto.define.IJJPJMEEPFI getHKEPBGNEHCN();
  /**
   * <code>.IJJPJMEEPFI HKEPBGNEHCN = 28;</code>
   */
  io.grasscutter.net.proto.define.IJJPJMEEPFIOrBuilder getHKEPBGNEHCNOrBuilder();

  /**
   * <code>map&lt;uint32, .PropValue&gt; prop_map = 3;</code>
   */
  int getPropMapCount();
  /**
   * <code>map&lt;uint32, .PropValue&gt; prop_map = 3;</code>
   */
  boolean containsPropMap(
      int key);
  /**
   * Use {@link #getPropMapMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.Integer, io.grasscutter.net.proto.define.PropValue>
  getPropMap();
  /**
   * <code>map&lt;uint32, .PropValue&gt; prop_map = 3;</code>
   */
  java.util.Map<java.lang.Integer, io.grasscutter.net.proto.define.PropValue>
  getPropMapMap();
  /**
   * <code>map&lt;uint32, .PropValue&gt; prop_map = 3;</code>
   */

  io.grasscutter.net.proto.define.PropValue getPropMapOrDefault(
      int key,
      io.grasscutter.net.proto.define.PropValue defaultValue);
  /**
   * <code>map&lt;uint32, .PropValue&gt; prop_map = 3;</code>
   */

  io.grasscutter.net.proto.define.PropValue getPropMapOrThrow(
      int key);

  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 17;</code>
   */
  int getProudSkillExtraLevelMapCount();
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 17;</code>
   */
  boolean containsProudSkillExtraLevelMap(
      int key);
  /**
   * Use {@link #getProudSkillExtraLevelMapMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.Integer, java.lang.Integer>
  getProudSkillExtraLevelMap();
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 17;</code>
   */
  java.util.Map<java.lang.Integer, java.lang.Integer>
  getProudSkillExtraLevelMapMap();
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 17;</code>
   */

  int getProudSkillExtraLevelMapOrDefault(
      int key,
      int defaultValue);
  /**
   * <code>map&lt;uint32, uint32&gt; proud_skill_extra_level_map = 17;</code>
   */

  int getProudSkillExtraLevelMapOrThrow(
      int key);

  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 15;</code>
   */
  int getSkillLevelMapCount();
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 15;</code>
   */
  boolean containsSkillLevelMap(
      int key);
  /**
   * Use {@link #getSkillLevelMapMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.Integer, java.lang.Integer>
  getSkillLevelMap();
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 15;</code>
   */
  java.util.Map<java.lang.Integer, java.lang.Integer>
  getSkillLevelMapMap();
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 15;</code>
   */

  int getSkillLevelMapOrDefault(
      int key,
      int defaultValue);
  /**
   * <code>map&lt;uint32, uint32&gt; skill_level_map = 15;</code>
   */

  int getSkillLevelMapOrThrow(
      int key);

  /**
   * <code>.TrialAvatarInfo trial_avatar_info = 9;</code>
   * @return Whether the trialAvatarInfo field is set.
   */
  boolean hasTrialAvatarInfo();
  /**
   * <code>.TrialAvatarInfo trial_avatar_info = 9;</code>
   * @return The trialAvatarInfo.
   */
  io.grasscutter.net.proto.define.TrialAvatarInfo getTrialAvatarInfo();
  /**
   * <code>.TrialAvatarInfo trial_avatar_info = 9;</code>
   */
  io.grasscutter.net.proto.define.TrialAvatarInfoOrBuilder getTrialAvatarInfoOrBuilder();

  /**
   * <code>map&lt;uint32, float&gt; fight_prop_map = 7;</code>
   */
  int getFightPropMapCount();
  /**
   * <code>map&lt;uint32, float&gt; fight_prop_map = 7;</code>
   */
  boolean containsFightPropMap(
      int key);
  /**
   * Use {@link #getFightPropMapMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.Integer, java.lang.Float>
  getFightPropMap();
  /**
   * <code>map&lt;uint32, float&gt; fight_prop_map = 7;</code>
   */
  java.util.Map<java.lang.Integer, java.lang.Float>
  getFightPropMapMap();
  /**
   * <code>map&lt;uint32, float&gt; fight_prop_map = 7;</code>
   */

  float getFightPropMapOrDefault(
      int key,
      float defaultValue);
  /**
   * <code>map&lt;uint32, float&gt; fight_prop_map = 7;</code>
   */

  float getFightPropMapOrThrow(
      int key);

  /**
   * <code>.AvatarExcelInfo excel_info = 26;</code>
   * @return Whether the excelInfo field is set.
   */
  boolean hasExcelInfo();
  /**
   * <code>.AvatarExcelInfo excel_info = 26;</code>
   * @return The excelInfo.
   */
  io.grasscutter.net.proto.define.AvatarExcelInfo getExcelInfo();
  /**
   * <code>.AvatarExcelInfo excel_info = 26;</code>
   */
  io.grasscutter.net.proto.define.AvatarExcelInfoOrBuilder getExcelInfoOrBuilder();

  /**
   * <code>repeated uint32 talent_id_list = 6;</code>
   * @return A list containing the talentIdList.
   */
  java.util.List<java.lang.Integer> getTalentIdListList();
  /**
   * <code>repeated uint32 talent_id_list = 6;</code>
   * @return The count of talentIdList.
   */
  int getTalentIdListCount();
  /**
   * <code>repeated uint32 talent_id_list = 6;</code>
   * @param index The index of the element to return.
   * @return The talentIdList at the given index.
   */
  int getTalentIdList(int index);

  /**
   * <code>repeated uint64 equip_guid_list = 5;</code>
   * @return A list containing the equipGuidList.
   */
  java.util.List<java.lang.Long> getEquipGuidListList();
  /**
   * <code>repeated uint64 equip_guid_list = 5;</code>
   * @return The count of equipGuidList.
   */
  int getEquipGuidListCount();
  /**
   * <code>repeated uint64 equip_guid_list = 5;</code>
   * @param index The index of the element to return.
   * @return The equipGuidList at the given index.
   */
  long getEquipGuidList(int index);

  /**
   * <code>repeated .AvatarEquipAffixInfo equip_affix_list = 22;</code>
   */
  java.util.List<io.grasscutter.net.proto.define.AvatarEquipAffixInfo> 
      getEquipAffixListList();
  /**
   * <code>repeated .AvatarEquipAffixInfo equip_affix_list = 22;</code>
   */
  io.grasscutter.net.proto.define.AvatarEquipAffixInfo getEquipAffixList(int index);
  /**
   * <code>repeated .AvatarEquipAffixInfo equip_affix_list = 22;</code>
   */
  int getEquipAffixListCount();
  /**
   * <code>repeated .AvatarEquipAffixInfo equip_affix_list = 22;</code>
   */
  java.util.List<? extends io.grasscutter.net.proto.define.AvatarEquipAffixInfoOrBuilder> 
      getEquipAffixListOrBuilderList();
  /**
   * <code>repeated .AvatarEquipAffixInfo equip_affix_list = 22;</code>
   */
  io.grasscutter.net.proto.define.AvatarEquipAffixInfoOrBuilder getEquipAffixListOrBuilder(
      int index);

  /**
   * <code>map&lt;uint32, .AvatarSkillInfo&gt; skill_map = 10;</code>
   */
  int getSkillMapCount();
  /**
   * <code>map&lt;uint32, .AvatarSkillInfo&gt; skill_map = 10;</code>
   */
  boolean containsSkillMap(
      int key);
  /**
   * Use {@link #getSkillMapMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.Integer, io.grasscutter.net.proto.define.AvatarSkillInfo>
  getSkillMap();
  /**
   * <code>map&lt;uint32, .AvatarSkillInfo&gt; skill_map = 10;</code>
   */
  java.util.Map<java.lang.Integer, io.grasscutter.net.proto.define.AvatarSkillInfo>
  getSkillMapMap();
  /**
   * <code>map&lt;uint32, .AvatarSkillInfo&gt; skill_map = 10;</code>
   */

  io.grasscutter.net.proto.define.AvatarSkillInfo getSkillMapOrDefault(
      int key,
      io.grasscutter.net.proto.define.AvatarSkillInfo defaultValue);
  /**
   * <code>map&lt;uint32, .AvatarSkillInfo&gt; skill_map = 10;</code>
   */

  io.grasscutter.net.proto.define.AvatarSkillInfo getSkillMapOrThrow(
      int key);

  /**
   * <code>.AvatarFetterInfo fetter_info = 12;</code>
   * @return Whether the fetterInfo field is set.
   */
  boolean hasFetterInfo();
  /**
   * <code>.AvatarFetterInfo fetter_info = 12;</code>
   * @return The fetterInfo.
   */
  io.grasscutter.net.proto.define.AvatarFetterInfo getFetterInfo();
  /**
   * <code>.AvatarFetterInfo fetter_info = 12;</code>
   */
  io.grasscutter.net.proto.define.AvatarFetterInfoOrBuilder getFetterInfoOrBuilder();

  /**
   * <code>repeated uint32 inherent_proud_skill_list = 14;</code>
   * @return A list containing the inherentProudSkillList.
   */
  java.util.List<java.lang.Integer> getInherentProudSkillListList();
  /**
   * <code>repeated uint32 inherent_proud_skill_list = 14;</code>
   * @return The count of inherentProudSkillList.
   */
  int getInherentProudSkillListCount();
  /**
   * <code>repeated uint32 inherent_proud_skill_list = 14;</code>
   * @param index The index of the element to return.
   * @return The inherentProudSkillList at the given index.
   */
  int getInherentProudSkillList(int index);

  /**
   * <code>repeated uint32 pending_promote_reward_list = 24;</code>
   * @return A list containing the pendingPromoteRewardList.
   */
  java.util.List<java.lang.Integer> getPendingPromoteRewardListList();
  /**
   * <code>repeated uint32 pending_promote_reward_list = 24;</code>
   * @return The count of pendingPromoteRewardList.
   */
  int getPendingPromoteRewardListCount();
  /**
   * <code>repeated uint32 pending_promote_reward_list = 24;</code>
   * @param index The index of the element to return.
   * @return The pendingPromoteRewardList at the given index.
   */
  int getPendingPromoteRewardList(int index);

  /**
   * <code>bool is_focus = 18;</code>
   * @return The isFocus.
   */
  boolean getIsFocus();

  /**
   * <code>uint32 PIHJHGKFCLH = 29;</code>
   * @return The pIHJHGKFCLH.
   */
  int getPIHJHGKFCLH();

  /**
   * <code>uint64 guid = 2;</code>
   * @return The guid.
   */
  long getGuid();

  /**
   * <code>.AvatarExpeditionState expedition_state = 16;</code>
   * @return The enum numeric value on the wire for expeditionState.
   */
  int getExpeditionStateValue();
  /**
   * <code>.AvatarExpeditionState expedition_state = 16;</code>
   * @return The expeditionState.
   */
  io.grasscutter.net.proto.define.AvatarExpeditionState getExpeditionState();

  /**
   * <code>uint32 born_time = 23;</code>
   * @return The bornTime.
   */
  int getBornTime();

  /**
   * <code>uint32 core_proud_skill_level = 13;</code>
   * @return The coreProudSkillLevel.
   */
  int getCoreProudSkillLevel();

  /**
   * <code>uint32 costume_id = 25;</code>
   * @return The costumeId.
   */
  int getCostumeId();

  /**
   * <code>uint32 anim_hash = 27;</code>
   * @return The animHash.
   */
  int getAnimHash();

  /**
   * <code>uint32 wearing_flycloak_id = 21;</code>
   * @return The wearingFlycloakId.
   */
  int getWearingFlycloakId();

  /**
   * <code>uint32 life_state = 4;</code>
   * @return The lifeState.
   */
  int getLifeState();

  /**
   * <code>uint32 trace_effect_id = 31;</code>
   * @return The traceEffectId.
   */
  int getTraceEffectId();

  /**
   * <code>uint32 MFMIPHLGDFL = 30;</code>
   * @return The mFMIPHLGDFL.
   */
  int getMFMIPHLGDFL();

  /**
   * <code>uint32 skill_depot_id = 11;</code>
   * @return The skillDepotId.
   */
  int getSkillDepotId();

  /**
   * <code>uint32 avatar_type = 19;</code>
   * @return The avatarType.
   */
  int getAvatarType();

  /**
   * <code>uint32 avatar_id = 1;</code>
   * @return The avatarId.
   */
  int getAvatarId();
}
