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

package io.grasscutter.net.proto.define;

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

  /**
   * <code>.PlatformInfo platform = 23;</code>
   * @return Whether the platform field is set.
   */
  boolean hasPlatform();
  /**
   * <code>.PlatformInfo platform = 23;</code>
   * @return The platform.
   */
  io.grasscutter.net.proto.define.PlatformInfo getPlatform();
  /**
   * <code>.PlatformInfo platform = 23;</code>
   */
  io.grasscutter.net.proto.define.PlatformInfoOrBuilder getPlatformOrBuilder();

  /**
   * <code>repeated uint32 affix_list = 29;</code>
   * @return A list containing the affixList.
   */
  java.util.List<java.lang.Integer> getAffixListList();
  /**
   * <code>repeated uint32 affix_list = 29;</code>
   * @return The count of affixList.
   */
  int getAffixListCount();
  /**
   * <code>repeated uint32 affix_list = 29;</code>
   * @param index The index of the element to return.
   * @return The affixList at the given index.
   */
  int getAffixList(int index);

  /**
   * <code>.JNOLLBCHCNH EJEHOGBGBIJ = 102;</code>
   * @return Whether the eJEHOGBGBIJ field is set.
   */
  boolean hasEJEHOGBGBIJ();
  /**
   * <code>.JNOLLBCHCNH EJEHOGBGBIJ = 102;</code>
   * @return The eJEHOGBGBIJ.
   */
  io.grasscutter.net.proto.define.JNOLLBCHCNH getEJEHOGBGBIJ();
  /**
   * <code>.JNOLLBCHCNH EJEHOGBGBIJ = 102;</code>
   */
  io.grasscutter.net.proto.define.JNOLLBCHCNHOrBuilder getEJEHOGBGBIJOrBuilder();

  /**
   * <code>repeated uint32 interact_uid_list = 24;</code>
   * @return A list containing the interactUidList.
   */
  java.util.List<java.lang.Integer> getInteractUidListList();
  /**
   * <code>repeated uint32 interact_uid_list = 24;</code>
   * @return The count of interactUidList.
   */
  int getInteractUidListCount();
  /**
   * <code>repeated uint32 interact_uid_list = 24;</code>
   * @param index The index of the element to return.
   * @return The interactUidList at the given index.
   */
  int getInteractUidList(int index);

  /**
   * <code>.GadgetPlayInfo play_info = 100;</code>
   * @return Whether the playInfo field is set.
   */
  boolean hasPlayInfo();
  /**
   * <code>.GadgetPlayInfo play_info = 100;</code>
   * @return The playInfo.
   */
  io.grasscutter.net.proto.define.GadgetPlayInfo getPlayInfo();
  /**
   * <code>.GadgetPlayInfo play_info = 100;</code>
   */
  io.grasscutter.net.proto.define.GadgetPlayInfoOrBuilder getPlayInfoOrBuilder();

  /**
   * <code>.PDDFKAKPAPF NAJIKMLHPFB = 101;</code>
   * @return Whether the nAJIKMLHPFB field is set.
   */
  boolean hasNAJIKMLHPFB();
  /**
   * <code>.PDDFKAKPAPF NAJIKMLHPFB = 101;</code>
   * @return The nAJIKMLHPFB.
   */
  io.grasscutter.net.proto.define.PDDFKAKPAPF getNAJIKMLHPFB();
  /**
   * <code>.PDDFKAKPAPF NAJIKMLHPFB = 101;</code>
   */
  io.grasscutter.net.proto.define.PDDFKAKPAPFOrBuilder getNAJIKMLHPFBOrBuilder();

  /**
   * <code>.BDIMCFFEKON KLPMJCFGNPI = 103;</code>
   * @return Whether the kLPMJCFGNPI field is set.
   */
  boolean hasKLPMJCFGNPI();
  /**
   * <code>.BDIMCFFEKON KLPMJCFGNPI = 103;</code>
   * @return The kLPMJCFGNPI.
   */
  io.grasscutter.net.proto.define.BDIMCFFEKON getKLPMJCFGNPI();
  /**
   * <code>.BDIMCFFEKON KLPMJCFGNPI = 103;</code>
   */
  io.grasscutter.net.proto.define.BDIMCFFEKONOrBuilder getKLPMJCFGNPIOrBuilder();

  /**
   * <code>.DKIBLFIGLAP JIOIGFOFFFF = 27;</code>
   * @return Whether the jIOIGFOFFFF field is set.
   */
  boolean hasJIOIGFOFFFF();
  /**
   * <code>.DKIBLFIGLAP JIOIGFOFFFF = 27;</code>
   * @return The jIOIGFOFFFF.
   */
  io.grasscutter.net.proto.define.DKIBLFIGLAP getJIOIGFOFFFF();
  /**
   * <code>.DKIBLFIGLAP JIOIGFOFFFF = 27;</code>
   */
  io.grasscutter.net.proto.define.DKIBLFIGLAPOrBuilder getJIOIGFOFFFFOrBuilder();

  /**
   * <code>uint32 prop_owner_entity_id = 22;</code>
   * @return The propOwnerEntityId.
   */
  int getPropOwnerEntityId();

  /**
   * <code>bool is_enable_interact = 10;</code>
   * @return The isEnableInteract.
   */
  boolean getIsEnableInteract();

  /**
   * <code>bool is_show_cutscene = 8;</code>
   * @return The isShowCutscene.
   */
  boolean getIsShowCutscene();

  /**
   * <code>uint32 authority_peer_id = 9;</code>
   * @return The authorityPeerId.
   */
  int getAuthorityPeerId();

  /**
   * <code>uint32 draft_id = 25;</code>
   * @return The draftId.
   */
  int getDraftId();

  /**
   * <code>uint32 gadget_talk_state = 26;</code>
   * @return The gadgetTalkState.
   */
  int getGadgetTalkState();

  /**
   * <code>uint32 config_id = 3;</code>
   * @return The configId.
   */
  int getConfigId();

  /**
   * <code>uint32 gadget_id = 1;</code>
   * @return The gadgetId.
   */
  int getGadgetId();

  /**
   * <code>uint32 owner_entity_id = 4;</code>
   * @return The ownerEntityId.
   */
  int getOwnerEntityId();

  /**
   * <code>uint32 camp_type = 28;</code>
   * @return The campType.
   */
  int getCampType();

  /**
   * <code>uint32 mark_flag = 21;</code>
   * @return The markFlag.
   */
  int getMarkFlag();

  /**
   * <code>.GadgetBornType born_type = 5;</code>
   * @return The enum numeric value on the wire for bornType.
   */
  int getBornTypeValue();
  /**
   * <code>.GadgetBornType born_type = 5;</code>
   * @return The bornType.
   */
  io.grasscutter.net.proto.define.GadgetBornType getBornType();

  /**
   * <code>uint32 gadget_type = 7;</code>
   * @return The gadgetType.
   */
  int getGadgetType();

  /**
   * <code>uint32 interact_id = 11;</code>
   * @return The interactId.
   */
  int getInteractId();

  /**
   * <code>uint32 group_id = 2;</code>
   * @return The groupId.
   */
  int getGroupId();

  /**
   * <code>.BossChestInfo boss_chest = 20;</code>
   * @return Whether the bossChest field is set.
   */
  boolean hasBossChest();
  /**
   * <code>.BossChestInfo boss_chest = 20;</code>
   * @return The bossChest.
   */
  io.grasscutter.net.proto.define.BossChestInfo getBossChest();
  /**
   * <code>.BossChestInfo boss_chest = 20;</code>
   */
  io.grasscutter.net.proto.define.BossChestInfoOrBuilder getBossChestOrBuilder();

  /**
   * <code>.ScreenInfo screen_info = 48;</code>
   * @return Whether the screenInfo field is set.
   */
  boolean hasScreenInfo();
  /**
   * <code>.ScreenInfo screen_info = 48;</code>
   * @return The screenInfo.
   */
  io.grasscutter.net.proto.define.ScreenInfo getScreenInfo();
  /**
   * <code>.ScreenInfo screen_info = 48;</code>
   */
  io.grasscutter.net.proto.define.ScreenInfoOrBuilder getScreenInfoOrBuilder();

  /**
   * <code>.BlossomChestInfo blossom_chest = 41;</code>
   * @return Whether the blossomChest field is set.
   */
  boolean hasBlossomChest();
  /**
   * <code>.BlossomChestInfo blossom_chest = 41;</code>
   * @return The blossomChest.
   */
  io.grasscutter.net.proto.define.BlossomChestInfo getBlossomChest();
  /**
   * <code>.BlossomChestInfo blossom_chest = 41;</code>
   */
  io.grasscutter.net.proto.define.BlossomChestInfoOrBuilder getBlossomChestOrBuilder();

  /**
   * <code>.IKNFOPHBEDP shell_info = 47;</code>
   * @return Whether the shellInfo field is set.
   */
  boolean hasShellInfo();
  /**
   * <code>.IKNFOPHBEDP shell_info = 47;</code>
   * @return The shellInfo.
   */
  io.grasscutter.net.proto.define.IKNFOPHBEDP getShellInfo();
  /**
   * <code>.IKNFOPHBEDP shell_info = 47;</code>
   */
  io.grasscutter.net.proto.define.IKNFOPHBEDPOrBuilder getShellInfoOrBuilder();

  /**
   * <code>.DDAJIEEALEI weather = 17;</code>
   * @return Whether the weather field is set.
   */
  boolean hasWeather();
  /**
   * <code>.DDAJIEEALEI weather = 17;</code>
   * @return The weather.
   */
  io.grasscutter.net.proto.define.DDAJIEEALEI getWeather();
  /**
   * <code>.DDAJIEEALEI weather = 17;</code>
   */
  io.grasscutter.net.proto.define.DDAJIEEALEIOrBuilder getWeatherOrBuilder();

  /**
   * <code>.MAGGMEBGLAL ability_gadget = 18;</code>
   * @return Whether the abilityGadget field is set.
   */
  boolean hasAbilityGadget();
  /**
   * <code>.MAGGMEBGLAL ability_gadget = 18;</code>
   * @return The abilityGadget.
   */
  io.grasscutter.net.proto.define.MAGGMEBGLAL getAbilityGadget();
  /**
   * <code>.MAGGMEBGLAL ability_gadget = 18;</code>
   */
  io.grasscutter.net.proto.define.MAGGMEBGLALOrBuilder getAbilityGadgetOrBuilder();

  /**
   * <code>.HENGHIEEKGJ client_gadget = 15;</code>
   * @return Whether the clientGadget field is set.
   */
  boolean hasClientGadget();
  /**
   * <code>.HENGHIEEKGJ client_gadget = 15;</code>
   * @return The clientGadget.
   */
  io.grasscutter.net.proto.define.HENGHIEEKGJ getClientGadget();
  /**
   * <code>.HENGHIEEKGJ client_gadget = 15;</code>
   */
  io.grasscutter.net.proto.define.HENGHIEEKGJOrBuilder getClientGadgetOrBuilder();

  /**
   * <code>.GHFMHHGBENE coin_collect_operator_info = 64;</code>
   * @return Whether the coinCollectOperatorInfo field is set.
   */
  boolean hasCoinCollectOperatorInfo();
  /**
   * <code>.GHFMHHGBENE coin_collect_operator_info = 64;</code>
   * @return The coinCollectOperatorInfo.
   */
  io.grasscutter.net.proto.define.GHFMHHGBENE getCoinCollectOperatorInfo();
  /**
   * <code>.GHFMHHGBENE coin_collect_operator_info = 64;</code>
   */
  io.grasscutter.net.proto.define.GHFMHHGBENEOrBuilder getCoinCollectOperatorInfoOrBuilder();

  /**
   * <code>.GatherGadgetInfo gather_gadget = 13;</code>
   * @return Whether the gatherGadget field is set.
   */
  boolean hasGatherGadget();
  /**
   * <code>.GatherGadgetInfo gather_gadget = 13;</code>
   * @return The gatherGadget.
   */
  io.grasscutter.net.proto.define.GatherGadgetInfo getGatherGadget();
  /**
   * <code>.GatherGadgetInfo gather_gadget = 13;</code>
   */
  io.grasscutter.net.proto.define.GatherGadgetInfoOrBuilder getGatherGadgetOrBuilder();

  /**
   * <code>.RoguelikeGadgetInfo roguelike_gadget_info = 61;</code>
   * @return Whether the roguelikeGadgetInfo field is set.
   */
  boolean hasRoguelikeGadgetInfo();
  /**
   * <code>.RoguelikeGadgetInfo roguelike_gadget_info = 61;</code>
   * @return The roguelikeGadgetInfo.
   */
  io.grasscutter.net.proto.define.RoguelikeGadgetInfo getRoguelikeGadgetInfo();
  /**
   * <code>.RoguelikeGadgetInfo roguelike_gadget_info = 61;</code>
   */
  io.grasscutter.net.proto.define.RoguelikeGadgetInfoOrBuilder getRoguelikeGadgetInfoOrBuilder();

  /**
   * <code>.GIFDGFMGKOL offering_info = 44;</code>
   * @return Whether the offeringInfo field is set.
   */
  boolean hasOfferingInfo();
  /**
   * <code>.GIFDGFMGKOL offering_info = 44;</code>
   * @return The offeringInfo.
   */
  io.grasscutter.net.proto.define.GIFDGFMGKOL getOfferingInfo();
  /**
   * <code>.GIFDGFMGKOL offering_info = 44;</code>
   */
  io.grasscutter.net.proto.define.GIFDGFMGKOLOrBuilder getOfferingInfoOrBuilder();

  /**
   * <code>.FELOLBOAKFD night_crow_gadget_info = 62;</code>
   * @return Whether the nightCrowGadgetInfo field is set.
   */
  boolean hasNightCrowGadgetInfo();
  /**
   * <code>.FELOLBOAKFD night_crow_gadget_info = 62;</code>
   * @return The nightCrowGadgetInfo.
   */
  io.grasscutter.net.proto.define.FELOLBOAKFD getNightCrowGadgetInfo();
  /**
   * <code>.FELOLBOAKFD night_crow_gadget_info = 62;</code>
   */
  io.grasscutter.net.proto.define.FELOLBOAKFDOrBuilder getNightCrowGadgetInfoOrBuilder();

  /**
   * <code>.MOOKABDAJLO statue_gadget = 19;</code>
   * @return Whether the statueGadget field is set.
   */
  boolean hasStatueGadget();
  /**
   * <code>.MOOKABDAJLO statue_gadget = 19;</code>
   * @return The statueGadget.
   */
  io.grasscutter.net.proto.define.MOOKABDAJLO getStatueGadget();
  /**
   * <code>.MOOKABDAJLO statue_gadget = 19;</code>
   */
  io.grasscutter.net.proto.define.MOOKABDAJLOOrBuilder getStatueGadgetOrBuilder();

  /**
   * <code>.CDJBCFJMBAK deshret_obelisk_gadget_info = 63;</code>
   * @return Whether the deshretObeliskGadgetInfo field is set.
   */
  boolean hasDeshretObeliskGadgetInfo();
  /**
   * <code>.CDJBCFJMBAK deshret_obelisk_gadget_info = 63;</code>
   * @return The deshretObeliskGadgetInfo.
   */
  io.grasscutter.net.proto.define.CDJBCFJMBAK getDeshretObeliskGadgetInfo();
  /**
   * <code>.CDJBCFJMBAK deshret_obelisk_gadget_info = 63;</code>
   */
  io.grasscutter.net.proto.define.CDJBCFJMBAKOrBuilder getDeshretObeliskGadgetInfoOrBuilder();

  /**
   * <code>.FoundationInfo foundation_info = 45;</code>
   * @return Whether the foundationInfo field is set.
   */
  boolean hasFoundationInfo();
  /**
   * <code>.FoundationInfo foundation_info = 45;</code>
   * @return The foundationInfo.
   */
  io.grasscutter.net.proto.define.FoundationInfo getFoundationInfo();
  /**
   * <code>.FoundationInfo foundation_info = 45;</code>
   */
  io.grasscutter.net.proto.define.FoundationInfoOrBuilder getFoundationInfoOrBuilder();

  /**
   * <code>.WorktopInfo worktop = 14;</code>
   * @return Whether the worktop field is set.
   */
  boolean hasWorktop();
  /**
   * <code>.WorktopInfo worktop = 14;</code>
   * @return The worktop.
   */
  io.grasscutter.net.proto.define.WorktopInfo getWorktop();
  /**
   * <code>.WorktopInfo worktop = 14;</code>
   */
  io.grasscutter.net.proto.define.WorktopInfoOrBuilder getWorktopOrBuilder();

  /**
   * <code>.GadgetGeneralRewardInfo general_reward = 43;</code>
   * @return Whether the generalReward field is set.
   */
  boolean hasGeneralReward();
  /**
   * <code>.GadgetGeneralRewardInfo general_reward = 43;</code>
   * @return The generalReward.
   */
  io.grasscutter.net.proto.define.GadgetGeneralRewardInfo getGeneralReward();
  /**
   * <code>.GadgetGeneralRewardInfo general_reward = 43;</code>
   */
  io.grasscutter.net.proto.define.GadgetGeneralRewardInfoOrBuilder getGeneralRewardOrBuilder();

  /**
   * <code>.FCHLLHGCMDC vehicle_info = 46;</code>
   * @return Whether the vehicleInfo field is set.
   */
  boolean hasVehicleInfo();
  /**
   * <code>.FCHLLHGCMDC vehicle_info = 46;</code>
   * @return The vehicleInfo.
   */
  io.grasscutter.net.proto.define.FCHLLHGCMDC getVehicleInfo();
  /**
   * <code>.FCHLLHGCMDC vehicle_info = 46;</code>
   */
  io.grasscutter.net.proto.define.FCHLLHGCMDCOrBuilder getVehicleInfoOrBuilder();

  /**
   * <code>.FishPoolInfo fish_pool_info = 59;</code>
   * @return Whether the fishPoolInfo field is set.
   */
  boolean hasFishPoolInfo();
  /**
   * <code>.FishPoolInfo fish_pool_info = 59;</code>
   * @return The fishPoolInfo.
   */
  io.grasscutter.net.proto.define.FishPoolInfo getFishPoolInfo();
  /**
   * <code>.FishPoolInfo fish_pool_info = 59;</code>
   */
  io.grasscutter.net.proto.define.FishPoolInfoOrBuilder getFishPoolInfoOrBuilder();

  /**
   * <code>.MpPlayRewardInfo mp_play_reward = 42;</code>
   * @return Whether the mpPlayReward field is set.
   */
  boolean hasMpPlayReward();
  /**
   * <code>.MpPlayRewardInfo mp_play_reward = 42;</code>
   * @return The mpPlayReward.
   */
  io.grasscutter.net.proto.define.MpPlayRewardInfo getMpPlayReward();
  /**
   * <code>.MpPlayRewardInfo mp_play_reward = 42;</code>
   */
  io.grasscutter.net.proto.define.MpPlayRewardInfoOrBuilder getMpPlayRewardOrBuilder();

  /**
   * <code>.IACHJPIMDFA trifle_gadget = 67;</code>
   * @return Whether the trifleGadget field is set.
   */
  boolean hasTrifleGadget();
  /**
   * <code>.IACHJPIMDFA trifle_gadget = 67;</code>
   * @return The trifleGadget.
   */
  io.grasscutter.net.proto.define.IACHJPIMDFA getTrifleGadget();
  /**
   * <code>.IACHJPIMDFA trifle_gadget = 67;</code>
   */
  io.grasscutter.net.proto.define.IACHJPIMDFAOrBuilder getTrifleGadgetOrBuilder();

  /**
   * <code>.CustomGadgetTreeInfo custom_gadget_tree_info = 60;</code>
   * @return Whether the customGadgetTreeInfo field is set.
   */
  boolean hasCustomGadgetTreeInfo();
  /**
   * <code>.CustomGadgetTreeInfo custom_gadget_tree_info = 60;</code>
   * @return The customGadgetTreeInfo.
   */
  io.grasscutter.net.proto.define.CustomGadgetTreeInfo getCustomGadgetTreeInfo();
  /**
   * <code>.CustomGadgetTreeInfo custom_gadget_tree_info = 60;</code>
   */
  io.grasscutter.net.proto.define.CustomGadgetTreeInfoOrBuilder getCustomGadgetTreeInfoOrBuilder();

  /**
   * <code>uint32 gadget_state = 6;</code>
   * @return The gadgetState.
   */
  int getGadgetState();

  public io.grasscutter.net.proto.define.SceneGadgetInfo.ContentCase getContentCase();
}
