syntax = "proto3";
package TikTok;

option java_package = "io.github.jwdeveloper.tiktok.messages.enums";
option java_multiple_files = true;

enum AuditStatus {
  AUDITSTATUSUNKNOWN = 0;
  AUDITSTATUSPASS = 1;
  AUDITSTATUSFAILED = 2;
  AUDITSTATUSREVIEWING = 3;
  AUDITSTATUSFORBIDDEN = 4;
}
enum EmoteType {
  EMOTETYPENORMAL = 0;
  EMOTETYPEWITHSTICKER = 1;
}
enum ContentSource {
  CONTENTSOURCEUNKNOWN = 0;
  CONTENTSOURCENORMAL = 1;
  CONTENTSOURCECAMERA = 2;
}
enum EmotePrivateType {
  EMOTE_PRIVATE_TYPE_NORMAL = 0;
  EMOTE_PRIVATE_TYPE_SUB_WAVE = 1;
}

enum TextType {
  DISPLAY_TEXT = 0;
  CONTENT = 1;
}

enum LinkmicApplierSortSetting {
  LINKMIC_APPLIER_SORT_SETTING_NONE = 0;
  LINKMIC_APPLIER_SORT_SETTING_BY_GIFT_SCORE = 1;
}

enum HashtagNamespace {
  GLOBAL = 0;
  GAMING = 1;
}

enum AgreeStatus {
  AGREE_UNKNOWN = 0;
  AGREE = 1;
  REJECT = 2;
}

enum KickoutReason {
  KICKOUT_REASON_UNKNOWN = 0;
  KICKOUT_REASON_FIRST_FRAME_TIMEOUT = 1;
  KICKOUT_REASON_BY_HOST = 2;
  KICKOUT_REASON_RTC_LOST_CONNECTION = 3;
  KICKOUT_REASON_BY_PUNISH = 4;
  KICKOUT_REASON_BY_ADMIN = 5;
  KICKOUT_REASON_HOST_REMOVE_ALL_GUESTS = 6;
}


enum GroupStatus {
  GROUP_STATUS_UNKNOWN = 0;
  GROUP_STATUS_WAITING = 1;
  GROUP_STATUS_LINKED = 3;
}

enum BusinessCase {
  BUSINESS_NOT_SET = 0;
  APPLY_BIZ_CONTENT = 1;
  INVITE_BIZ_CONTENT = 2;
  REPLY_BIZ_CONTENT = 3;
  PERMIT_BIZ_CONTENT = 4;
  JOIN_DIRECT_BIZ_CONTENT = 5;
  KICK_OUT_BIZ_CONTENT = 6;
  LIST_CHANGE_BIZ_CONTENT = 11;
  MULTI_LIVE_CONTENT = 100;
  COHOST_CONTENT = 200;
}

enum ReplyStatus {
  REPLY_STATUS_UNKNOWN = 0;
  REPLY_STATUS_AGREE = 1;
  REPLY_STATUS_REFUSE_PERSONALLY = 2;
  REPLY_STATUS_REFUSE_TYPE_NOT_SUPPORT = 3;
  REPLY_STATUS_REFUSE_PROCESSING_INVITATION = 4;
  REPLY_STATUS_REFUSE_BY_TIMEOUT = 5;
  REPLY_STATUS_REFUSE_EXCEPTION = 6;
  REPLY_STATUS_REFUSE_SYSTEM_NOT_SUPPORTED = 7;
  REPLY_STATUS_REFUSE_SUBTYPE_DIFFERENCE = 8;
  REPLY_STATUS_REFUSE_IN_MICROOM = 9;
  REPLY_STATUS_REFUSE_NOT_LOAD_PLUGIN = 10;
  REPLY_STATUS_REFUSE_IN_MULTI_GUEST = 11;
  REPLY_STATUS_REFUSE_PAUSE_LIVE = 12;
  REPLY_STATUS_REFUSE_OPEN_CAMERA_DIALOG_SHOWING = 13;
  REPLY_STATUS_REFUSE_DRAW_GUESSING = 14;
  REPLY_STATUS_REFUSE_RANDOM_MATCHING = 15;
  REPLY_STATUS_REFUSE_IN_MATCH_PROCESSING = 16;
  REPLY_STATUS_REFUSE_IN_MICROOM_FOR_MULTI_COHOST = 17;
  REPLY_STATUS_REFUSE_COHOST_FINISHED = 18;
  REPLY_STATUS_REFUSE_NOT_CONNECTED = 19;
  REPLY_STATUS_REFUSE_LINKMIC_FULL = 20;
  REPLY_STATUS_REFUSE_ARC_INCOMPATIBLE = 21;
  REPLY_STATUS_REFUSE_PROCESSING_OTHER_INVITE = 22;
  REPLY_STATUS_REFUSE_PROCESSING_OTHER_APPLY = 23;
  REPLY_STATUS_REFUSE_IN_ANCHOR_COHOST = 24;
  REPLY_STATUS_REFUSE_TOPIC_PAIRING = 25;
}

enum SubscribeType {
  SUBSCRIBETYPE_ONCE = 0;
  SUBSCRIBETYPE_AUTO = 1;
  SUBSCRIBETYPE_DEFAULT = 100;
}
enum OldSubscribeStatus {
  OLDSUBSCRIBESTATUS_FIRST = 0;
  OLDSUBSCRIBESTATUS_RESUB = 1;
  OLDSUBSCRIBESTATUS_SUBINGRACEPERIOD = 2;
  OLDSUBSCRIBESTATUS_SUBNOTINGRACEPERIOD = 3;
  OLDSUBSCRIBESTATUS_DEFAULT = 100;
}
enum SubscribingStatus {
  SUBSCRIBINGSTATUS_UNKNOWN = 0;
  SUBSCRIBINGSTATUS_ONCE = 1;
  SUBSCRIBINGSTATUS_CIRCLE = 2;
  SUBSCRIBINGSTATUS_CIRCLECANCEL = 3;
  SUBSCRIBINGSTATUS_REFUND = 4;
  SUBSCRIBINGSTATUS_INGRACEPERIOD = 5;
  SUBSCRIBINGSTATUS_NOTINGRACEPERIOD = 6;
}
enum LinkmicStatus
{
  Disable = 0;
  Enable = 1;
  Just_Following = 2;
  Multi_Linking = 3;
  Multi_Linking_Only_Following = 4;
}

enum MemberMessageAction {
  UNKNOWN = 0;
  JOINED = 1; // User Joined the Stream
  SUBSCRIBED = 3; // User Subscribed to the Host
  //?? = 26
  //?? = 27
  //?? = 50 (share?)
}

enum ControlAction {
  ControlActionUNKNOWN = 0;
  STREAM_PAUSED = 1; // Stream Paused by Host
  STREAM_UNPAUSED = 2;
  STREAM_ENDED = 3; // Stream Ended by Host
}

enum LinkLayerMessageType
{
  Linker_Unknown = 0;
  Linker_Create = 1;
  Linker_Invite = 2;
  Linker_Apply = 3;
  Linker_Permit = 4;
  Linker_Reply = 5;
  Linker_Kick_Out = 6;
  Linker_Cancel_Apply = 7;
  Linker_Cancel_Invite = 8;
  Linker_Leave = 9;
  Linker_Finish = 10;
  Linker_List_Change = 11;
  Linker_Join_Direct = 12;
  Linker_Join_Group = 13;
  Linker_Permit_Group = 14;
  Linker_Cancel_Group = 15;
  Linker_Leave_Group = 16;
  Linker_P2P_Group_Change = 17;
  Linker_Group_Change = 18;
}


enum BarrageType
{
  BarrageType_Unknown = 0;
  EComOrdering = 1;
  EComBuying = 2;
  Normal = 3;
  Subscribe = 4;
  EventView = 5;
  EventRegistered = 6;
  SubscribeGift = 7;
  UserUpgrade = 8;
  GradeUserEntranceNotification = 9;
  FansLevelUpgrade = 10;
  FansLevelEntrance = 11;
  GamePartnership = 12;
}

enum EnvelopeBusinessType
{
  BusinessTypeUnknown = 0;
  BusinessTypeUserDiamond = 1;
  BusinessTypePlatformDiamond = 2;
  BusinessTypePlatformShell = 3;
  BusinessTypePortal = 4;
  BusinessTypePlatformMerch = 5;
  BusinessTypeEoYDiamond = 6;
  BusinessTypeFanClubGtM = 7;
}
enum EnvelopeFollowShowStatus
{
  EnvelopeFollowShowUnknown = 0;
  EnvelopeFollowShow = 1;
  EnvelopeFollowNotShow = 2;
}

enum EnvelopeDisplay
{
  EnvelopeDisplayUnknown = 0;
  EnvelopeDisplayNew = 1;
  EnvelopeDisplayHide = 2;
}


enum CommonContentCase {
  COMMON_CONTENT_NOT_SET = 0;
  CREATE_CHANNEL_CONTENT = 100;
  LIST_CHANGE_CONTENT = 102;
  INVITE_CONTENT = 103;
  APPLY_CONTENT = 104;
  PERMIT_APPLY_CONTENT = 105;
  REPLY_INVITE_CONTENT = 106;
  KICK_OUT_CONTENT = 107;
  CANCEL_APPLY_CONTENT = 108;
  CANCEL_INVITE_CONTENT = 109;
  LEAVE_CONTENT = 110;
  FINISH_CONTENT = 111;
  JOIN_DIRECT_CONTENT = 112;
  JOIN_GROUP_CONTENT = 113;
  PERMIT_GROUP_CONTENT = 114;
  CANCEL_GROUP_CONTENT = 115;
  LEAVE_GROUP_CONTENT = 116;
  P2P_GROUP_CHANGE_CONTENT = 117;
  GROUP_CHANGE_CONTENT = 118;
}


enum LinkMessageType {
  TPYE_LINKER_UNKNOWN = 0;
  TYPE_LINKER_CREATE = 1;
  TYPE_LINKER_CLOSE = 2;
  TYPE_LINKER_INVITE = 3;
  TYPE_LINKER_APPLY = 4;
  TYPE_LINKER_REPLY = 5;
  TPYE_LINKER_ENTER = 6;
  TPYE_LINKER_LEAVE = 7;
  TYPE_LINKER_PERMIT = 8;
  TPYE_LINKER_CANCEL_INVITE = 9;
  TYPE_LINKER_WAITING_LIST_CHANGE = 10;
  TYPE_LINKER_LINKED_LIST_CHANGE = 11;
  TYPE_LINKER_UPDATE_USER = 12;
  TPYE_LINKER_KICK_OUT = 13;
  TPYE_LINKER_CANCEL_APPLY = 14;
  TYPE_LINKER_MUTE = 15;
  TYPE_LINKER_MATCH = 16;
  TYPE_LINKER_UPDATE_USER_SETTING = 17;
  TYPE_LINKER_MIC_IDX_UPDATE = 18;
  TYPE_LINKER_LEAVE_V2 = 19;
  TYPE_LINKER_WAITING_LIST_CHANGE_V2 = 20;
  TYPE_LINKER_LINKED_LIST_CHANGE_V2 = 21;
  TYPE_LINKER_COHOST_LIST_CHANGE = 22;
  TYPE_LINKER_MEDIA_CHANGE = 23;
  TYPE_LINKER_ACCEPT_NOTICE = 24;
  TPYE_LINKER_SYS_KICK_OUT = 101;
  TPYE_LINKMIC_USER_TOAST = 102;
}

enum MessageType {
  MESSAGETYPE_SUBSUCCESS = 0;
  MESSAGETYPE_ANCHORREMINDER = 1;
  MESSAGETYPE_ENTERROOMEXPIRESOON = 2;
  MESSAGETYPE_SUBGOALCREATETOANCHOR = 3;
  MESSAGETYPE_SUBGOALCOMPLETETOAUDIENCE = 4;
  MESSAGETYPE_SUBGOALCOMPLETETOANCHOR = 5;
  MESSAGETYPE_SUBGIFTTIKTOK2USERNOTICE = 6;
  MESSAGETYPE_SUBGIFTTIKTOK2ANCHORNOTICE = 7;
  MESSAGETYPE_SUBGIFTTRECEIVESENDNOTICE = 8;
  MESSAGETYPE_SUBGIFTSENDSUCCEEDROOMMESSAGE = 9;
  MESSAGETYPE_SUBGIFTSENDSUCCEEDANCHORNOTICE = 10;
  MESSAGETYPE_SUBGIFTLOWVERSIONUPGRADENOTICE = 11;
  MESSAGETYPE_SUBGIFTUSERBUYAUTHNOTICE = 12;
}

enum Scene {
  SCENE_UNKNOWN = 0;
  SCENE_CO_HOST = 2;
  SCENE_MULTI_LIVE = 4;
}