Skip to main content

steam_protos/
enums.rs

1//! Steam protobuf enums used in authentication and player services
2//!
3//! These enums follow the Steam protobuf naming convention with K prefix.
4
5/// Platform type for authentication tokens
6#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
7#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8#[repr(i32)]
9pub enum EAuthTokenPlatformType {
10    #[prost(name = "k_EAuthTokenPlatformType_Unknown")]
11    KEAuthTokenPlatformTypeUnknown = 0,
12    #[prost(name = "k_EAuthTokenPlatformType_SteamClient")]
13    KEAuthTokenPlatformTypeSteamClient = 1,
14    #[prost(name = "k_EAuthTokenPlatformType_WebBrowser")]
15    KEAuthTokenPlatformTypeWebBrowser = 2,
16    #[prost(name = "k_EAuthTokenPlatformType_MobileApp")]
17    KEAuthTokenPlatformTypeMobileApp = 3,
18}
19
20/// Guard type for authentication sessions
21#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
22#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
23#[repr(i32)]
24pub enum EAuthSessionGuardType {
25    #[prost(name = "k_EAuthSessionGuardType_Unknown")]
26    KEAuthSessionGuardTypeUnknown = 0,
27    #[prost(name = "k_EAuthSessionGuardType_None")]
28    KEAuthSessionGuardTypeNone = 1,
29    #[prost(name = "k_EAuthSessionGuardType_EmailCode")]
30    KEAuthSessionGuardTypeEmailCode = 2,
31    #[prost(name = "k_EAuthSessionGuardType_DeviceCode")]
32    KEAuthSessionGuardTypeDeviceCode = 3,
33    #[prost(name = "k_EAuthSessionGuardType_DeviceConfirmation")]
34    KEAuthSessionGuardTypeDeviceConfirmation = 4,
35    #[prost(name = "k_EAuthSessionGuardType_EmailConfirmation")]
36    KEAuthSessionGuardTypeEmailConfirmation = 5,
37    #[prost(name = "k_EAuthSessionGuardType_MachineToken")]
38    KEAuthSessionGuardTypeMachineToken = 6,
39    #[prost(name = "k_EAuthSessionGuardType_LegacyMachineAuth")]
40    KEAuthSessionGuardTypeLegacyMachineAuth = 7,
41}
42
43/// Session persistence type
44#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
45#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
46#[repr(i32)]
47pub enum ESessionPersistence {
48    #[prost(name = "k_ESessionPersistence_Invalid")]
49    KESessionPersistenceInvalid = -1,
50    #[prost(name = "k_ESessionPersistence_Ephemeral")]
51    KESessionPersistenceEphemeral = 0,
52    #[prost(name = "k_ESessionPersistence_Persistent")]
53    KESessionPersistencePersistent = 1,
54}
55
56/// Token renewal type
57#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
58#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
59#[repr(i32)]
60pub enum ETokenRenewalType {
61    #[prost(name = "k_ETokenRenewalType_None")]
62    KETokenRenewalTypeNone = 0,
63    #[prost(name = "k_ETokenRenewalType_Allow")]
64    KETokenRenewalTypeAllow = 1,
65}
66
67/// Security history for authentication sessions
68#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
69#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
70#[repr(i32)]
71pub enum EAuthSessionSecurityHistory {
72    #[prost(name = "k_EAuthSessionSecurityHistory_Invalid")]
73    KEAuthSessionSecurityHistoryInvalid = 0,
74    #[prost(name = "k_EAuthSessionSecurityHistory_UsedPreviously")]
75    KEAuthSessionSecurityHistoryUsedPreviously = 1,
76    #[prost(name = "k_EAuthSessionSecurityHistory_NoPriorHistory")]
77    KEAuthSessionSecurityHistoryNoPriorHistory = 2,
78}
79
80/// Notification setting preference
81#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
82#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
83#[repr(i32)]
84pub enum ENotificationSetting {
85    KENotificationSettingNotifyUseDefault = 0,
86    KENotificationSettingAlways = 1,
87    KENotificationSettingNever = 2,
88}
89
90/// Steam notification types
91#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
92#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
93#[repr(i32)]
94pub enum ESteamNotificationType {
95    Invalid = 0,
96    Test = 1,
97    Gift = 2,
98    Comment = 3,
99    Item = 4,
100    FriendInvite = 5,
101    MajorSale = 6,
102    PreloadAvailable = 7,
103    Wishlist = 8,
104    TradeOffer = 9,
105    General = 10,
106    HelpRequest = 11,
107    AsyncGame = 12,
108    ChatMsg = 13,
109    ModeratorMsg = 14,
110    ParentalFeatureAccessRequest = 15,
111    FamilyInvite = 16,
112    FamilyPurchaseRequest = 17,
113    ParentalPlaytimeRequest = 18,
114    FamilyPurchaseRequestResponse = 19,
115    ParentalFeatureAccessResponse = 20,
116    ParentalPlaytimeResponse = 21,
117    RequestedGameAdded = 22,
118    SendToPhone = 23,
119    ClipDownloaded = 24,
120    TwoFaPrompt = 25,
121    MobileConfirmation = 26,
122    PartnerEvent = 27,
123    PlaytestInvite = 28,
124    TradeReversal = 29,
125}
126
127/// App type for authentication tokens
128#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
129#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
130#[repr(i32)]
131pub enum EAuthTokenAppType {
132    KEAuthTokenAppTypeUnknown = 0,
133    KEAuthTokenAppTypeMobileSteamApp = 1,
134    KEAuthTokenAppTypeMobileChatApp = 2,
135}
136
137/// Authentication type for sessions
138#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
139#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
140#[repr(i32)]
141pub enum EAuthenticationType {
142    #[prost(name = "k_EAuthenticationType_Unknown")]
143    KEAuthenticationTypeUnknown = 0,
144    #[prost(name = "k_EAuthenticationType_Password")]
145    KEAuthenticationTypePassword = 1,
146    #[prost(name = "k_EAuthenticationType_QR")]
147    KEAuthenticationTypeQR = 2,
148    #[prost(name = "k_EAuthenticationType_AccountCreation")]
149    KEAuthenticationTypeAccountCreation = 3,
150    #[prost(name = "k_EAuthenticationType_GuestAccount")]
151    KEAuthenticationTypeGuestAccount = 4,
152}
153
154/// State of an authentication token
155#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
156#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
157#[repr(i32)]
158pub enum EAuthTokenState {
159    #[prost(name = "k_EAuthTokenState_Invalid")]
160    KEAuthTokenStateInvalid = 0,
161    #[prost(name = "k_EAuthTokenState_New")]
162    KEAuthTokenStateNew = 1,
163    #[prost(name = "k_EAuthTokenState_Confirmed")]
164    KEAuthTokenStateConfirmed = 2,
165    #[prost(name = "k_EAuthTokenState_Issued")]
166    KEAuthTokenStateIssued = 3,
167    #[prost(name = "k_EAuthTokenState_Denied")]
168    KEAuthTokenStateDenied = 4,
169    #[prost(name = "k_EAuthTokenState_LoggedOut")]
170    KEAuthTokenStateLoggedOut = 5,
171    #[prost(name = "k_EAuthTokenState_Consumed")]
172    KEAuthTokenStateConsumed = 6,
173    #[prost(name = "k_EAuthTokenState_Revoked")]
174    KEAuthTokenStateRevoked = 99,
175}
176
177/// Action to take when revoking an authentication token
178#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, prost::Enumeration)]
179#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
180#[repr(i32)]
181pub enum EAuthTokenRevokeAction {
182    #[prost(name = "k_EAuthTokenRevokeLogout")]
183    Logout = 0,
184    #[prost(name = "k_EAuthTokenRevokePermanent")]
185    Permanent = 1,
186    #[prost(name = "k_EAuthTokenRevokeReplaced")]
187    Replaced = 2,
188    #[prost(name = "k_EAuthTokenRevokeSupport")]
189    Support = 3,
190    #[prost(name = "k_EAuthTokenRevokeConsume")]
191    Consume = 4,
192    #[prost(name = "k_EAuthTokenRevokeNonRememberedLogout")]
193    NonRememberedLogout = 5,
194    #[prost(name = "k_EAuthTokenRevokeNonRememberedPermanent")]
195    NonRememberedPermanent = 6,
196    #[prost(name = "k_EAuthTokenRevokeAutomatic")]
197    Automatic = 7,
198}