discord-protos 1.2.61 → 1.2.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  from enum import Enum as _Enum
4
4
  from typing import TYPE_CHECKING
5
5
 
6
- __version__ = '1.2.61'
6
+ __version__ = '1.2.62'
7
7
 
8
8
  if TYPE_CHECKING:
9
9
  from google.protobuf.message import Message as _Message
@@ -270,4 +270,6 @@ message Experiment {
270
270
  AssignmentMode assignment_mode = 25;
271
271
  bool enable_edit_raw_json_ui = 23;
272
272
  int32 winning_variation_id = 24;
273
+ Type type = 26;
274
+ bool is_template = 27;
273
275
  }
@@ -26,7 +26,7 @@ from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb
26
26
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
27
27
 
28
28
 
29
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n+discord_experimentation/v1/Experiment.proto\x12)discord_protos.discord_experimentation.v1\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xcf@\n\nExperiment\x12\n\n\x02id\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x33\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x12\n\ncreator_id\x18\x04 \x01(\x06\x12\x0f\n\x07version\x18\x05 \x01(\x05\x12\x32\n\tedited_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x11\n\teditor_id\x18\x07 \x01(\x06\x12\r\n\x05title\x18\x08 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\t \x01(\t\x12\x35\n\nhypothesis\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x02\x88\x01\x01\x12\x39\n\x0etech_spec_link\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x03\x88\x01\x01\x12\x10\n\x08revision\x18\x0c \x01(\x05\x12\x10\n\x08hash_key\x18\r \x01(\t\x12Q\n\tunit_type\x18\x0e \x01(\x0e\x32>.discord_protos.discord_experimentation.v1.Experiment.UnitType\x12S\n\nvariations\x18\x0f \x03(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.Variation\x12I\n\x05rules\x18\x10 \x03(\x0b\x32:.discord_protos.discord_experimentation.v1.Experiment.Rule\x12J\n\x05phase\x18\x12 \x01(\x0e\x32;.discord_protos.discord_experimentation.v1.Experiment.Phase\x12O\n\x08surfaces\x18\x13 \x03(\x0e\x32=.discord_protos.discord_experimentation.v1.Experiment.Surface\x12\x18\n\x10owning_team_name\x18\x14 \x01(\t\x12&\n\x1e\x63\x61\x63hed_notification_channel_id\x18\x15 \x01(\x06\x12\x61\n\x11\x65xposure_tracking\x18\x16 \x01(\x0e\x32\x46.discord_protos.discord_experimentation.v1.Experiment.ExposureTracking\x12]\n\x0f\x61ssignment_mode\x18\x19 \x01(\x0e\x32\x44.discord_protos.discord_experimentation.v1.Experiment.AssignmentMode\x12\x1f\n\x17\x65nable_edit_raw_json_ui\x18\x17 \x01(\x08\x12\x1c\n\x14winning_variation_id\x18\x18 \x01(\x05\x1ao\n\x06\x42ucket\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0c\n\x04stop\x18\x02 \x01(\x05\x12H\n\x04type\x18\x03 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x1a\xa6\x02\n\tVariation\x12\n\n\x02id\x18\x01 \x01(\x05\x12\r\n\x05label\x18\x02 \x01(\t\x12\x19\n\x11target_allocation\x18\x03 \x01(\x05\x12M\n\x07\x62uckets\x18\x04 \x03(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.Bucket\x12H\n\x04type\x18\x05 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x12\x38\n\rconfiguration\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x00\x88\x01\x01\x42\x10\n\x0e_configuration\x1a\xa1\x01\n\x18PlatformVersionSpecifier\x12\r\n\x05major\x18\x01 \x01(\r\x12\x30\n\x05minor\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x00\x88\x01\x01\x12\x30\n\x05\x62uild\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.UInt64ValueH\x01\x88\x01\x01\x42\x08\n\x06_minorB\x08\n\x06_build\x1a\xa0\x01\n\x19PlatformVersionRangeBound\x12\x64\n\x07version\x18\x01 \x01(\x0b\x32N.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionSpecifierH\x00\x88\x01\x01\x12\x11\n\tinclusive\x18\x02 \x01(\x08\x42\n\n\x08_version\x1a\x8c\x02\n\x14PlatformVersionRange\x12i\n\x0blower_bound\x18\x01 \x01(\x0b\x32O.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRangeBoundH\x00\x88\x01\x01\x12i\n\x0bupper_bound\x18\x02 \x01(\x0b\x32O.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRangeBoundH\x01\x88\x01\x01\x42\x0e\n\x0c_lower_boundB\x0e\n\x0c_upper_bound\x1a\x8c\x01\n\x0fPlatformVersion\x12Z\n\x06ranges\x18\x01 \x03(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRange\x12\x1d\n\x15work_around_pyoto_bug\x18\x02 \x01(\x08\x1a\xe2\x03\n\x0e\x43lientPlatform\x12_\n\x0bios_version\x18\x01 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x00\x88\x01\x01\x12\x63\n\x0f\x61ndroid_version\x18\x02 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x01\x88\x01\x01\x12_\n\x0bweb_version\x18\x03 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x02\x88\x01\x01\x12\x62\n\x0enative_version\x18\x04 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x03\x88\x01\x01\x42\x0e\n\x0c_ios_versionB\x12\n\x10_android_versionB\x0e\n\x0c_web_versionB\x11\n\x0f_native_version\x1a&\n\x13SDKVersionSpecifier\x12\x0f\n\x07version\x18\x01 \x01(\x05\x1a\x96\x01\n\x14SDKVersionRangeBound\x12_\n\x07version\x18\x01 \x01(\x0b\x32I.discord_protos.discord_experimentation.v1.Experiment.SDKVersionSpecifierH\x00\x88\x01\x01\x12\x11\n\tinclusive\x18\x02 \x01(\x08\x42\n\n\x08_version\x1a\xfd\x01\n\x0fSDKVersionRange\x12\x64\n\x0blower_bound\x18\x01 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRangeBoundH\x00\x88\x01\x01\x12\x64\n\x0bupper_bound\x18\x02 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRangeBoundH\x01\x88\x01\x01\x42\x0e\n\x0c_lower_boundB\x0e\n\x0c_upper_bound\x1a\x82\x01\n\nSDKVersion\x12U\n\x06ranges\x18\x01 \x03(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRange\x12\x1d\n\x15work_around_pyoto_bug\x18\x02 \x01(\x08\x1a\xb5\x06\n\x15\x43lientOperatingSystem\x12Z\n\x0bios_version\x18\x01 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x00\x88\x01\x01\x12^\n\x0f\x61ndroid_version\x18\x02 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x01\x88\x01\x01\x12\\\n\rmacos_version\x18\x03 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x02\x88\x01\x01\x12^\n\x0fwindows_version\x18\x04 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x03\x88\x01\x01\x12\x62\n\x13playstation_version\x18\x05 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x04\x88\x01\x01\x12[\n\x0cxbox_version\x18\x06 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x05\x88\x01\x01\x12\\\n\rlinux_version\x18\x07 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x06\x88\x01\x01\x42\x0e\n\x0c_ios_versionB\x12\n\x10_android_versionB\x10\n\x0e_macos_versionB\x12\n\x10_windows_versionB\x16\n\x14_playstation_versionB\x0f\n\r_xbox_versionB\x10\n\x0e_linux_version\x1a>\n\nStaffUsers\x12\x15\n\rwork_accounts\x18\x01 \x01(\x08\x12\x19\n\x11personal_accounts\x18\x02 \x01(\x08\x1a \n\x0bUserInGuild\x12\x11\n\tguild_ids\x18\x01 \x03(\x06\x1a\x1b\n\x07UserIds\x12\x10\n\x08user_ids\x18\x01 \x03(\x06\x1a#\n\x0c\x43lientLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x39\n\tISORegion\x12\x13\n\x0biso_country\x18\x01 \x01(\t\x12\x17\n\x0fiso_subdivision\x18\x02 \x01(\t\x1a;\n\x05Place\x12\x0c\n\x04\x63ity\x18\x01 \x01(\t\x12\x13\n\x0bsubdivision\x18\x02 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x03 \x01(\t\x1a\xcc\x01\n\x08Location\x12U\n\niso_region\x18\x01 \x01(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.ISORegionH\x00\x12\x0f\n\x05is_eu\x18\x02 \x01(\x08H\x00\x12L\n\x05place\x18\x03 \x01(\x0b\x32;.discord_protos.discord_experimentation.v1.Experiment.PlaceH\x00\x42\n\n\x08location\x1a\x63\n\x0e\x43lientLocation\x12Q\n\tlocations\x18\x01 \x03(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.Location\x1a\x1e\n\x08\x43lientIP\x12\x12\n\x06\x62locks\x18\x01 \x03(\tB\x02\x10\x00\x1a!\n\nUserLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x1b\n\tUserIsBot\x12\x0e\n\x06is_bot\x18\x01 \x01(\x08\x1a\xa6\x01\n\x0cUserAgeRange\x12\x38\n\rmin_age_years\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x00\x88\x01\x01\x12\x38\n\rmax_age_years\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x01\x88\x01\x01\x42\x10\n\x0e_min_age_yearsB\x10\n\x0e_max_age_years\x1a\x1d\n\x0c\x46ixed64Value\x12\r\n\x05value\x18\x01 \x01(\x06\x1a\xd5\x01\n\x0bUserIDRange\x12W\n\x06min_id\x18\x01 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.Fixed64ValueH\x00\x88\x01\x01\x12W\n\x06max_id\x18\x02 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.Fixed64ValueH\x01\x88\x01\x01\x42\t\n\x07_min_idB\t\n\x07_max_id\x1a\x1b\n\x0bUserHasFlag\x12\x0c\n\x04mask\x18\x01 \x01(\x06\x1a\x37\n\x13UnitIdInRangeByHash\x12\x10\n\x08hash_key\x18\x01 \x01(\t\x12\x0e\n\x06target\x18\x02 \x01(\r\x1a\x34\n\x14\x43lientReleaseChannel\x12\x1c\n\x10release_channels\x18\x01 \x03(\tB\x02\x10\x00\x1a\x17\n\x06\x41lways\x12\r\n\x05value\x18\x01 \x01(\x08\x1a)\n\x12\x43lientSystemLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x42\n\x12UnitIdInExperiment\x12\x15\n\rexperiment_id\x18\x01 \x01(\x06\x12\x15\n\rvariation_ids\x18\x02 \x03(\x05\x1a\xaa\r\n\x06\x46ilter\x12^\n\x0e\x63lient_version\x18\x02 \x01(\x0b\x32\x44.discord_protos.discord_experimentation.v1.Experiment.ClientPlatformH\x00\x12`\n\tclient_os\x18\x03 \x01(\x0b\x32K.discord_protos.discord_experimentation.v1.Experiment.ClientOperatingSystemH\x00\x12Q\n\x05staff\x18\x04 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.StaffUsersH\x00\x12Z\n\ruser_in_guild\x18\x05 \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserInGuildH\x00\x12Q\n\x08user_ids\x18\x06 \x01(\x0b\x32=.discord_protos.discord_experimentation.v1.Experiment.UserIdsH\x00\x12[\n\rclient_locale\x18\x07 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.ClientLocaleH\x00\x12_\n\x0f\x63lient_location\x18\x08 \x01(\x0b\x32\x44.discord_protos.discord_experimentation.v1.Experiment.ClientLocationH\x00\x12S\n\tclient_ip\x18\t \x01(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.ClientIPH\x00\x12W\n\x0buser_locale\x18\n \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.UserLocaleH\x00\x12N\n\x03\x62ot\x18\x0b \x01(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.UserIsBotH\x00\x12\\\n\x0euser_age_range\x18\x0c \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.UserAgeRangeH\x00\x12Z\n\ruser_id_range\x18\r \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserIDRangeH\x00\x12Z\n\ruser_has_flag\x18\x0e \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserHasFlagH\x00\x12m\n\x18unit_id_in_range_by_hash\x18\x0f \x01(\x0b\x32I.discord_protos.discord_experimentation.v1.Experiment.UnitIdInRangeByHashH\x00\x12l\n\x16\x63lient_release_channel\x18\x10 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.ClientReleaseChannelH\x00\x12N\n\x06\x61lways\x18\x11 \x01(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.AlwaysH\x00\x12h\n\x14\x63lient_system_locale\x18\x12 \x01(\x0b\x32H.discord_protos.discord_experimentation.v1.Experiment.ClientSystemLocaleH\x00\x12i\n\x15unit_id_in_experiment\x18\x13 \x01(\x0b\x32H.discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperimentH\x00\x42\x08\n\x06\x66ilter\x1a \n\x08Override\x12\x14\n\x0cvariation_id\x18\x01 \x01(\x05\x1a\x9b\x02\n\x04Rule\x12H\n\x04type\x18\x01 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x12M\n\x07\x66ilters\x18\x02 \x03(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.Filter\x12U\n\x08override\x18\x03 \x01(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.OverrideH\x00\x88\x01\x01\x12\x16\n\x0eis_sunset_rule\x18\x04 \x01(\x08\x42\x0b\n\t_override\"9\n\x08UnitType\x12\x19\n\x15UNIT_TYPE_UNSPECIFIED\x10\x00\x12\x12\n\x0eUNIT_TYPE_USER\x10\x01\"O\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bTYPE_ACTIVE\x10\x01\x12\x0f\n\x0bTYPE_UNUSED\x10\x02\x12\x0f\n\x0bTYPE_BURNED\x10\x03\"\xb7\x01\n\x05Phase\x12\x15\n\x11PHASE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bPHASE_DRAFT\x10\x01\x12\x15\n\x11PHASE_MEASUREMENT\x10\x02\x12\x1b\n\x17PHASE_MEASUREMENT_ENDED\x10\x03\x12\x15\n\x11PHASE_ROLLING_OUT\x10\x04\x12\x14\n\x10PHASE_ROLLED_OUT\x10\x05\x12\x12\n\x0ePHASE_ARCHIVED\x10\x06\x12\x11\n\rPHASE_AA_MODE\x10\x07\"|\n\x07Surface\x12\x17\n\x13SURFACE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bSURFACE_API\x10\x01\x12\x0f\n\x0bSURFACE_APP\x10\x02\x12\x1c\n\x18SURFACE_DEVELOPER_PORTAL\x10\x03\x12\x18\n\x14SURFACE_ADMIN_PORTAL\x10\x04\"Q\n\x10\x45xposureTracking\x12\x1d\n\x19\x45XPOSURE_TRACKING_ENABLED\x10\x00\x12\x1e\n\x1a\x45XPOSURE_TRACKING_DISABLED\x10\x01\"p\n\x0e\x41ssignmentMode\x12\x18\n\x14\x41SSIGNMENT_MODE_FULL\x10\x00\x12!\n\x1d\x41SSIGNMENT_MODE_FORCE_DEFAULT\x10\x01\x12!\n\x1d\x41SSIGNMENT_MODE_OVERRIDE_ONLY\x10\x02\x42\r\n\x0b_created_atB\x0c\n\n_edited_atB\r\n\x0b_hypothesisB\x11\n\x0f_tech_spec_linkb\x06proto3')
29
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n+discord_experimentation/v1/Experiment.proto\x12)discord_protos.discord_experimentation.v1\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xae\x41\n\nExperiment\x12\n\n\x02id\x18\x01 \x01(\x06\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x33\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x12\n\ncreator_id\x18\x04 \x01(\x06\x12\x0f\n\x07version\x18\x05 \x01(\x05\x12\x32\n\tedited_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12\x11\n\teditor_id\x18\x07 \x01(\x06\x12\r\n\x05title\x18\x08 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\t \x01(\t\x12\x35\n\nhypothesis\x18\n \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x02\x88\x01\x01\x12\x39\n\x0etech_spec_link\x18\x0b \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x03\x88\x01\x01\x12\x10\n\x08revision\x18\x0c \x01(\x05\x12\x10\n\x08hash_key\x18\r \x01(\t\x12Q\n\tunit_type\x18\x0e \x01(\x0e\x32>.discord_protos.discord_experimentation.v1.Experiment.UnitType\x12S\n\nvariations\x18\x0f \x03(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.Variation\x12I\n\x05rules\x18\x10 \x03(\x0b\x32:.discord_protos.discord_experimentation.v1.Experiment.Rule\x12J\n\x05phase\x18\x12 \x01(\x0e\x32;.discord_protos.discord_experimentation.v1.Experiment.Phase\x12O\n\x08surfaces\x18\x13 \x03(\x0e\x32=.discord_protos.discord_experimentation.v1.Experiment.Surface\x12\x18\n\x10owning_team_name\x18\x14 \x01(\t\x12&\n\x1e\x63\x61\x63hed_notification_channel_id\x18\x15 \x01(\x06\x12\x61\n\x11\x65xposure_tracking\x18\x16 \x01(\x0e\x32\x46.discord_protos.discord_experimentation.v1.Experiment.ExposureTracking\x12]\n\x0f\x61ssignment_mode\x18\x19 \x01(\x0e\x32\x44.discord_protos.discord_experimentation.v1.Experiment.AssignmentMode\x12\x1f\n\x17\x65nable_edit_raw_json_ui\x18\x17 \x01(\x08\x12\x1c\n\x14winning_variation_id\x18\x18 \x01(\x05\x12H\n\x04type\x18\x1a \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x12\x13\n\x0bis_template\x18\x1b \x01(\x08\x1ao\n\x06\x42ucket\x12\r\n\x05start\x18\x01 \x01(\x05\x12\x0c\n\x04stop\x18\x02 \x01(\x05\x12H\n\x04type\x18\x03 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x1a\xa6\x02\n\tVariation\x12\n\n\x02id\x18\x01 \x01(\x05\x12\r\n\x05label\x18\x02 \x01(\t\x12\x19\n\x11target_allocation\x18\x03 \x01(\x05\x12M\n\x07\x62uckets\x18\x04 \x03(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.Bucket\x12H\n\x04type\x18\x05 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x12\x38\n\rconfiguration\x18\x06 \x01(\x0b\x32\x1c.google.protobuf.StringValueH\x00\x88\x01\x01\x42\x10\n\x0e_configuration\x1a\xa1\x01\n\x18PlatformVersionSpecifier\x12\r\n\x05major\x18\x01 \x01(\r\x12\x30\n\x05minor\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x00\x88\x01\x01\x12\x30\n\x05\x62uild\x18\x03 \x01(\x0b\x32\x1c.google.protobuf.UInt64ValueH\x01\x88\x01\x01\x42\x08\n\x06_minorB\x08\n\x06_build\x1a\xa0\x01\n\x19PlatformVersionRangeBound\x12\x64\n\x07version\x18\x01 \x01(\x0b\x32N.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionSpecifierH\x00\x88\x01\x01\x12\x11\n\tinclusive\x18\x02 \x01(\x08\x42\n\n\x08_version\x1a\x8c\x02\n\x14PlatformVersionRange\x12i\n\x0blower_bound\x18\x01 \x01(\x0b\x32O.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRangeBoundH\x00\x88\x01\x01\x12i\n\x0bupper_bound\x18\x02 \x01(\x0b\x32O.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRangeBoundH\x01\x88\x01\x01\x42\x0e\n\x0c_lower_boundB\x0e\n\x0c_upper_bound\x1a\x8c\x01\n\x0fPlatformVersion\x12Z\n\x06ranges\x18\x01 \x03(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionRange\x12\x1d\n\x15work_around_pyoto_bug\x18\x02 \x01(\x08\x1a\xe2\x03\n\x0e\x43lientPlatform\x12_\n\x0bios_version\x18\x01 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x00\x88\x01\x01\x12\x63\n\x0f\x61ndroid_version\x18\x02 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x01\x88\x01\x01\x12_\n\x0bweb_version\x18\x03 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x02\x88\x01\x01\x12\x62\n\x0enative_version\x18\x04 \x01(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.PlatformVersionH\x03\x88\x01\x01\x42\x0e\n\x0c_ios_versionB\x12\n\x10_android_versionB\x0e\n\x0c_web_versionB\x11\n\x0f_native_version\x1a&\n\x13SDKVersionSpecifier\x12\x0f\n\x07version\x18\x01 \x01(\x05\x1a\x96\x01\n\x14SDKVersionRangeBound\x12_\n\x07version\x18\x01 \x01(\x0b\x32I.discord_protos.discord_experimentation.v1.Experiment.SDKVersionSpecifierH\x00\x88\x01\x01\x12\x11\n\tinclusive\x18\x02 \x01(\x08\x42\n\n\x08_version\x1a\xfd\x01\n\x0fSDKVersionRange\x12\x64\n\x0blower_bound\x18\x01 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRangeBoundH\x00\x88\x01\x01\x12\x64\n\x0bupper_bound\x18\x02 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRangeBoundH\x01\x88\x01\x01\x42\x0e\n\x0c_lower_boundB\x0e\n\x0c_upper_bound\x1a\x82\x01\n\nSDKVersion\x12U\n\x06ranges\x18\x01 \x03(\x0b\x32\x45.discord_protos.discord_experimentation.v1.Experiment.SDKVersionRange\x12\x1d\n\x15work_around_pyoto_bug\x18\x02 \x01(\x08\x1a\xb5\x06\n\x15\x43lientOperatingSystem\x12Z\n\x0bios_version\x18\x01 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x00\x88\x01\x01\x12^\n\x0f\x61ndroid_version\x18\x02 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x01\x88\x01\x01\x12\\\n\rmacos_version\x18\x03 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x02\x88\x01\x01\x12^\n\x0fwindows_version\x18\x04 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x03\x88\x01\x01\x12\x62\n\x13playstation_version\x18\x05 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x04\x88\x01\x01\x12[\n\x0cxbox_version\x18\x06 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x05\x88\x01\x01\x12\\\n\rlinux_version\x18\x07 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.SDKVersionH\x06\x88\x01\x01\x42\x0e\n\x0c_ios_versionB\x12\n\x10_android_versionB\x10\n\x0e_macos_versionB\x12\n\x10_windows_versionB\x16\n\x14_playstation_versionB\x0f\n\r_xbox_versionB\x10\n\x0e_linux_version\x1a>\n\nStaffUsers\x12\x15\n\rwork_accounts\x18\x01 \x01(\x08\x12\x19\n\x11personal_accounts\x18\x02 \x01(\x08\x1a \n\x0bUserInGuild\x12\x11\n\tguild_ids\x18\x01 \x03(\x06\x1a\x1b\n\x07UserIds\x12\x10\n\x08user_ids\x18\x01 \x03(\x06\x1a#\n\x0c\x43lientLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x39\n\tISORegion\x12\x13\n\x0biso_country\x18\x01 \x01(\t\x12\x17\n\x0fiso_subdivision\x18\x02 \x01(\t\x1a;\n\x05Place\x12\x0c\n\x04\x63ity\x18\x01 \x01(\t\x12\x13\n\x0bsubdivision\x18\x02 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x03 \x01(\t\x1a\xcc\x01\n\x08Location\x12U\n\niso_region\x18\x01 \x01(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.ISORegionH\x00\x12\x0f\n\x05is_eu\x18\x02 \x01(\x08H\x00\x12L\n\x05place\x18\x03 \x01(\x0b\x32;.discord_protos.discord_experimentation.v1.Experiment.PlaceH\x00\x42\n\n\x08location\x1a\x63\n\x0e\x43lientLocation\x12Q\n\tlocations\x18\x01 \x03(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.Location\x1a\x1e\n\x08\x43lientIP\x12\x12\n\x06\x62locks\x18\x01 \x03(\tB\x02\x10\x00\x1a!\n\nUserLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x1b\n\tUserIsBot\x12\x0e\n\x06is_bot\x18\x01 \x01(\x08\x1a\xa6\x01\n\x0cUserAgeRange\x12\x38\n\rmin_age_years\x18\x01 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x00\x88\x01\x01\x12\x38\n\rmax_age_years\x18\x02 \x01(\x0b\x32\x1c.google.protobuf.UInt32ValueH\x01\x88\x01\x01\x42\x10\n\x0e_min_age_yearsB\x10\n\x0e_max_age_years\x1a\x1d\n\x0c\x46ixed64Value\x12\r\n\x05value\x18\x01 \x01(\x06\x1a\xd5\x01\n\x0bUserIDRange\x12W\n\x06min_id\x18\x01 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.Fixed64ValueH\x00\x88\x01\x01\x12W\n\x06max_id\x18\x02 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.Fixed64ValueH\x01\x88\x01\x01\x42\t\n\x07_min_idB\t\n\x07_max_id\x1a\x1b\n\x0bUserHasFlag\x12\x0c\n\x04mask\x18\x01 \x01(\x06\x1a\x37\n\x13UnitIdInRangeByHash\x12\x10\n\x08hash_key\x18\x01 \x01(\t\x12\x0e\n\x06target\x18\x02 \x01(\r\x1a\x34\n\x14\x43lientReleaseChannel\x12\x1c\n\x10release_channels\x18\x01 \x03(\tB\x02\x10\x00\x1a\x17\n\x06\x41lways\x12\r\n\x05value\x18\x01 \x01(\x08\x1a)\n\x12\x43lientSystemLocale\x12\x13\n\x07locales\x18\x01 \x03(\tB\x02\x10\x00\x1a\x42\n\x12UnitIdInExperiment\x12\x15\n\rexperiment_id\x18\x01 \x01(\x06\x12\x15\n\rvariation_ids\x18\x02 \x03(\x05\x1a\xaa\r\n\x06\x46ilter\x12^\n\x0e\x63lient_version\x18\x02 \x01(\x0b\x32\x44.discord_protos.discord_experimentation.v1.Experiment.ClientPlatformH\x00\x12`\n\tclient_os\x18\x03 \x01(\x0b\x32K.discord_protos.discord_experimentation.v1.Experiment.ClientOperatingSystemH\x00\x12Q\n\x05staff\x18\x04 \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.StaffUsersH\x00\x12Z\n\ruser_in_guild\x18\x05 \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserInGuildH\x00\x12Q\n\x08user_ids\x18\x06 \x01(\x0b\x32=.discord_protos.discord_experimentation.v1.Experiment.UserIdsH\x00\x12[\n\rclient_locale\x18\x07 \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.ClientLocaleH\x00\x12_\n\x0f\x63lient_location\x18\x08 \x01(\x0b\x32\x44.discord_protos.discord_experimentation.v1.Experiment.ClientLocationH\x00\x12S\n\tclient_ip\x18\t \x01(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.ClientIPH\x00\x12W\n\x0buser_locale\x18\n \x01(\x0b\x32@.discord_protos.discord_experimentation.v1.Experiment.UserLocaleH\x00\x12N\n\x03\x62ot\x18\x0b \x01(\x0b\x32?.discord_protos.discord_experimentation.v1.Experiment.UserIsBotH\x00\x12\\\n\x0euser_age_range\x18\x0c \x01(\x0b\x32\x42.discord_protos.discord_experimentation.v1.Experiment.UserAgeRangeH\x00\x12Z\n\ruser_id_range\x18\r \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserIDRangeH\x00\x12Z\n\ruser_has_flag\x18\x0e \x01(\x0b\x32\x41.discord_protos.discord_experimentation.v1.Experiment.UserHasFlagH\x00\x12m\n\x18unit_id_in_range_by_hash\x18\x0f \x01(\x0b\x32I.discord_protos.discord_experimentation.v1.Experiment.UnitIdInRangeByHashH\x00\x12l\n\x16\x63lient_release_channel\x18\x10 \x01(\x0b\x32J.discord_protos.discord_experimentation.v1.Experiment.ClientReleaseChannelH\x00\x12N\n\x06\x61lways\x18\x11 \x01(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.AlwaysH\x00\x12h\n\x14\x63lient_system_locale\x18\x12 \x01(\x0b\x32H.discord_protos.discord_experimentation.v1.Experiment.ClientSystemLocaleH\x00\x12i\n\x15unit_id_in_experiment\x18\x13 \x01(\x0b\x32H.discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperimentH\x00\x42\x08\n\x06\x66ilter\x1a \n\x08Override\x12\x14\n\x0cvariation_id\x18\x01 \x01(\x05\x1a\x9b\x02\n\x04Rule\x12H\n\x04type\x18\x01 \x01(\x0e\x32:.discord_protos.discord_experimentation.v1.Experiment.Type\x12M\n\x07\x66ilters\x18\x02 \x03(\x0b\x32<.discord_protos.discord_experimentation.v1.Experiment.Filter\x12U\n\x08override\x18\x03 \x01(\x0b\x32>.discord_protos.discord_experimentation.v1.Experiment.OverrideH\x00\x88\x01\x01\x12\x16\n\x0eis_sunset_rule\x18\x04 \x01(\x08\x42\x0b\n\t_override\"9\n\x08UnitType\x12\x19\n\x15UNIT_TYPE_UNSPECIFIED\x10\x00\x12\x12\n\x0eUNIT_TYPE_USER\x10\x01\"O\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bTYPE_ACTIVE\x10\x01\x12\x0f\n\x0bTYPE_UNUSED\x10\x02\x12\x0f\n\x0bTYPE_BURNED\x10\x03\"\xb7\x01\n\x05Phase\x12\x15\n\x11PHASE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bPHASE_DRAFT\x10\x01\x12\x15\n\x11PHASE_MEASUREMENT\x10\x02\x12\x1b\n\x17PHASE_MEASUREMENT_ENDED\x10\x03\x12\x15\n\x11PHASE_ROLLING_OUT\x10\x04\x12\x14\n\x10PHASE_ROLLED_OUT\x10\x05\x12\x12\n\x0ePHASE_ARCHIVED\x10\x06\x12\x11\n\rPHASE_AA_MODE\x10\x07\"|\n\x07Surface\x12\x17\n\x13SURFACE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bSURFACE_API\x10\x01\x12\x0f\n\x0bSURFACE_APP\x10\x02\x12\x1c\n\x18SURFACE_DEVELOPER_PORTAL\x10\x03\x12\x18\n\x14SURFACE_ADMIN_PORTAL\x10\x04\"Q\n\x10\x45xposureTracking\x12\x1d\n\x19\x45XPOSURE_TRACKING_ENABLED\x10\x00\x12\x1e\n\x1a\x45XPOSURE_TRACKING_DISABLED\x10\x01\"p\n\x0e\x41ssignmentMode\x12\x18\n\x14\x41SSIGNMENT_MODE_FULL\x10\x00\x12!\n\x1d\x41SSIGNMENT_MODE_FORCE_DEFAULT\x10\x01\x12!\n\x1d\x41SSIGNMENT_MODE_OVERRIDE_ONLY\x10\x02\x42\r\n\x0b_created_atB\x0c\n\n_edited_atB\r\n\x0b_hypothesisB\x11\n\x0f_tech_spec_linkb\x06proto3')
30
30
 
31
31
  _globals = globals()
32
32
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -44,87 +44,87 @@ if not _descriptor._USE_C_DESCRIPTORS:
44
44
  _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE'].fields_by_name['locales']._loaded_options = None
45
45
  _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE'].fields_by_name['locales']._serialized_options = b'\020\000'
46
46
  _globals['_EXPERIMENT']._serialized_start=156
47
- _globals['_EXPERIMENT']._serialized_end=8427
48
- _globals['_EXPERIMENT_BUCKET']._serialized_start=1266
49
- _globals['_EXPERIMENT_BUCKET']._serialized_end=1377
50
- _globals['_EXPERIMENT_VARIATION']._serialized_start=1380
51
- _globals['_EXPERIMENT_VARIATION']._serialized_end=1674
52
- _globals['_EXPERIMENT_PLATFORMVERSIONSPECIFIER']._serialized_start=1677
53
- _globals['_EXPERIMENT_PLATFORMVERSIONSPECIFIER']._serialized_end=1838
54
- _globals['_EXPERIMENT_PLATFORMVERSIONRANGEBOUND']._serialized_start=1841
55
- _globals['_EXPERIMENT_PLATFORMVERSIONRANGEBOUND']._serialized_end=2001
56
- _globals['_EXPERIMENT_PLATFORMVERSIONRANGE']._serialized_start=2004
57
- _globals['_EXPERIMENT_PLATFORMVERSIONRANGE']._serialized_end=2272
58
- _globals['_EXPERIMENT_PLATFORMVERSION']._serialized_start=2275
59
- _globals['_EXPERIMENT_PLATFORMVERSION']._serialized_end=2415
60
- _globals['_EXPERIMENT_CLIENTPLATFORM']._serialized_start=2418
61
- _globals['_EXPERIMENT_CLIENTPLATFORM']._serialized_end=2900
62
- _globals['_EXPERIMENT_SDKVERSIONSPECIFIER']._serialized_start=2902
63
- _globals['_EXPERIMENT_SDKVERSIONSPECIFIER']._serialized_end=2940
64
- _globals['_EXPERIMENT_SDKVERSIONRANGEBOUND']._serialized_start=2943
65
- _globals['_EXPERIMENT_SDKVERSIONRANGEBOUND']._serialized_end=3093
66
- _globals['_EXPERIMENT_SDKVERSIONRANGE']._serialized_start=3096
67
- _globals['_EXPERIMENT_SDKVERSIONRANGE']._serialized_end=3349
68
- _globals['_EXPERIMENT_SDKVERSION']._serialized_start=3352
69
- _globals['_EXPERIMENT_SDKVERSION']._serialized_end=3482
70
- _globals['_EXPERIMENT_CLIENTOPERATINGSYSTEM']._serialized_start=3485
71
- _globals['_EXPERIMENT_CLIENTOPERATINGSYSTEM']._serialized_end=4306
72
- _globals['_EXPERIMENT_STAFFUSERS']._serialized_start=4308
73
- _globals['_EXPERIMENT_STAFFUSERS']._serialized_end=4370
74
- _globals['_EXPERIMENT_USERINGUILD']._serialized_start=4372
75
- _globals['_EXPERIMENT_USERINGUILD']._serialized_end=4404
76
- _globals['_EXPERIMENT_USERIDS']._serialized_start=4406
77
- _globals['_EXPERIMENT_USERIDS']._serialized_end=4433
78
- _globals['_EXPERIMENT_CLIENTLOCALE']._serialized_start=4435
79
- _globals['_EXPERIMENT_CLIENTLOCALE']._serialized_end=4470
80
- _globals['_EXPERIMENT_ISOREGION']._serialized_start=4472
81
- _globals['_EXPERIMENT_ISOREGION']._serialized_end=4529
82
- _globals['_EXPERIMENT_PLACE']._serialized_start=4531
83
- _globals['_EXPERIMENT_PLACE']._serialized_end=4590
84
- _globals['_EXPERIMENT_LOCATION']._serialized_start=4593
85
- _globals['_EXPERIMENT_LOCATION']._serialized_end=4797
86
- _globals['_EXPERIMENT_CLIENTLOCATION']._serialized_start=4799
87
- _globals['_EXPERIMENT_CLIENTLOCATION']._serialized_end=4898
88
- _globals['_EXPERIMENT_CLIENTIP']._serialized_start=4900
89
- _globals['_EXPERIMENT_CLIENTIP']._serialized_end=4930
90
- _globals['_EXPERIMENT_USERLOCALE']._serialized_start=4932
91
- _globals['_EXPERIMENT_USERLOCALE']._serialized_end=4965
92
- _globals['_EXPERIMENT_USERISBOT']._serialized_start=4967
93
- _globals['_EXPERIMENT_USERISBOT']._serialized_end=4994
94
- _globals['_EXPERIMENT_USERAGERANGE']._serialized_start=4997
95
- _globals['_EXPERIMENT_USERAGERANGE']._serialized_end=5163
96
- _globals['_EXPERIMENT_FIXED64VALUE']._serialized_start=5165
97
- _globals['_EXPERIMENT_FIXED64VALUE']._serialized_end=5194
98
- _globals['_EXPERIMENT_USERIDRANGE']._serialized_start=5197
99
- _globals['_EXPERIMENT_USERIDRANGE']._serialized_end=5410
100
- _globals['_EXPERIMENT_USERHASFLAG']._serialized_start=5412
101
- _globals['_EXPERIMENT_USERHASFLAG']._serialized_end=5439
102
- _globals['_EXPERIMENT_UNITIDINRANGEBYHASH']._serialized_start=5441
103
- _globals['_EXPERIMENT_UNITIDINRANGEBYHASH']._serialized_end=5496
104
- _globals['_EXPERIMENT_CLIENTRELEASECHANNEL']._serialized_start=5498
105
- _globals['_EXPERIMENT_CLIENTRELEASECHANNEL']._serialized_end=5550
106
- _globals['_EXPERIMENT_ALWAYS']._serialized_start=5552
107
- _globals['_EXPERIMENT_ALWAYS']._serialized_end=5575
108
- _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE']._serialized_start=5577
109
- _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE']._serialized_end=5618
110
- _globals['_EXPERIMENT_UNITIDINEXPERIMENT']._serialized_start=5620
111
- _globals['_EXPERIMENT_UNITIDINEXPERIMENT']._serialized_end=5686
112
- _globals['_EXPERIMENT_FILTER']._serialized_start=5689
113
- _globals['_EXPERIMENT_FILTER']._serialized_end=7395
114
- _globals['_EXPERIMENT_OVERRIDE']._serialized_start=7397
115
- _globals['_EXPERIMENT_OVERRIDE']._serialized_end=7429
116
- _globals['_EXPERIMENT_RULE']._serialized_start=7432
117
- _globals['_EXPERIMENT_RULE']._serialized_end=7715
118
- _globals['_EXPERIMENT_UNITTYPE']._serialized_start=7717
119
- _globals['_EXPERIMENT_UNITTYPE']._serialized_end=7774
120
- _globals['_EXPERIMENT_TYPE']._serialized_start=7776
121
- _globals['_EXPERIMENT_TYPE']._serialized_end=7855
122
- _globals['_EXPERIMENT_PHASE']._serialized_start=7858
123
- _globals['_EXPERIMENT_PHASE']._serialized_end=8041
124
- _globals['_EXPERIMENT_SURFACE']._serialized_start=8043
125
- _globals['_EXPERIMENT_SURFACE']._serialized_end=8167
126
- _globals['_EXPERIMENT_EXPOSURETRACKING']._serialized_start=8169
127
- _globals['_EXPERIMENT_EXPOSURETRACKING']._serialized_end=8250
128
- _globals['_EXPERIMENT_ASSIGNMENTMODE']._serialized_start=8252
129
- _globals['_EXPERIMENT_ASSIGNMENTMODE']._serialized_end=8364
47
+ _globals['_EXPERIMENT']._serialized_end=8522
48
+ _globals['_EXPERIMENT_BUCKET']._serialized_start=1361
49
+ _globals['_EXPERIMENT_BUCKET']._serialized_end=1472
50
+ _globals['_EXPERIMENT_VARIATION']._serialized_start=1475
51
+ _globals['_EXPERIMENT_VARIATION']._serialized_end=1769
52
+ _globals['_EXPERIMENT_PLATFORMVERSIONSPECIFIER']._serialized_start=1772
53
+ _globals['_EXPERIMENT_PLATFORMVERSIONSPECIFIER']._serialized_end=1933
54
+ _globals['_EXPERIMENT_PLATFORMVERSIONRANGEBOUND']._serialized_start=1936
55
+ _globals['_EXPERIMENT_PLATFORMVERSIONRANGEBOUND']._serialized_end=2096
56
+ _globals['_EXPERIMENT_PLATFORMVERSIONRANGE']._serialized_start=2099
57
+ _globals['_EXPERIMENT_PLATFORMVERSIONRANGE']._serialized_end=2367
58
+ _globals['_EXPERIMENT_PLATFORMVERSION']._serialized_start=2370
59
+ _globals['_EXPERIMENT_PLATFORMVERSION']._serialized_end=2510
60
+ _globals['_EXPERIMENT_CLIENTPLATFORM']._serialized_start=2513
61
+ _globals['_EXPERIMENT_CLIENTPLATFORM']._serialized_end=2995
62
+ _globals['_EXPERIMENT_SDKVERSIONSPECIFIER']._serialized_start=2997
63
+ _globals['_EXPERIMENT_SDKVERSIONSPECIFIER']._serialized_end=3035
64
+ _globals['_EXPERIMENT_SDKVERSIONRANGEBOUND']._serialized_start=3038
65
+ _globals['_EXPERIMENT_SDKVERSIONRANGEBOUND']._serialized_end=3188
66
+ _globals['_EXPERIMENT_SDKVERSIONRANGE']._serialized_start=3191
67
+ _globals['_EXPERIMENT_SDKVERSIONRANGE']._serialized_end=3444
68
+ _globals['_EXPERIMENT_SDKVERSION']._serialized_start=3447
69
+ _globals['_EXPERIMENT_SDKVERSION']._serialized_end=3577
70
+ _globals['_EXPERIMENT_CLIENTOPERATINGSYSTEM']._serialized_start=3580
71
+ _globals['_EXPERIMENT_CLIENTOPERATINGSYSTEM']._serialized_end=4401
72
+ _globals['_EXPERIMENT_STAFFUSERS']._serialized_start=4403
73
+ _globals['_EXPERIMENT_STAFFUSERS']._serialized_end=4465
74
+ _globals['_EXPERIMENT_USERINGUILD']._serialized_start=4467
75
+ _globals['_EXPERIMENT_USERINGUILD']._serialized_end=4499
76
+ _globals['_EXPERIMENT_USERIDS']._serialized_start=4501
77
+ _globals['_EXPERIMENT_USERIDS']._serialized_end=4528
78
+ _globals['_EXPERIMENT_CLIENTLOCALE']._serialized_start=4530
79
+ _globals['_EXPERIMENT_CLIENTLOCALE']._serialized_end=4565
80
+ _globals['_EXPERIMENT_ISOREGION']._serialized_start=4567
81
+ _globals['_EXPERIMENT_ISOREGION']._serialized_end=4624
82
+ _globals['_EXPERIMENT_PLACE']._serialized_start=4626
83
+ _globals['_EXPERIMENT_PLACE']._serialized_end=4685
84
+ _globals['_EXPERIMENT_LOCATION']._serialized_start=4688
85
+ _globals['_EXPERIMENT_LOCATION']._serialized_end=4892
86
+ _globals['_EXPERIMENT_CLIENTLOCATION']._serialized_start=4894
87
+ _globals['_EXPERIMENT_CLIENTLOCATION']._serialized_end=4993
88
+ _globals['_EXPERIMENT_CLIENTIP']._serialized_start=4995
89
+ _globals['_EXPERIMENT_CLIENTIP']._serialized_end=5025
90
+ _globals['_EXPERIMENT_USERLOCALE']._serialized_start=5027
91
+ _globals['_EXPERIMENT_USERLOCALE']._serialized_end=5060
92
+ _globals['_EXPERIMENT_USERISBOT']._serialized_start=5062
93
+ _globals['_EXPERIMENT_USERISBOT']._serialized_end=5089
94
+ _globals['_EXPERIMENT_USERAGERANGE']._serialized_start=5092
95
+ _globals['_EXPERIMENT_USERAGERANGE']._serialized_end=5258
96
+ _globals['_EXPERIMENT_FIXED64VALUE']._serialized_start=5260
97
+ _globals['_EXPERIMENT_FIXED64VALUE']._serialized_end=5289
98
+ _globals['_EXPERIMENT_USERIDRANGE']._serialized_start=5292
99
+ _globals['_EXPERIMENT_USERIDRANGE']._serialized_end=5505
100
+ _globals['_EXPERIMENT_USERHASFLAG']._serialized_start=5507
101
+ _globals['_EXPERIMENT_USERHASFLAG']._serialized_end=5534
102
+ _globals['_EXPERIMENT_UNITIDINRANGEBYHASH']._serialized_start=5536
103
+ _globals['_EXPERIMENT_UNITIDINRANGEBYHASH']._serialized_end=5591
104
+ _globals['_EXPERIMENT_CLIENTRELEASECHANNEL']._serialized_start=5593
105
+ _globals['_EXPERIMENT_CLIENTRELEASECHANNEL']._serialized_end=5645
106
+ _globals['_EXPERIMENT_ALWAYS']._serialized_start=5647
107
+ _globals['_EXPERIMENT_ALWAYS']._serialized_end=5670
108
+ _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE']._serialized_start=5672
109
+ _globals['_EXPERIMENT_CLIENTSYSTEMLOCALE']._serialized_end=5713
110
+ _globals['_EXPERIMENT_UNITIDINEXPERIMENT']._serialized_start=5715
111
+ _globals['_EXPERIMENT_UNITIDINEXPERIMENT']._serialized_end=5781
112
+ _globals['_EXPERIMENT_FILTER']._serialized_start=5784
113
+ _globals['_EXPERIMENT_FILTER']._serialized_end=7490
114
+ _globals['_EXPERIMENT_OVERRIDE']._serialized_start=7492
115
+ _globals['_EXPERIMENT_OVERRIDE']._serialized_end=7524
116
+ _globals['_EXPERIMENT_RULE']._serialized_start=7527
117
+ _globals['_EXPERIMENT_RULE']._serialized_end=7810
118
+ _globals['_EXPERIMENT_UNITTYPE']._serialized_start=7812
119
+ _globals['_EXPERIMENT_UNITTYPE']._serialized_end=7869
120
+ _globals['_EXPERIMENT_TYPE']._serialized_start=7871
121
+ _globals['_EXPERIMENT_TYPE']._serialized_end=7950
122
+ _globals['_EXPERIMENT_PHASE']._serialized_start=7953
123
+ _globals['_EXPERIMENT_PHASE']._serialized_end=8136
124
+ _globals['_EXPERIMENT_SURFACE']._serialized_start=8138
125
+ _globals['_EXPERIMENT_SURFACE']._serialized_end=8262
126
+ _globals['_EXPERIMENT_EXPOSURETRACKING']._serialized_start=8264
127
+ _globals['_EXPERIMENT_EXPOSURETRACKING']._serialized_end=8345
128
+ _globals['_EXPERIMENT_ASSIGNMENTMODE']._serialized_start=8347
129
+ _globals['_EXPERIMENT_ASSIGNMENTMODE']._serialized_end=8459
130
130
  # @@protoc_insertion_point(module_scope)
@@ -532,6 +532,19 @@ export interface Experiment_ClientSystemLocale {
532
532
  */
533
533
  locales: string[];
534
534
  }
535
+ /**
536
+ * @generated from protobuf message discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment
537
+ */
538
+ export interface Experiment_UnitIdInExperiment {
539
+ /**
540
+ * @generated from protobuf field: fixed64 experiment_id = 1
541
+ */
542
+ experimentId: bigint;
543
+ /**
544
+ * @generated from protobuf field: repeated int32 variation_ids = 2
545
+ */
546
+ variationIds: number[];
547
+ }
535
548
  /**
536
549
  * @generated from protobuf message discord_protos.discord_experimentation.v1.Experiment.Filter
537
550
  */
@@ -641,6 +654,12 @@ export interface Experiment_Filter {
641
654
  * @generated from protobuf field: discord_protos.discord_experimentation.v1.Experiment.ClientSystemLocale client_system_locale = 18
642
655
  */
643
656
  clientSystemLocale: Experiment_ClientSystemLocale;
657
+ } | {
658
+ oneofKind: "unitIdInExperiment";
659
+ /**
660
+ * @generated from protobuf field: discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment unit_id_in_experiment = 19
661
+ */
662
+ unitIdInExperiment: Experiment_UnitIdInExperiment;
644
663
  } | {
645
664
  oneofKind: undefined;
646
665
  };
@@ -1121,6 +1140,16 @@ declare class Experiment_ClientSystemLocale$Type extends MessageType<Experiment_
1121
1140
  * @generated MessageType for protobuf message discord_protos.discord_experimentation.v1.Experiment.ClientSystemLocale
1122
1141
  */
1123
1142
  export declare const Experiment_ClientSystemLocale: Experiment_ClientSystemLocale$Type;
1143
+ declare class Experiment_UnitIdInExperiment$Type extends MessageType<Experiment_UnitIdInExperiment> {
1144
+ constructor();
1145
+ create(value?: PartialMessage<Experiment_UnitIdInExperiment>): Experiment_UnitIdInExperiment;
1146
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Experiment_UnitIdInExperiment): Experiment_UnitIdInExperiment;
1147
+ internalBinaryWrite(message: Experiment_UnitIdInExperiment, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1148
+ }
1149
+ /**
1150
+ * @generated MessageType for protobuf message discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment
1151
+ */
1152
+ export declare const Experiment_UnitIdInExperiment: Experiment_UnitIdInExperiment$Type;
1124
1153
  declare class Experiment_Filter$Type extends MessageType<Experiment_Filter> {
1125
1154
  constructor();
1126
1155
  create(value?: PartialMessage<Experiment_Filter>): Experiment_Filter;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Experiment_Rule = exports.Experiment_Override = exports.Experiment_Filter = exports.Experiment_ClientSystemLocale = exports.Experiment_Always = exports.Experiment_ClientReleaseChannel = exports.Experiment_UnitIdInRangeByHash = exports.Experiment_UserHasFlag = exports.Experiment_UserIDRange = exports.Experiment_Fixed64Value = exports.Experiment_UserAgeRange = exports.Experiment_UserIsBot = exports.Experiment_UserLocale = exports.Experiment_ClientIP = exports.Experiment_ClientLocation = exports.Experiment_Location = exports.Experiment_Place = exports.Experiment_ISORegion = exports.Experiment_ClientLocale = exports.Experiment_UserIds = exports.Experiment_UserInGuild = exports.Experiment_StaffUsers = exports.Experiment_ClientOperatingSystem = exports.Experiment_SDKVersion = exports.Experiment_SDKVersionRange = exports.Experiment_SDKVersionRangeBound = exports.Experiment_SDKVersionSpecifier = exports.Experiment_ClientPlatform = exports.Experiment_PlatformVersion = exports.Experiment_PlatformVersionRange = exports.Experiment_PlatformVersionRangeBound = exports.Experiment_PlatformVersionSpecifier = exports.Experiment_Variation = exports.Experiment_Bucket = exports.Experiment = exports.Experiment_AssignmentMode = exports.Experiment_ExposureTracking = exports.Experiment_Surface = exports.Experiment_Phase = exports.Experiment_Type = exports.Experiment_UnitType = void 0;
3
+ exports.Experiment_Rule = exports.Experiment_Override = exports.Experiment_Filter = exports.Experiment_UnitIdInExperiment = exports.Experiment_ClientSystemLocale = exports.Experiment_Always = exports.Experiment_ClientReleaseChannel = exports.Experiment_UnitIdInRangeByHash = exports.Experiment_UserHasFlag = exports.Experiment_UserIDRange = exports.Experiment_Fixed64Value = exports.Experiment_UserAgeRange = exports.Experiment_UserIsBot = exports.Experiment_UserLocale = exports.Experiment_ClientIP = exports.Experiment_ClientLocation = exports.Experiment_Location = exports.Experiment_Place = exports.Experiment_ISORegion = exports.Experiment_ClientLocale = exports.Experiment_UserIds = exports.Experiment_UserInGuild = exports.Experiment_StaffUsers = exports.Experiment_ClientOperatingSystem = exports.Experiment_SDKVersion = exports.Experiment_SDKVersionRange = exports.Experiment_SDKVersionRangeBound = exports.Experiment_SDKVersionSpecifier = exports.Experiment_ClientPlatform = exports.Experiment_PlatformVersion = exports.Experiment_PlatformVersionRange = exports.Experiment_PlatformVersionRangeBound = exports.Experiment_PlatformVersionSpecifier = exports.Experiment_Variation = exports.Experiment_Bucket = exports.Experiment = exports.Experiment_AssignmentMode = exports.Experiment_ExposureTracking = exports.Experiment_Surface = exports.Experiment_Phase = exports.Experiment_Type = exports.Experiment_UnitType = void 0;
4
4
  const runtime_1 = require("@protobuf-ts/runtime");
5
5
  const runtime_2 = require("@protobuf-ts/runtime");
6
6
  const runtime_3 = require("@protobuf-ts/runtime");
@@ -2097,6 +2097,69 @@ class Experiment_ClientSystemLocale$Type extends runtime_4.MessageType {
2097
2097
  */
2098
2098
  exports.Experiment_ClientSystemLocale = new Experiment_ClientSystemLocale$Type();
2099
2099
  // @generated message type with reflection information, may provide speed optimized methods
2100
+ class Experiment_UnitIdInExperiment$Type extends runtime_4.MessageType {
2101
+ constructor() {
2102
+ super("discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment", [
2103
+ { no: 1, name: "experiment_id", kind: "scalar", T: 6 /*ScalarType.FIXED64*/, L: 0 /*LongType.BIGINT*/ },
2104
+ { no: 2, name: "variation_ids", kind: "scalar", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/ }
2105
+ ]);
2106
+ }
2107
+ create(value) {
2108
+ const message = globalThis.Object.create((this.messagePrototype));
2109
+ message.experimentId = 0n;
2110
+ message.variationIds = [];
2111
+ if (value !== undefined)
2112
+ (0, runtime_3.reflectionMergePartial)(this, message, value);
2113
+ return message;
2114
+ }
2115
+ internalBinaryRead(reader, length, options, target) {
2116
+ let message = target ?? this.create(), end = reader.pos + length;
2117
+ while (reader.pos < end) {
2118
+ let [fieldNo, wireType] = reader.tag();
2119
+ switch (fieldNo) {
2120
+ case /* fixed64 experiment_id */ 1:
2121
+ message.experimentId = reader.fixed64().toBigInt();
2122
+ break;
2123
+ case /* repeated int32 variation_ids */ 2:
2124
+ if (wireType === runtime_2.WireType.LengthDelimited)
2125
+ for (let e = reader.int32() + reader.pos; reader.pos < e;)
2126
+ message.variationIds.push(reader.int32());
2127
+ else
2128
+ message.variationIds.push(reader.int32());
2129
+ break;
2130
+ default:
2131
+ let u = options.readUnknownField;
2132
+ if (u === "throw")
2133
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
2134
+ let d = reader.skip(wireType);
2135
+ if (u !== false)
2136
+ (u === true ? runtime_1.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
2137
+ }
2138
+ }
2139
+ return message;
2140
+ }
2141
+ internalBinaryWrite(message, writer, options) {
2142
+ /* fixed64 experiment_id = 1; */
2143
+ if (message.experimentId !== 0n)
2144
+ writer.tag(1, runtime_2.WireType.Bit64).fixed64(message.experimentId);
2145
+ /* repeated int32 variation_ids = 2; */
2146
+ if (message.variationIds.length) {
2147
+ writer.tag(2, runtime_2.WireType.LengthDelimited).fork();
2148
+ for (let i = 0; i < message.variationIds.length; i++)
2149
+ writer.int32(message.variationIds[i]);
2150
+ writer.join();
2151
+ }
2152
+ let u = options.writeUnknownFields;
2153
+ if (u !== false)
2154
+ (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
2155
+ return writer;
2156
+ }
2157
+ }
2158
+ /**
2159
+ * @generated MessageType for protobuf message discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment
2160
+ */
2161
+ exports.Experiment_UnitIdInExperiment = new Experiment_UnitIdInExperiment$Type();
2162
+ // @generated message type with reflection information, may provide speed optimized methods
2100
2163
  class Experiment_Filter$Type extends runtime_4.MessageType {
2101
2164
  constructor() {
2102
2165
  super("discord_protos.discord_experimentation.v1.Experiment.Filter", [
@@ -2116,7 +2179,8 @@ class Experiment_Filter$Type extends runtime_4.MessageType {
2116
2179
  { no: 15, name: "unit_id_in_range_by_hash", kind: "message", oneof: "filter", T: () => exports.Experiment_UnitIdInRangeByHash },
2117
2180
  { no: 16, name: "client_release_channel", kind: "message", oneof: "filter", T: () => exports.Experiment_ClientReleaseChannel },
2118
2181
  { no: 17, name: "always", kind: "message", oneof: "filter", T: () => exports.Experiment_Always },
2119
- { no: 18, name: "client_system_locale", kind: "message", oneof: "filter", T: () => exports.Experiment_ClientSystemLocale }
2182
+ { no: 18, name: "client_system_locale", kind: "message", oneof: "filter", T: () => exports.Experiment_ClientSystemLocale },
2183
+ { no: 19, name: "unit_id_in_experiment", kind: "message", oneof: "filter", T: () => exports.Experiment_UnitIdInExperiment }
2120
2184
  ]);
2121
2185
  }
2122
2186
  create(value) {
@@ -2233,6 +2297,12 @@ class Experiment_Filter$Type extends runtime_4.MessageType {
2233
2297
  clientSystemLocale: exports.Experiment_ClientSystemLocale.internalBinaryRead(reader, reader.uint32(), options, message.filter.clientSystemLocale)
2234
2298
  };
2235
2299
  break;
2300
+ case /* discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment unit_id_in_experiment */ 19:
2301
+ message.filter = {
2302
+ oneofKind: "unitIdInExperiment",
2303
+ unitIdInExperiment: exports.Experiment_UnitIdInExperiment.internalBinaryRead(reader, reader.uint32(), options, message.filter.unitIdInExperiment)
2304
+ };
2305
+ break;
2236
2306
  default:
2237
2307
  let u = options.readUnknownField;
2238
2308
  if (u === "throw")
@@ -2296,6 +2366,9 @@ class Experiment_Filter$Type extends runtime_4.MessageType {
2296
2366
  /* discord_protos.discord_experimentation.v1.Experiment.ClientSystemLocale client_system_locale = 18; */
2297
2367
  if (message.filter.oneofKind === "clientSystemLocale")
2298
2368
  exports.Experiment_ClientSystemLocale.internalBinaryWrite(message.filter.clientSystemLocale, writer.tag(18, runtime_2.WireType.LengthDelimited).fork(), options).join();
2369
+ /* discord_protos.discord_experimentation.v1.Experiment.UnitIdInExperiment unit_id_in_experiment = 19; */
2370
+ if (message.filter.oneofKind === "unitIdInExperiment")
2371
+ exports.Experiment_UnitIdInExperiment.internalBinaryWrite(message.filter.unitIdInExperiment, writer.tag(19, runtime_2.WireType.LengthDelimited).fork(), options).join();
2299
2372
  let u = options.writeUnknownFields;
2300
2373
  if (u !== false)
2301
2374
  (u == true ? runtime_1.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "discord-protos",
3
- "version": "1.2.61",
3
+ "version": "1.2.62",
4
4
  "description": "A parser for Discord's protobufs",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",