@decky/ui 4.9.1 → 4.10.0
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.
- package/dist/components/SidebarNavigation.d.ts +1 -1
- package/dist/globals/SteamClient.d.ts +1 -304
- package/dist/globals/steam-client/App.d.ts +880 -0
- package/dist/globals/steam-client/App.js +320 -0
- package/dist/globals/steam-client/Auth.d.ts +57 -0
- package/dist/globals/steam-client/Auth.js +19 -0
- package/dist/globals/steam-client/Broadcast.d.ts +22 -0
- package/dist/globals/steam-client/Broadcast.js +1 -0
- package/dist/globals/steam-client/Browser.d.ts +45 -0
- package/dist/globals/steam-client/Browser.js +17 -0
- package/dist/globals/steam-client/ClientNotifications.d.ts +20 -0
- package/dist/globals/steam-client/ClientNotifications.js +6 -0
- package/dist/globals/steam-client/Cloud.d.ts +4 -0
- package/dist/globals/steam-client/Cloud.js +1 -0
- package/dist/globals/steam-client/CommunityItems.d.ts +5 -0
- package/dist/globals/steam-client/CommunityItems.js +1 -0
- package/dist/globals/steam-client/Console.d.ts +11 -0
- package/dist/globals/steam-client/Console.js +1 -0
- package/dist/globals/steam-client/Customization.d.ts +8 -0
- package/dist/globals/steam-client/Customization.js +1 -0
- package/dist/globals/steam-client/Downloads.d.ts +63 -0
- package/dist/globals/steam-client/Downloads.js +1 -0
- package/dist/globals/steam-client/FamilySharing.d.ts +20 -0
- package/dist/globals/steam-client/FamilySharing.js +1 -0
- package/dist/globals/steam-client/FriendSettings.d.ts +49 -0
- package/dist/globals/steam-client/FriendSettings.js +6 -0
- package/dist/globals/steam-client/Friends.d.ts +27 -0
- package/dist/globals/steam-client/Friends.js +1 -0
- package/dist/globals/steam-client/GameNotes.d.ts +41 -0
- package/dist/globals/steam-client/GameNotes.js +1 -0
- package/dist/globals/steam-client/GameRecording.d.ts +20 -0
- package/dist/globals/steam-client/GameRecording.js +1 -0
- package/dist/globals/steam-client/GameSessions.d.ts +26 -0
- package/dist/globals/steam-client/GameSessions.js +1 -0
- package/dist/globals/steam-client/Input.d.ts +421 -0
- package/dist/globals/steam-client/Input.js +170 -0
- package/dist/globals/steam-client/InstallFolder.d.ts +57 -0
- package/dist/globals/steam-client/InstallFolder.js +1 -0
- package/dist/globals/steam-client/Installs.d.ts +60 -0
- package/dist/globals/steam-client/Installs.js +20 -0
- package/dist/globals/steam-client/Messaging.d.ts +5 -0
- package/dist/globals/steam-client/Messaging.js +1 -0
- package/dist/globals/steam-client/Music.d.ts +36 -0
- package/dist/globals/steam-client/Music.js +14 -0
- package/dist/globals/steam-client/Notifications.d.ts +260 -0
- package/dist/globals/steam-client/Notifications.js +73 -0
- package/dist/globals/steam-client/OpenVR.d.ts +85 -0
- package/dist/globals/steam-client/OpenVR.js +16 -0
- package/dist/globals/steam-client/Overlay.d.ts +58 -0
- package/dist/globals/steam-client/Overlay.js +18 -0
- package/dist/globals/steam-client/Parental.d.ts +69 -0
- package/dist/globals/steam-client/Parental.js +19 -0
- package/dist/globals/steam-client/RemotePlay.d.ts +225 -0
- package/dist/globals/steam-client/RemotePlay.js +71 -0
- package/dist/globals/steam-client/Screenshots.d.ts +47 -0
- package/dist/globals/steam-client/Screenshots.js +8 -0
- package/dist/globals/steam-client/ServerBrowser.d.ts +117 -0
- package/dist/globals/steam-client/ServerBrowser.js +26 -0
- package/dist/globals/steam-client/Settings.d.ts +398 -0
- package/dist/globals/steam-client/Settings.js +96 -0
- package/dist/globals/steam-client/SharedConnection.d.ts +22 -0
- package/dist/globals/steam-client/SharedConnection.js +1 -0
- package/dist/globals/steam-client/Stats.d.ts +4 -0
- package/dist/globals/steam-client/Stats.js +1 -0
- package/dist/globals/steam-client/SteamChina.d.ts +3 -0
- package/dist/globals/steam-client/SteamChina.js +1 -0
- package/dist/globals/steam-client/Storage.d.ts +8 -0
- package/dist/globals/steam-client/Storage.js +1 -0
- package/dist/globals/steam-client/Streaming.d.ts +15 -0
- package/dist/globals/steam-client/Streaming.js +1 -0
- package/dist/globals/steam-client/UI.d.ts +44 -0
- package/dist/globals/steam-client/UI.js +12 -0
- package/dist/globals/steam-client/URL.d.ts +16 -0
- package/dist/globals/steam-client/URL.js +1 -0
- package/dist/globals/steam-client/Updates.d.ts +68 -0
- package/dist/globals/steam-client/Updates.js +34 -0
- package/dist/globals/steam-client/User.d.ts +130 -0
- package/dist/globals/steam-client/User.js +33 -0
- package/dist/globals/steam-client/WebChat.d.ts +60 -0
- package/dist/globals/steam-client/WebChat.js +6 -0
- package/dist/globals/steam-client/WebUITransport.d.ts +11 -0
- package/dist/globals/steam-client/WebUITransport.js +1 -0
- package/dist/globals/steam-client/Window.d.ts +66 -0
- package/dist/globals/steam-client/Window.js +6 -0
- package/dist/globals/steam-client/browser-view/BrowserViewPopup.d.ts +124 -0
- package/dist/globals/steam-client/browser-view/BrowserViewPopup.js +35 -0
- package/dist/globals/steam-client/browser-view/index.d.ts +20 -0
- package/dist/globals/steam-client/browser-view/index.js +1 -0
- package/dist/globals/steam-client/index.d.ts +89 -0
- package/dist/globals/steam-client/index.js +1 -0
- package/dist/globals/steam-client/shared.d.ts +166 -0
- package/dist/globals/steam-client/shared.js +146 -0
- package/dist/globals/steam-client/system/Audio.d.ts +42 -0
- package/dist/globals/steam-client/system/Audio.js +1 -0
- package/dist/globals/steam-client/system/AudioDevice.d.ts +92 -0
- package/dist/globals/steam-client/system/AudioDevice.js +33 -0
- package/dist/globals/steam-client/system/Bluetooth.d.ts +47 -0
- package/dist/globals/steam-client/system/Bluetooth.js +15 -0
- package/dist/globals/steam-client/system/Devkit.d.ts +7 -0
- package/dist/globals/steam-client/system/Devkit.js +1 -0
- package/dist/globals/steam-client/system/Display.d.ts +10 -0
- package/dist/globals/steam-client/system/Display.js +1 -0
- package/dist/globals/steam-client/system/DisplayManager.d.ts +9 -0
- package/dist/globals/steam-client/system/DisplayManager.js +1 -0
- package/dist/globals/steam-client/system/Dock.d.ts +19 -0
- package/dist/globals/steam-client/system/Dock.js +1 -0
- package/dist/globals/steam-client/system/Perf.d.ts +159 -0
- package/dist/globals/steam-client/system/Perf.js +53 -0
- package/dist/globals/steam-client/system/Report.d.ts +13 -0
- package/dist/globals/steam-client/system/Report.js +1 -0
- package/dist/globals/steam-client/system/UI.d.ts +28 -0
- package/dist/globals/steam-client/system/UI.js +1 -0
- package/dist/globals/steam-client/system/index.d.ts +243 -0
- package/dist/globals/steam-client/system/index.js +111 -0
- package/dist/globals/steam-client/system/network/Device.d.ts +10 -0
- package/dist/globals/steam-client/system/network/Device.js +1 -0
- package/dist/globals/steam-client/system/network/index.d.ts +312 -0
- package/dist/globals/steam-client/system/network/index.js +55 -0
- package/dist/globals/stores.d.ts +26 -13
- package/dist/modules/Router.d.ts +2 -39
- package/dist/modules/Router.js +0 -39
- package/package.json +1 -1
- package/src/components/SidebarNavigation.ts +1 -1
- package/src/globals/SteamClient.ts +4 -320
- package/src/globals/steam-client/App.ts +1749 -0
- package/src/globals/steam-client/Auth.ts +105 -0
- package/src/globals/steam-client/Broadcast.ts +56 -0
- package/src/globals/steam-client/Browser.ts +91 -0
- package/src/globals/steam-client/ClientNotifications.ts +39 -0
- package/src/globals/steam-client/Cloud.ts +14 -0
- package/src/globals/steam-client/CommunityItems.ts +24 -0
- package/src/globals/steam-client/Console.ts +43 -0
- package/src/globals/steam-client/Customization.ts +12 -0
- package/src/globals/steam-client/Downloads.ts +175 -0
- package/src/globals/steam-client/FamilySharing.ts +30 -0
- package/src/globals/steam-client/FriendSettings.ts +80 -0
- package/src/globals/steam-client/Friends.ts +70 -0
- package/src/globals/steam-client/GameNotes.ts +73 -0
- package/src/globals/steam-client/GameRecording.ts +29 -0
- package/src/globals/steam-client/GameSessions.ts +59 -0
- package/src/globals/steam-client/Input.ts +762 -0
- package/src/globals/steam-client/InstallFolder.ts +167 -0
- package/src/globals/steam-client/Installs.ts +131 -0
- package/src/globals/steam-client/Messaging.ts +20 -0
- package/src/globals/steam-client/Music.ts +99 -0
- package/src/globals/steam-client/Notifications.ts +333 -0
- package/src/globals/steam-client/OpenVR.ts +122 -0
- package/src/globals/steam-client/Overlay.ts +172 -0
- package/src/globals/steam-client/Parental.ts +129 -0
- package/src/globals/steam-client/RemotePlay.ts +342 -0
- package/src/globals/steam-client/Screenshots.ts +149 -0
- package/src/globals/steam-client/ServerBrowser.ts +372 -0
- package/src/globals/steam-client/Settings.ts +663 -0
- package/src/globals/steam-client/SharedConnection.ts +43 -0
- package/src/globals/steam-client/Stats.ts +10 -0
- package/src/globals/steam-client/SteamChina.ts +3 -0
- package/src/globals/steam-client/Storage.ts +24 -0
- package/src/globals/steam-client/Streaming.ts +59 -0
- package/src/globals/steam-client/UI.ts +90 -0
- package/src/globals/steam-client/URL.ts +174 -0
- package/src/globals/steam-client/Updates.ts +101 -0
- package/src/globals/steam-client/User.ts +266 -0
- package/src/globals/steam-client/WebChat.ts +164 -0
- package/src/globals/steam-client/WebUITransport.ts +21 -0
- package/src/globals/steam-client/Window.ts +235 -0
- package/src/globals/steam-client/browser-view/BrowserViewPopup.ts +393 -0
- package/src/globals/steam-client/browser-view/index.ts +54 -0
- package/src/globals/steam-client/index.ts +90 -0
- package/src/globals/steam-client/shared.ts +262 -0
- package/src/globals/steam-client/system/Audio.ts +202 -0
- package/src/globals/steam-client/system/AudioDevice.ts +116 -0
- package/src/globals/steam-client/system/Bluetooth.ts +171 -0
- package/src/globals/steam-client/system/Devkit.ts +11 -0
- package/src/globals/steam-client/system/Display.ts +15 -0
- package/src/globals/steam-client/system/DisplayManager.ts +16 -0
- package/src/globals/steam-client/system/Dock.ts +34 -0
- package/src/globals/steam-client/system/Perf.ts +194 -0
- package/src/globals/steam-client/system/Report.ts +39 -0
- package/src/globals/steam-client/system/UI.ts +38 -0
- package/src/globals/steam-client/system/index.ts +390 -0
- package/src/globals/steam-client/system/network/Device.ts +17 -0
- package/src/globals/steam-client/system/network/index.ts +403 -0
- package/src/globals/stores.ts +30 -13
- package/src/modules/Router.ts +2 -40
|
@@ -0,0 +1,1749 @@
|
|
|
1
|
+
import type { EResult, JsPbMessage, OperationResponse, Unregisterable, VDFBoolean_t } from "./shared";
|
|
2
|
+
import type { EControllerRumbleSetting, EThirdPartyControllerConfiguration } from "./Input";
|
|
3
|
+
import {EUCMFilePrivacyState, Screenshot} from "./Screenshots";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Represents various functions related to Steam applications.
|
|
7
|
+
*/
|
|
8
|
+
export interface Apps {
|
|
9
|
+
/**
|
|
10
|
+
* Adds a non-Steam application shortcut to the local Steam library.
|
|
11
|
+
* @param appName The name of the non-Steam application.
|
|
12
|
+
* @param executablePath The path to the executable file of the non-Steam application.
|
|
13
|
+
* @param directory The working directory for the non-Steam application.
|
|
14
|
+
* @param launchOptions Options to be passed when launching the non-Steam application.
|
|
15
|
+
* @returns a unique AppID assigned to the added non-Steam application shortcut.
|
|
16
|
+
*/
|
|
17
|
+
AddShortcut(appName: string, executablePath: string, directory: string, launchOptions: string): Promise<number>;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Backups an app to the specified path.
|
|
21
|
+
* @param appId The ID of the application to back up.
|
|
22
|
+
* @param backupPath The path to store the backup.
|
|
23
|
+
* @returns a number. This value may be "20" for backup busy and "0" for success.
|
|
24
|
+
*/
|
|
25
|
+
BackupFilesForApp(appId: number, backupPath: string): Promise<number>;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Opens the screenshot folder for a specific app.
|
|
29
|
+
* @param appId The ID of the app to browse screenshots for.
|
|
30
|
+
* @param handle The screenshot handle to use.
|
|
31
|
+
*/
|
|
32
|
+
BrowseScreenshotForApp(appId: string, handle: number): void;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Opens the screenshot folder for a specific app.
|
|
36
|
+
* @param appId The ID of the app to browse screenshots for.
|
|
37
|
+
*/
|
|
38
|
+
BrowseScreenshotsForApp(appId: string): void;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Cancels the current backup process.
|
|
42
|
+
*/
|
|
43
|
+
CancelBackup(): void;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Cancels a specific game action.
|
|
47
|
+
* @param gameActionId The ID of the game action to cancel.
|
|
48
|
+
*/
|
|
49
|
+
CancelGameAction(gameActionId: number): void;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Cancels the launch of an application with the specified ID.
|
|
53
|
+
* @param appId The ID of the application whose launch is to be canceled.
|
|
54
|
+
*/
|
|
55
|
+
CancelLaunch(appId: string): void;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Clears the custom artwork for a given application.
|
|
59
|
+
* @param appId The ID of the application to clear custom artwork for.
|
|
60
|
+
* @param assetType The type of artwork to clear.
|
|
61
|
+
*/
|
|
62
|
+
ClearCustomArtworkForApp(appId: number, assetType: ELibraryAssetType): Promise<void>;
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Clears the custom logo position for a specific application.
|
|
66
|
+
* @param appId The ID of the application.
|
|
67
|
+
* @returns A Promise that resolves once the custom logo position is cleared.
|
|
68
|
+
*/
|
|
69
|
+
ClearCustomLogoPositionForApp(appId: number): Promise<void>;
|
|
70
|
+
|
|
71
|
+
ClearProton(appId: number): Promise<void>;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Continues a specific game action.
|
|
75
|
+
* @param gameActionId The ID of the game action to continue.
|
|
76
|
+
* @param actionType The type of action to perform during continuation.
|
|
77
|
+
* @remarks actionType - "SkipShaders", "skip", "ShowDurationControl" todo:
|
|
78
|
+
*/
|
|
79
|
+
ContinueGameAction(gameActionId: number, actionType: string): void;
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Creates a Steam application shortcut on the desktop.
|
|
83
|
+
* @param appId The ID of the application for which to create a desktop shortcut.
|
|
84
|
+
*/
|
|
85
|
+
CreateDesktopShortcutForApp(appId: number): void;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Download a workshop item.
|
|
89
|
+
* @param appId The ID of the application.
|
|
90
|
+
* @param itemId The ID of the workshop item.
|
|
91
|
+
*/
|
|
92
|
+
DownloadWorkshopItem(appId: number, itemId: string, param1: boolean): void;
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Retrieves achievements within a specified time range for a given app.
|
|
96
|
+
* @param appId The ID of the application.
|
|
97
|
+
* @param start The start of the time range as a Unix timestamp.
|
|
98
|
+
* @param end The end of the time range as a Unix timestamp.
|
|
99
|
+
* @returns an array of AppAchievement objects.
|
|
100
|
+
* @throws OperationResponse
|
|
101
|
+
*/
|
|
102
|
+
GetAchievementsInTimeRange(appId: number, start: number, end: number): Promise<AppAchievement[]>;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Retrieves a list of active game actions, such as launching an application.
|
|
106
|
+
* @returns an array of active game actions.
|
|
107
|
+
*/
|
|
108
|
+
GetActiveGameActions(): Promise<GameAction[]>;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Retrieves a list of available compatibility tools for a specific application.
|
|
112
|
+
* @param appId The ID of the application to retrieve compatibility tools for.
|
|
113
|
+
* @returns an array of CompatibilityToolInfo objects.
|
|
114
|
+
*/
|
|
115
|
+
GetAvailableCompatTools(appId: number): Promise<CompatibilityTool[]>;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Represents a function to retrieve the name of the application in a backup folder.
|
|
119
|
+
* @param appBackupPath The path to the application's backup folder.
|
|
120
|
+
* @returns the name of the application in the backup folder, or undefined if the path is invalid.
|
|
121
|
+
* @remarks This function checks for the "sku.sis" file in that path.
|
|
122
|
+
*/
|
|
123
|
+
GetBackupsInFolder(appBackupPath: string): Promise<string | undefined>;
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Retrieves cached details for a specific application.
|
|
127
|
+
* @param appId The ID of the application.
|
|
128
|
+
* @returns a stringified object. Returns {@link CachedAppDetails} when parsed.
|
|
129
|
+
*/
|
|
130
|
+
GetCachedAppDetails(appId: number): Promise<string>;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* @returns a ProtoBuf message. If deserialized, returns {@link CMsgCloudPendingRemoteOperations}.
|
|
134
|
+
*/
|
|
135
|
+
GetCloudPendingRemoteOperations(appId: number): Promise<{
|
|
136
|
+
PendingOperations: ArrayBuffer;
|
|
137
|
+
}>;
|
|
138
|
+
|
|
139
|
+
GetCompatExperiment(param0: number): Promise<string>;
|
|
140
|
+
|
|
141
|
+
GetConflictingFileTimestamps(appId: number): Promise<ConflictingFileTimestamp>;
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Retrieves details for a specific screenshot upload.
|
|
145
|
+
* @param appId The ID of the application.
|
|
146
|
+
* @param hHandle The handle of the screenshot upload.
|
|
147
|
+
* @returns details about the screenshot upload.
|
|
148
|
+
*/
|
|
149
|
+
GetDetailsForScreenshotUpload(appId: string, hHandle: number): Promise<ScreenshotUploadDetails>;
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Retrieves details for multiple screenshot uploads.
|
|
153
|
+
* @param appId The ID of the application.
|
|
154
|
+
* @param hHandles An array of handles of the screenshot uploads.
|
|
155
|
+
* @returns details about the screenshot uploads.
|
|
156
|
+
*/
|
|
157
|
+
GetDetailsForScreenshotUploads(appId: string, hHandles: number[]): Promise<ScreenshotUploadsDetails>;
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* Retrieves a list of downloaded workshop items for a specific application.
|
|
161
|
+
* @param appId The ID of the application to retrieve downloaded workshop items for.
|
|
162
|
+
* @returns an array of downloaded workshop items for the specified application.
|
|
163
|
+
*/
|
|
164
|
+
GetDownloadedWorkshopItems(appId: number): Promise<WorkshopItem[]>;
|
|
165
|
+
|
|
166
|
+
GetDurationControlInfo(appId: number): Promise<{ bApplicable: boolean; }>;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Retrieves achievement information for a specific application for a given friend.
|
|
170
|
+
* @param appId The ID of the application to retrieve achievement information for.
|
|
171
|
+
* @param friendSteam64Id The Steam64 ID of the friend for whom to retrieve achievement information.
|
|
172
|
+
* @returns an object containing achievement information for the specified friend and application.
|
|
173
|
+
*/
|
|
174
|
+
GetFriendAchievementsForApp(appId: string, friendSteam64Id: string): Promise<AppAchievementResponse>;
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Retrieves a list of friends who play the specified application.
|
|
178
|
+
* @param appId The ID of the application.
|
|
179
|
+
* @returns an array of Steam64 IDs representing friends who play the application.
|
|
180
|
+
*/
|
|
181
|
+
GetFriendsWhoPlay(appId: number): Promise<string[]>;
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Retrieves details of a game action.
|
|
185
|
+
* @param appId The ID of the application.
|
|
186
|
+
* @param callback The callback function to handle the retrieved game action details and state.
|
|
187
|
+
* @param callback.gameAction The game action received in the callback.
|
|
188
|
+
* @param callback.state The state manager received in the callback.
|
|
189
|
+
*/
|
|
190
|
+
GetGameActionDetails(appId: number, callback: (gameAction: GameAction) => void): void;
|
|
191
|
+
|
|
192
|
+
GetGameActionForApp(
|
|
193
|
+
appId: string,
|
|
194
|
+
callback: (
|
|
195
|
+
gameActionId: number,
|
|
196
|
+
appId: 0 | string,
|
|
197
|
+
taskName: AppAction_t,
|
|
198
|
+
) => void,
|
|
199
|
+
): void;
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Retrieves launch options for a specified application.
|
|
203
|
+
* These options may include different configurations or settings for launching the application, such as DirectX, Vulkan, OpenGL, 32-bit, 64-bit, etc.
|
|
204
|
+
* This function does not retrieve launch/argument options inputted by the user.
|
|
205
|
+
* @param appId The ID of the application.
|
|
206
|
+
* @returns an array of launch options for the specified application.
|
|
207
|
+
*/
|
|
208
|
+
GetLaunchOptionsForApp(appId: number): Promise<LaunchOption[]>;
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* @returns a ProtoBuf message. If deserialized, returns {@link CLibraryBootstrapData}.
|
|
212
|
+
*/
|
|
213
|
+
GetLibraryBootstrapData(): Promise<ArrayBuffer>;
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Retrieves achievement information for the authenticated user in a specific Steam application.
|
|
217
|
+
* @param appId The ID of the application to retrieve achievement information for.
|
|
218
|
+
* @returns an AppAchievementResponse object containing the achievement information for the authenticated user in the specified application.
|
|
219
|
+
*/
|
|
220
|
+
GetMyAchievementsForApp(appId: string): Promise<AppAchievementResponse>;
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Retrieves the playtime information for a specific application.
|
|
224
|
+
* @param appId The ID of the application to get playtime information for.
|
|
225
|
+
* @returns playtime information or undefined if not available.
|
|
226
|
+
*/
|
|
227
|
+
GetPlaytime(appId: number): Promise<Playtime | undefined>;
|
|
228
|
+
|
|
229
|
+
GetPrePurchasedApps(appIds: number[]): Promise<PrePurchaseInfo>;
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Retrieves the resolution override for a specific application.
|
|
233
|
+
* @param appId The ID of the application to retrieve the resolution override for.
|
|
234
|
+
* @returns a string of the resolution override.
|
|
235
|
+
*/
|
|
236
|
+
GetResolutionOverrideForApp(appId: number): Promise<string>;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Represents a function to retrieve detailed information about a specific screenshot.
|
|
240
|
+
* @param appId The ID of the application the screenshot belongs to.
|
|
241
|
+
* @param hHandle The handle of the screenshot.
|
|
242
|
+
* @returns detailed information about the specified screenshot.
|
|
243
|
+
*/
|
|
244
|
+
GetScreenshotInfo(appId: string, hHandle: number): Promise<Screenshot>;
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Represents a function to retrieve screenshots within a specified time range.
|
|
248
|
+
* @param appId The ID of the application.
|
|
249
|
+
* @param start The start of the time range as a Unix timestamp.
|
|
250
|
+
* @param end The end of the time range as a Unix timestamp.
|
|
251
|
+
* @returns an array of screenshots taken within the specified time range.
|
|
252
|
+
*/
|
|
253
|
+
GetScreenshotsInTimeRange(appId: number, start: number, end: number): Promise<Screenshot[]>;
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Retrieves shortcut data for a given shortcut file path.
|
|
257
|
+
* @param pathToShortcut The path to the shortcut file.
|
|
258
|
+
* @returns the shortcut data.
|
|
259
|
+
*/
|
|
260
|
+
GetShortcutDataForPath(pathToShortcut: string): Promise<Shortcut>;
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
* Represents a function to retrieve details about a soundtrack associated with a soundtrack application.
|
|
264
|
+
* The soundtrack has to be installed.
|
|
265
|
+
* @param appId The ID of the soundtrack application.
|
|
266
|
+
* @returns the details of the soundtrack associated with the specified soundtrack application.
|
|
267
|
+
*/
|
|
268
|
+
GetSoundtrackDetails(appId: number): Promise<SoundtrackDetails>;
|
|
269
|
+
|
|
270
|
+
// [...appStore.m_mapStoreTagLocalization.keys()]
|
|
271
|
+
GetStoreTagLocalization(tags: number[]): Promise<StoreTagLocalization[]>;
|
|
272
|
+
|
|
273
|
+
/**
|
|
274
|
+
* Retrieves a list of subscribed workshop item details for a specific application.
|
|
275
|
+
* @param appId The ID of the application to retrieve subscribed workshop item details for.
|
|
276
|
+
* @param itemIds Workshop item IDs to retrieve details for.
|
|
277
|
+
* @returns an array of subscribed workshop item details for the specified application.
|
|
278
|
+
* @throws Throws if the query failed.
|
|
279
|
+
*/
|
|
280
|
+
GetSubscribedWorkshopItemDetails(appId: number, itemIds: string[]): Promise<WorkshopItem[] | OperationResponse>;
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* Retrieves a list of subscribed workshop items for a specific application.
|
|
284
|
+
* @param appId The ID of the application to retrieve subscribed workshop items for.
|
|
285
|
+
* @returns an array of subscribed workshop items for the specified application.
|
|
286
|
+
*/
|
|
287
|
+
GetSubscribedWorkshopItems(appId: number): Promise<WorkshopItem[]>;
|
|
288
|
+
|
|
289
|
+
InstallFlatpakAppAndCreateShortcut(appName: string, appCommandLineOptions: string): Promise<{
|
|
290
|
+
appid: number;
|
|
291
|
+
strInstallOutput: string;
|
|
292
|
+
}>;
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
* Join an app beta.
|
|
296
|
+
* @param appId App ID of the beta to join.
|
|
297
|
+
* @param name Beta name. Empty to opt out of betas.
|
|
298
|
+
* @throws EResult if no beta found.
|
|
299
|
+
*/
|
|
300
|
+
JoinAppContentBeta(appId: number, name: string): Promise<EResult>;
|
|
301
|
+
|
|
302
|
+
/**
|
|
303
|
+
* Join an app beta by password.
|
|
304
|
+
* @throws EResult if no beta found.
|
|
305
|
+
*/
|
|
306
|
+
JoinAppContentBetaByPassword(appId: number, accessCode: string): Promise<any>; // any.strName
|
|
307
|
+
|
|
308
|
+
ListFlatpakApps(): Promise<any>;
|
|
309
|
+
|
|
310
|
+
/**
|
|
311
|
+
* @throws if the user does not own the app or no EULA.
|
|
312
|
+
*/
|
|
313
|
+
LoadEula(appId: number): Promise<EndUserLicenseAgreement[]>; // Doesn't bring up the EULA dialog, just returns the eula data
|
|
314
|
+
MarkEulaAccepted(appId: number, id: string, version: number): void;
|
|
315
|
+
|
|
316
|
+
MarkEulaRejected(appId: number, id: string, version: number): void;
|
|
317
|
+
|
|
318
|
+
/**
|
|
319
|
+
* Move specified workshop item load order.
|
|
320
|
+
* @param appId The ID of the application.
|
|
321
|
+
* @param oldOrder The item to move, referenced by its position number.
|
|
322
|
+
* @param newOrder The position number to move the item to.
|
|
323
|
+
* @remarks Orders are zero-indexed.
|
|
324
|
+
*/
|
|
325
|
+
MoveWorkshopItemLoadOrder(appId: number, oldOrder: number, newOrder: number): void;
|
|
326
|
+
|
|
327
|
+
/**
|
|
328
|
+
* Opens the settings dialog for a specific application.
|
|
329
|
+
* @param appId The ID of the application for which to open the settings dialog.
|
|
330
|
+
* @param section The section (tab) to switch to.
|
|
331
|
+
*/
|
|
332
|
+
OpenAppSettingsDialog(appId: number, section: string): void;
|
|
333
|
+
|
|
334
|
+
/**
|
|
335
|
+
* Raises the window for a given application.
|
|
336
|
+
* @param appId The ID of the application to raise the window of.
|
|
337
|
+
*/
|
|
338
|
+
RaiseWindowForGame(appId: number): Promise<ERaiseGameWindowResult>; // ResumeGameInProgress
|
|
339
|
+
|
|
340
|
+
/*
|
|
341
|
+
"CMsgAchievementChange"
|
|
342
|
+
OnAchievementChange(e) {
|
|
343
|
+
var t;
|
|
344
|
+
const n = l.on.deserializeBinary(e).toObject(),
|
|
345
|
+
o = null !== (t = null == n ? void 0 : n.appid) && void 0 !== t ? t : 0;
|
|
346
|
+
0 != o ? (this.m_mapMyAchievements.has(o) || this.m_mapInflightMyAchievementsRequests.has(o)) && this.LoadMyAchievements(o) : console.error("Received invalid appid in OnAchievementChange")
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
message CMsgAchievementChange {
|
|
350
|
+
optional uint32 appid = 1;
|
|
351
|
+
}
|
|
352
|
+
*/
|
|
353
|
+
/**
|
|
354
|
+
* Registers a callback function to be called when achievement changes occur.
|
|
355
|
+
* @param callback The callback function to be called.
|
|
356
|
+
* @returns an object that can be used to unregister the callback.
|
|
357
|
+
*/
|
|
358
|
+
RegisterForAchievementChanges(callback: (data: ArrayBuffer) => void): Unregisterable;
|
|
359
|
+
|
|
360
|
+
RegisterForAppBackupStatus(callback: (status: AppBackupStatus) => void): Unregisterable;
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Registers a callback function to be called when app details change.
|
|
364
|
+
* @param appId The ID of the application to monitor.
|
|
365
|
+
* @param callback The callback function to be called.
|
|
366
|
+
* @returns an object that can be used to unregister the callback.
|
|
367
|
+
*/
|
|
368
|
+
RegisterForAppDetails(appId: number, callback: (data: AppDetails) => void): Unregisterable;
|
|
369
|
+
|
|
370
|
+
/**
|
|
371
|
+
* If `data` is deserialized, returns {@link CAppOverview_Change}.
|
|
372
|
+
* @remarks This is not a mistake, it doesn't return anything.
|
|
373
|
+
*/
|
|
374
|
+
RegisterForAppOverviewChanges(callback: (data: ArrayBuffer) => void): void;
|
|
375
|
+
|
|
376
|
+
RegisterForDRMFailureResponse(
|
|
377
|
+
callback: (appid: number, eResult: EResult, errorCode: number) => void,
|
|
378
|
+
): Unregisterable;
|
|
379
|
+
|
|
380
|
+
/**
|
|
381
|
+
* Registers a callback function to be called when a game action ends.
|
|
382
|
+
* @param callback The callback function to be called.
|
|
383
|
+
* @returns an object that can be used to unregister the callback.
|
|
384
|
+
*/
|
|
385
|
+
RegisterForGameActionEnd(callback: (gameActionId: number) => void): Unregisterable;
|
|
386
|
+
|
|
387
|
+
RegisterForGameActionShowError(
|
|
388
|
+
callback: (
|
|
389
|
+
gameActionId: number,
|
|
390
|
+
appId: string,
|
|
391
|
+
actionName: string,
|
|
392
|
+
/**
|
|
393
|
+
* Localization token.
|
|
394
|
+
*/
|
|
395
|
+
error: string,
|
|
396
|
+
param4: string,
|
|
397
|
+
) => void
|
|
398
|
+
): Unregisterable;
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* Registers a callback function to be called when a game action UI is shown.
|
|
402
|
+
* @param callback The callback function to be called.
|
|
403
|
+
* @returns an object that can be used to unregister the callback.
|
|
404
|
+
*/
|
|
405
|
+
RegisterForGameActionShowUI(callback: () => void): Unregisterable; // todo: no idea what this callback is from
|
|
406
|
+
|
|
407
|
+
/**
|
|
408
|
+
* Registers a callback function to be called when a game action starts.
|
|
409
|
+
* @param callback The callback function to be called.
|
|
410
|
+
* @returns an object that can be used to unregister the callback.
|
|
411
|
+
*/
|
|
412
|
+
RegisterForGameActionStart(
|
|
413
|
+
callback: (gameActionId: number, appId: string, action: string, param3: ELaunchSource) => void,
|
|
414
|
+
): Unregisterable;
|
|
415
|
+
|
|
416
|
+
/**
|
|
417
|
+
* Registers a callback function to be called when a game action task changes.
|
|
418
|
+
* @param callback The callback function to be called.
|
|
419
|
+
* @returns an object that can be used to unregister the callback.
|
|
420
|
+
*/
|
|
421
|
+
RegisterForGameActionTaskChange(
|
|
422
|
+
callback: (
|
|
423
|
+
gameActionId: number,
|
|
424
|
+
appId: string,
|
|
425
|
+
action: string,
|
|
426
|
+
requestedAction: string,
|
|
427
|
+
param4: string,
|
|
428
|
+
) => void,
|
|
429
|
+
): Unregisterable;
|
|
430
|
+
|
|
431
|
+
/**
|
|
432
|
+
* Registers a callback function to be called when a user requests a game action.
|
|
433
|
+
* @param callback The callback function to be called.
|
|
434
|
+
* @returns an object that can be used to unregister the callback.
|
|
435
|
+
*/
|
|
436
|
+
RegisterForGameActionUserRequest(
|
|
437
|
+
callback: (
|
|
438
|
+
gameActionId: number,
|
|
439
|
+
appId: string,
|
|
440
|
+
action: string,
|
|
441
|
+
requestedAction: string,
|
|
442
|
+
appId2: string,
|
|
443
|
+
) => void,
|
|
444
|
+
): Unregisterable;
|
|
445
|
+
|
|
446
|
+
RegisterForPrePurchasedAppChanges(callback: () => void): Unregisterable; // Unknown, did have it show up a few times, but not callback parameters
|
|
447
|
+
RegisterForShowMarketingMessageDialog: Unregisterable;
|
|
448
|
+
|
|
449
|
+
/**
|
|
450
|
+
* Registers a callback function to be notified when workshop items are added or removed from a Steam application.
|
|
451
|
+
* @param callback The callback function to be called.
|
|
452
|
+
* @returns an object that can be used to unregister the callback.
|
|
453
|
+
*/
|
|
454
|
+
RegisterForWorkshopChanges(callback: (appId: number) => void): Unregisterable;
|
|
455
|
+
|
|
456
|
+
RegisterForWorkshopItemDownloads(
|
|
457
|
+
appId: number,
|
|
458
|
+
callback: (appId: number, publishedFileId: string, param2: number) => void,
|
|
459
|
+
): Unregisterable;
|
|
460
|
+
|
|
461
|
+
RegisterForWorkshopItemInstalled(callback: (item: InstalledWorkshopItem) => void): Unregisterable;
|
|
462
|
+
|
|
463
|
+
/**
|
|
464
|
+
* Removes a non-Steam application shortcut from the Steam library.
|
|
465
|
+
* @param appId The ID of the application for which to remove the shortcut.
|
|
466
|
+
*/
|
|
467
|
+
RemoveShortcut(appId: number): void;
|
|
468
|
+
|
|
469
|
+
ReportLibraryAssetCacheMiss(appId: number, assetType: ELibraryAssetType): void;
|
|
470
|
+
|
|
471
|
+
ReportMarketingMessageDialogShown(): void;
|
|
472
|
+
|
|
473
|
+
RequestIconDataForApp(appId: number): void;
|
|
474
|
+
|
|
475
|
+
RequestLegacyCDKeysForApp(appId: number): void;
|
|
476
|
+
|
|
477
|
+
/**
|
|
478
|
+
* Runs a game with specified parameters. Focuses the game if already launched.
|
|
479
|
+
* @param appId The ID of the application to run.
|
|
480
|
+
* @param launchOptions Additional launch options for the application.
|
|
481
|
+
* @param param2 Additional parameter (exact usage may vary).
|
|
482
|
+
* @param launchSource
|
|
483
|
+
* @remarks `launchOptions` is appended before the ones specified in the application's settings.
|
|
484
|
+
*/
|
|
485
|
+
RunGame(appId: string, launchOptions: string, param2: number, launchSource: ELaunchSource): void;
|
|
486
|
+
|
|
487
|
+
/*
|
|
488
|
+
function u(e, t) {
|
|
489
|
+
return t instanceof Map || t instanceof Set ? Array.from(t) : t;
|
|
490
|
+
}
|
|
491
|
+
SteamClient.Apps.SaveAchievementProgressCache(
|
|
492
|
+
JSON.stringify(this.m_achievementProgress, u)
|
|
493
|
+
);
|
|
494
|
+
*/
|
|
495
|
+
SaveAchievementProgressCache(progress: string): Promise<void>;
|
|
496
|
+
|
|
497
|
+
/**
|
|
498
|
+
* Scans the system for installed non-Steam applications.
|
|
499
|
+
* @returns an array of NonSteamApp objects representing installed non-Steam applications.
|
|
500
|
+
* @remarks This function scans the user's system for installed applications that are not part of the Steam library. It does not scan for shortcuts added to the Steam library.
|
|
501
|
+
*
|
|
502
|
+
* On Linux, it scans inside /usr/share/applications and $XDG_DATA_HOME/applications.
|
|
503
|
+
*/
|
|
504
|
+
ScanForInstalledNonSteamApps(): Promise<NonSteamApp[]>;
|
|
505
|
+
|
|
506
|
+
/**
|
|
507
|
+
* Sets the automatic update behavior for a Steam application.
|
|
508
|
+
* @param appId The ID of the application to set the update behavior for.
|
|
509
|
+
* @param mode The update behavior mode to set.
|
|
510
|
+
* @remarks This function only works with installed Steam applications.
|
|
511
|
+
*/
|
|
512
|
+
SetAppAutoUpdateBehavior(appId: number, mode: EAppAutoUpdateBehavior): void;
|
|
513
|
+
|
|
514
|
+
/**
|
|
515
|
+
* Sets the background downloads behavior for a specific Steam application.
|
|
516
|
+
* @param appId The ID of the application to set the background downloads behavior for.
|
|
517
|
+
* @param mode The background downloads mode to set.
|
|
518
|
+
* @remarks This function only works with installed Steam applications.
|
|
519
|
+
*/
|
|
520
|
+
SetAppBackgroundDownloadsBehavior(appId: number, mode: EAppAllowDownloadsWhileRunningBehavior): void;
|
|
521
|
+
|
|
522
|
+
/**
|
|
523
|
+
* Sets the current language for a specific Steam application.
|
|
524
|
+
* @param appId The ID of the application to set the current language for.
|
|
525
|
+
* @param language The language to set, represented as a language (e.g., "english", "spanish", "tchinese", "schinese").
|
|
526
|
+
*/
|
|
527
|
+
SetAppCurrentLanguage(appId: number, language: string): void;
|
|
528
|
+
|
|
529
|
+
/**
|
|
530
|
+
* Sets the blocked state for apps.
|
|
531
|
+
* @param appIds An array of app IDs to set the blocked state for.
|
|
532
|
+
* @param state The state to set (true for blocked, false for unblocked).
|
|
533
|
+
*/
|
|
534
|
+
SetAppFamilyBlockedState(appIds: number[], state: boolean): void;
|
|
535
|
+
|
|
536
|
+
/**
|
|
537
|
+
* Sets launch options for a Steam application.
|
|
538
|
+
* @param appId The ID of the application to set launch options for.
|
|
539
|
+
* @param launchOptions The launch options to be set for the application.
|
|
540
|
+
*/
|
|
541
|
+
SetAppLaunchOptions(appId: number, launchOptions: string): void;
|
|
542
|
+
|
|
543
|
+
/**
|
|
544
|
+
* Sets a resolution override for a Steam application.
|
|
545
|
+
* @param appId The ID of the application to set the resolution override for.
|
|
546
|
+
* @param resolution The resolution to be set for the application. It can be "Default", "Native", or other compatible resolutions for the user's monitor.
|
|
547
|
+
*/
|
|
548
|
+
SetAppResolutionOverride(appId: number, resolution: string): void;
|
|
549
|
+
|
|
550
|
+
/**
|
|
551
|
+
* Sets cached details for a specific application.
|
|
552
|
+
* @param appId The ID of the application.
|
|
553
|
+
* @param details The details to be cached, a stringified object.
|
|
554
|
+
* @returns A Promise that resolves when the details are successfully cached.
|
|
555
|
+
*/
|
|
556
|
+
SetCachedAppDetails(appId: number, details: string): Promise<void>;
|
|
557
|
+
|
|
558
|
+
SetControllerRumblePreference(appId: number, value: EControllerRumbleSetting): void;
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* Sets the custom artwork for a given application.
|
|
562
|
+
* @param appId The ID of the application to set custom artwork for.
|
|
563
|
+
* @param base64 Base64 encoded image.
|
|
564
|
+
* @param assetType The type of artwork to set.
|
|
565
|
+
* @returns A Promise that resolves after the custom artwork is set.
|
|
566
|
+
*/
|
|
567
|
+
SetCustomArtworkForApp(appId: number, base64: string, imageType: 'jpg' | 'png', assetType: ELibraryAssetType): Promise<void>;
|
|
568
|
+
|
|
569
|
+
/**
|
|
570
|
+
* Sets a custom logo position for a specific app.
|
|
571
|
+
* @param appId The ID of the application.
|
|
572
|
+
* @param details The details of the custom logo position, expected to be a stringified {@link LogoPositionForApp} object.
|
|
573
|
+
* @returns A Promise that resolves when the custom logo position is successfully set.
|
|
574
|
+
*/
|
|
575
|
+
SetCustomLogoPositionForApp(appId: number, details: string): Promise<void>;
|
|
576
|
+
|
|
577
|
+
/**
|
|
578
|
+
* Sets the enabled state for downloadable content (DLC) of a specific app.
|
|
579
|
+
* @param appId The ID of the parent application.
|
|
580
|
+
* @param appDLCId The ID of the DLC to set the state for.
|
|
581
|
+
* @param value The value to set (true for enabled, false for disabled).
|
|
582
|
+
*/
|
|
583
|
+
SetDLCEnabled(appId: number, appDLCId: number, value: boolean): void;
|
|
584
|
+
|
|
585
|
+
/**
|
|
586
|
+
* Set a local screenshot's caption.
|
|
587
|
+
* @param appId The application ID the screenshot belongs to.
|
|
588
|
+
* @param hHandle The handle of the screenshot.
|
|
589
|
+
* @param caption
|
|
590
|
+
*/
|
|
591
|
+
SetLocalScreenshotCaption(appId: string, hHandle: number, caption: string): void;
|
|
592
|
+
|
|
593
|
+
/**
|
|
594
|
+
* Set a local screenshot's privacy state.
|
|
595
|
+
* @param appId The application ID the screenshot belongs to.
|
|
596
|
+
* @param hHandle The handle of the screenshot.
|
|
597
|
+
* @param privacy Screenshot privacy state.
|
|
598
|
+
*/
|
|
599
|
+
SetLocalScreenshotPrivacy(appId: string, hHandle: number, privacy: EUCMFilePrivacyState): void;
|
|
600
|
+
|
|
601
|
+
/**
|
|
602
|
+
* Set a local screenshot's spoiler state.
|
|
603
|
+
* @param appId The application ID the screenshot belongs to.
|
|
604
|
+
* @param hHandle The handle of the screenshot.
|
|
605
|
+
* @param spoilered Is the screenshot spoilered?
|
|
606
|
+
*/
|
|
607
|
+
SetLocalScreenshotSpoiler(appId: string, hHandle: number, spoilered: boolean): void;
|
|
608
|
+
|
|
609
|
+
/**
|
|
610
|
+
* Sets the executable path for a non-Steam application shortcut.
|
|
611
|
+
* @param appId The ID of the application to set the shortcut executable for.
|
|
612
|
+
* @param path The path to the executable.
|
|
613
|
+
*/
|
|
614
|
+
SetShortcutExe(appId: number, path: string): void;
|
|
615
|
+
|
|
616
|
+
/**
|
|
617
|
+
* Sets the icon for a non-Steam application shortcut.
|
|
618
|
+
* @param appId The ID of the application to set the shortcut icon for.
|
|
619
|
+
* @param path The path to the icon image (can be png or tga format).
|
|
620
|
+
*/
|
|
621
|
+
SetShortcutIcon(appId: number, path: string): void;
|
|
622
|
+
|
|
623
|
+
/**
|
|
624
|
+
* Sets whether a non-Steam application shortcut should be included in the VR library.
|
|
625
|
+
* @param appId The ID of the application to set the VR status for.
|
|
626
|
+
* @param value A boolean indicating whether the application should be included in the VR library.
|
|
627
|
+
*/
|
|
628
|
+
SetShortcutIsVR(appId: number, value: boolean): void;
|
|
629
|
+
|
|
630
|
+
/**
|
|
631
|
+
* Sets launch options for a non-Steam application shortcut.
|
|
632
|
+
* @param appId The ID of the application to set the launch options for.
|
|
633
|
+
* @param options The launch options to be used when starting the application.
|
|
634
|
+
*/
|
|
635
|
+
SetShortcutLaunchOptions(appId: number, options: string): void;
|
|
636
|
+
|
|
637
|
+
/**
|
|
638
|
+
* Sets the name for a non-Steam application shortcut.
|
|
639
|
+
* @param appId The ID of the application to set the shortcut name for.
|
|
640
|
+
* @param name The name to be displayed for the application shortcut.
|
|
641
|
+
*/
|
|
642
|
+
SetShortcutName(appId: number, name: string): void;
|
|
643
|
+
|
|
644
|
+
/**
|
|
645
|
+
* Sets the starting directory for a non-Steam application shortcut.
|
|
646
|
+
* @param appId The ID of the application to set the starting directory for.
|
|
647
|
+
* @param directory The directory from which the application should be launched.
|
|
648
|
+
*/
|
|
649
|
+
SetShortcutStartDir(appId: number, directory: string): void;
|
|
650
|
+
|
|
651
|
+
/**
|
|
652
|
+
* Sets the client ID for streaming for a specific application.
|
|
653
|
+
* @param appId The ID of the application.
|
|
654
|
+
* @param clientId The client ID for streaming.
|
|
655
|
+
*/
|
|
656
|
+
SetStreamingClientForApp(appId: number, clientId: string): void;
|
|
657
|
+
|
|
658
|
+
SetThirdPartyControllerConfiguration(appId: number, value: EThirdPartyControllerConfiguration): void;
|
|
659
|
+
|
|
660
|
+
/**
|
|
661
|
+
* Sets the workshop items disabled state.
|
|
662
|
+
* @param appId The ID of the application.
|
|
663
|
+
* @param itemIds Workshop item IDs to change the state for.
|
|
664
|
+
* @param value `true` to disable, `false` otherwise.
|
|
665
|
+
*/
|
|
666
|
+
SetWorkshopItemsDisabledLocally(appId: number, itemIds: string[], value: boolean): void;
|
|
667
|
+
|
|
668
|
+
/**
|
|
669
|
+
* Sets the workshop items load order for a specified application.
|
|
670
|
+
* @param appId The ID of the application.
|
|
671
|
+
* @param itemIds Workshop item IDs. Has to be the full list of subscribed items, otherwise the specified items get moved to the last position.
|
|
672
|
+
*/
|
|
673
|
+
SetWorkshopItemsLoadOrder(appId: number, itemIds: string[]): void;
|
|
674
|
+
|
|
675
|
+
/**
|
|
676
|
+
* Opens the controller configurator for a specific application.
|
|
677
|
+
* @param appId The ID of the application for which to open the controller configurator.
|
|
678
|
+
*/
|
|
679
|
+
ShowControllerConfigurator(appId: number): void;
|
|
680
|
+
|
|
681
|
+
/**
|
|
682
|
+
* Opens the Steam store page for a specific application.
|
|
683
|
+
* @param appId The ID of the application.
|
|
684
|
+
*/
|
|
685
|
+
ShowStore(appId: number): void;
|
|
686
|
+
|
|
687
|
+
SpecifyCompatExperiment(appId: number, param1: string): void;
|
|
688
|
+
|
|
689
|
+
/**
|
|
690
|
+
* Specifies a compatibility tool by its name for a given application. If strToolName is an empty string, the specified application will no longer use a compatibility tool.
|
|
691
|
+
* @param appId The ID of the application to specify compatibility tool for.
|
|
692
|
+
* @param strToolName The name of the compatibility tool to specify.
|
|
693
|
+
*/
|
|
694
|
+
SpecifyCompatTool(appId: number, strToolName: string): void;
|
|
695
|
+
|
|
696
|
+
StreamGame(appId: number, clientId: string, param2: number): void;
|
|
697
|
+
|
|
698
|
+
/**
|
|
699
|
+
* Subscribes or unsubscribes from a workshop item for a specific app.
|
|
700
|
+
* @param appId The ID of the application.
|
|
701
|
+
* @param workshopId The ID of the workshop item.
|
|
702
|
+
* @param subscribed True to subscribe, false to unsubscribe.
|
|
703
|
+
*/
|
|
704
|
+
SubscribeWorkshopItem(appId: number, workshopId: string, subscribed: boolean): void;
|
|
705
|
+
|
|
706
|
+
/**
|
|
707
|
+
* Terminates a running application.
|
|
708
|
+
* @param appId The ID of the application to terminate.
|
|
709
|
+
* @param param1 Additional parameter. Exact usage may vary.
|
|
710
|
+
*/
|
|
711
|
+
TerminateApp(appId: string, param1: boolean): void;
|
|
712
|
+
|
|
713
|
+
// "#AppProperties_SteamInputDesktopConfigInLauncher"
|
|
714
|
+
ToggleAllowDesktopConfiguration(appId: number): void;
|
|
715
|
+
|
|
716
|
+
/**
|
|
717
|
+
* Toggles the Steam Cloud synchronization for game saves for a specific application.
|
|
718
|
+
* @param appId The ID of the application.
|
|
719
|
+
* @remarks This function modifies the "<STEAMPATH>/userdata/<STEAMID3>/7/remote/sharedconfig.vdf" file.
|
|
720
|
+
*/
|
|
721
|
+
ToggleAppSteamCloudEnabled(appId: number): void;
|
|
722
|
+
|
|
723
|
+
// "#AppProperties_EnableSteamCloudSyncOnSuspend"
|
|
724
|
+
ToggleAppSteamCloudSyncOnSuspendEnabled(appId: number): void;
|
|
725
|
+
|
|
726
|
+
/**
|
|
727
|
+
* Toggles the Steam Overlay setting for a specific application.
|
|
728
|
+
* @param appId The ID of the application.
|
|
729
|
+
*/
|
|
730
|
+
ToggleEnableSteamOverlayForApp(appId: number): void;
|
|
731
|
+
|
|
732
|
+
// "#AppProperties_ResolutionOverride_Internal"
|
|
733
|
+
ToggleOverrideResolutionForInternalDisplay(appId: number): void;
|
|
734
|
+
|
|
735
|
+
UninstallFlatpakApp(app: string): Promise<boolean>;
|
|
736
|
+
|
|
737
|
+
/**
|
|
738
|
+
* Verifies the integrity of an app's files.
|
|
739
|
+
* @param appId The ID of the app to verify.
|
|
740
|
+
*/
|
|
741
|
+
VerifyApp(appId: number): Promise<{ nGameActionID: number; }>;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
export enum ELibraryAssetType {
|
|
745
|
+
Capsule,
|
|
746
|
+
Hero,
|
|
747
|
+
Logo,
|
|
748
|
+
Header,
|
|
749
|
+
Icon,
|
|
750
|
+
HeroBlur,
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
export interface AppAchievements {
|
|
754
|
+
nAchieved: number;
|
|
755
|
+
nTotal: number;
|
|
756
|
+
vecAchievedHidden: AppAchievement[];
|
|
757
|
+
vecHighlight: AppAchievement[];
|
|
758
|
+
vecUnachieved: AppAchievement[];
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
export interface AppAchievement {
|
|
762
|
+
bAchieved: boolean;
|
|
763
|
+
/** Is it a hidden achievement before unlocking it? */
|
|
764
|
+
bHidden: boolean;
|
|
765
|
+
flMinProgress: number;
|
|
766
|
+
flCurrentProgress: number;
|
|
767
|
+
flMaxProgress: number;
|
|
768
|
+
/** How many players have this achievement, in 0-100 range. */
|
|
769
|
+
flAchieved: number;
|
|
770
|
+
/** When this achievement was unlocked. */
|
|
771
|
+
rtUnlocked: number;
|
|
772
|
+
/** Localized achievement description. */
|
|
773
|
+
strDescription: string;
|
|
774
|
+
/** Achievement ID. */
|
|
775
|
+
strID: string;
|
|
776
|
+
/** Achievement icon. */
|
|
777
|
+
strImage: string;
|
|
778
|
+
/** Localized achievement name. */
|
|
779
|
+
strName: string;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
export type AppAction_t = "LaunchApp" | "VerifyApp";
|
|
783
|
+
|
|
784
|
+
export type LaunchAppTask_t =
|
|
785
|
+
| "None"
|
|
786
|
+
| "Completed"
|
|
787
|
+
| "Cancelled"
|
|
788
|
+
| "Failed"
|
|
789
|
+
| "Starting"
|
|
790
|
+
| "ConnectingToSteam"
|
|
791
|
+
| "RequestingLicense"
|
|
792
|
+
| "UpdatingAppInfo"
|
|
793
|
+
| "UpdatingAppTicket"
|
|
794
|
+
| "UnlockingH264"
|
|
795
|
+
| "WaitingOnWideVineUpdate"
|
|
796
|
+
| "ShowCheckSystem"
|
|
797
|
+
| "CheckTimedTrial"
|
|
798
|
+
| "GetDurationControl"
|
|
799
|
+
| "ShowDurationControl"
|
|
800
|
+
| "ShowLaunchOption"
|
|
801
|
+
| "ShowEula"
|
|
802
|
+
| "ShowVR2DWarning"
|
|
803
|
+
| "ShowVROculusOnly"
|
|
804
|
+
| "ShowVRStreamingLaunch"
|
|
805
|
+
| "ShowGameArgs"
|
|
806
|
+
| "ShowCDKey"
|
|
807
|
+
| "WaitingPrevProcess"
|
|
808
|
+
| "DownloadingDepots"
|
|
809
|
+
| "DownloadingWorkshop"
|
|
810
|
+
| "UpdatingDRM"
|
|
811
|
+
| "GettingLegacyKey"
|
|
812
|
+
| "ProcessingInstallScript"
|
|
813
|
+
| "RunningInstallScript"
|
|
814
|
+
| "SynchronizingCloud"
|
|
815
|
+
| "SynchronizingControllerConfig"
|
|
816
|
+
| "ShowNoControllerConfig"
|
|
817
|
+
| "ProcessingShaderCache"
|
|
818
|
+
| "VerifyingFiles"
|
|
819
|
+
| "KickingOtherSession"
|
|
820
|
+
| "WaitingOpenVRAppQuit"
|
|
821
|
+
| "SiteLicenseSeatCheckout"
|
|
822
|
+
| "DelayLaunch"
|
|
823
|
+
| "CreatingProcess"
|
|
824
|
+
| "WaitingGameWindow"
|
|
825
|
+
|
|
826
|
+
export interface GameAction {
|
|
827
|
+
nGameActionID: number;
|
|
828
|
+
gameid: string;
|
|
829
|
+
strActionName: AppAction_t;
|
|
830
|
+
strTaskName: LaunchAppTask_t;
|
|
831
|
+
strTaskDetails: string;
|
|
832
|
+
nLaunchOption: number;
|
|
833
|
+
nSecondsRemaing: number; //fixme: not a typo, actually valve
|
|
834
|
+
strNumDone: string;
|
|
835
|
+
strNumTotal: string;
|
|
836
|
+
bWaitingForUI: boolean;
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
export interface ConflictingFileTimestamp {
|
|
840
|
+
rtLocalTime: number;
|
|
841
|
+
rtRemoteTime: number;
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
/**
|
|
845
|
+
* Represents information about a compatibility tool.
|
|
846
|
+
*/
|
|
847
|
+
export interface CompatibilityTool {
|
|
848
|
+
/** Name of the compatibility tool. */
|
|
849
|
+
strToolName: string;
|
|
850
|
+
/** Display name of the compatibility tool. */
|
|
851
|
+
strDisplayName: string;
|
|
852
|
+
}
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
/**
|
|
856
|
+
* Represents details about a single screenshot upload.
|
|
857
|
+
*/
|
|
858
|
+
export interface ScreenshotUploadDetails {
|
|
859
|
+
/**
|
|
860
|
+
* The size of the screenshot upload on disk (including thumbnail).
|
|
861
|
+
*/
|
|
862
|
+
strSizeOnDisk: string;
|
|
863
|
+
|
|
864
|
+
/**
|
|
865
|
+
* The amount of cloud storage available.
|
|
866
|
+
*/
|
|
867
|
+
strCloudAvailable: string;
|
|
868
|
+
|
|
869
|
+
/**
|
|
870
|
+
* The total cloud storage.
|
|
871
|
+
*/
|
|
872
|
+
strCloudTotal: string;
|
|
873
|
+
}
|
|
874
|
+
|
|
875
|
+
/**
|
|
876
|
+
* Represents details about multiple screenshot uploads.
|
|
877
|
+
*/
|
|
878
|
+
export interface ScreenshotUploadsDetails {
|
|
879
|
+
/**
|
|
880
|
+
* The total size of all screenshot uploads on disk (sum of sizes including thumbnails).
|
|
881
|
+
*/
|
|
882
|
+
unSizeOnDisk: number;
|
|
883
|
+
|
|
884
|
+
/**
|
|
885
|
+
* The amount of cloud storage available.
|
|
886
|
+
*/
|
|
887
|
+
strCloudAvailable: string;
|
|
888
|
+
|
|
889
|
+
/**
|
|
890
|
+
* The total cloud storage.
|
|
891
|
+
*/
|
|
892
|
+
strCloudTotal: string;
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
interface InstalledWorkshopItem {
|
|
896
|
+
appid: number;
|
|
897
|
+
legacy_content: string;
|
|
898
|
+
manifestid: string;
|
|
899
|
+
publishedfileid: string;
|
|
900
|
+
}
|
|
901
|
+
|
|
902
|
+
export interface WorkshopItem {
|
|
903
|
+
unAppID: number;
|
|
904
|
+
ulPublishedFileID: string;
|
|
905
|
+
}
|
|
906
|
+
|
|
907
|
+
export interface AppAchievementData {
|
|
908
|
+
rgAchievements: AppAchievement[];
|
|
909
|
+
}
|
|
910
|
+
|
|
911
|
+
export interface AppAchievementResponse {
|
|
912
|
+
result: EResult;
|
|
913
|
+
data: AppAchievementData;
|
|
914
|
+
}
|
|
915
|
+
|
|
916
|
+
export interface LaunchOption {
|
|
917
|
+
bIsLaunchOptionTypeExemptFromGameTheater: VDFBoolean_t;
|
|
918
|
+
bIsVRLaunchOption: VDFBoolean_t;
|
|
919
|
+
eType: EAppLaunchOptionType;
|
|
920
|
+
nIndex: number;
|
|
921
|
+
/**
|
|
922
|
+
* @note May be a localization string.
|
|
923
|
+
*/
|
|
924
|
+
strDescription: string;
|
|
925
|
+
strGameName: string;
|
|
926
|
+
}
|
|
927
|
+
|
|
928
|
+
/**
|
|
929
|
+
* Represents playtime information for an application.
|
|
930
|
+
*/
|
|
931
|
+
export interface Playtime {
|
|
932
|
+
/** Total playtime in minutes for the last 2 weeks. */
|
|
933
|
+
nPlaytimeLastTwoWeeks: number;
|
|
934
|
+
/** Total playtime in minutes. */
|
|
935
|
+
nPlaytimeForever: number;
|
|
936
|
+
/** Last played time in Unix Epoch time format. */
|
|
937
|
+
rtLastTimePlayed: number;
|
|
938
|
+
}
|
|
939
|
+
|
|
940
|
+
export interface PrePurchaseApp {
|
|
941
|
+
nAppID: number;
|
|
942
|
+
eState: EAppReleaseState;
|
|
943
|
+
}
|
|
944
|
+
|
|
945
|
+
export interface PrePurchaseInfo {
|
|
946
|
+
apps: PrePurchaseApp[];
|
|
947
|
+
lastChangeNumber: number;
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
|
|
951
|
+
export enum EAppReleaseState {
|
|
952
|
+
Unknown,
|
|
953
|
+
Unavailable,
|
|
954
|
+
Prerelease,
|
|
955
|
+
PreloadOnly,
|
|
956
|
+
Released,
|
|
957
|
+
Disabled,
|
|
958
|
+
}
|
|
959
|
+
|
|
960
|
+
export enum EAppLaunchOptionType {
|
|
961
|
+
None,
|
|
962
|
+
Default,
|
|
963
|
+
SafeMode,
|
|
964
|
+
Multiplayer,
|
|
965
|
+
Config,
|
|
966
|
+
OpenVR,
|
|
967
|
+
Server,
|
|
968
|
+
Editor,
|
|
969
|
+
Manual,
|
|
970
|
+
Benchmark,
|
|
971
|
+
Option1,
|
|
972
|
+
Option2,
|
|
973
|
+
Option3,
|
|
974
|
+
OculusVR,
|
|
975
|
+
OpenVROverlay,
|
|
976
|
+
OSVR,
|
|
977
|
+
OpenXR,
|
|
978
|
+
Dialog = 1e3,
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
export interface SoundtrackDetails {
|
|
982
|
+
tracks: SoundtrackTrack[];
|
|
983
|
+
metadata: SoundtrackMetadata;
|
|
984
|
+
vecAdditionalImageAssetURLs: string[];
|
|
985
|
+
strCoverImageAssetURL: string;
|
|
986
|
+
}
|
|
987
|
+
|
|
988
|
+
export interface SoundtrackTrack {
|
|
989
|
+
discNumber: number;
|
|
990
|
+
trackNumber: number;
|
|
991
|
+
durationSeconds: number;
|
|
992
|
+
trackDisplayName: string;
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
export interface SoundtrackMetadata {
|
|
996
|
+
artist: string;
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
export interface StoreTagLocalization {
|
|
1000
|
+
tag: number;
|
|
1001
|
+
string: string;
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
export interface WorkshopItem {
|
|
1005
|
+
/**
|
|
1006
|
+
* Required items' IDs.
|
|
1007
|
+
*/
|
|
1008
|
+
children: string[];
|
|
1009
|
+
eresult: EResult;
|
|
1010
|
+
/**
|
|
1011
|
+
* Item size, in byts.
|
|
1012
|
+
*/
|
|
1013
|
+
file_size: string;
|
|
1014
|
+
/**
|
|
1015
|
+
* Workshop file type.
|
|
1016
|
+
*/
|
|
1017
|
+
file_type: EWorkshopFileType;
|
|
1018
|
+
/**
|
|
1019
|
+
* Item preview image URL.
|
|
1020
|
+
*/
|
|
1021
|
+
preview_url: string;
|
|
1022
|
+
/**
|
|
1023
|
+
* Item ID.
|
|
1024
|
+
*/
|
|
1025
|
+
publishedfileid: string;
|
|
1026
|
+
/**
|
|
1027
|
+
* Item description.
|
|
1028
|
+
*/
|
|
1029
|
+
short_description: string;
|
|
1030
|
+
/**
|
|
1031
|
+
* Item tags.
|
|
1032
|
+
*/
|
|
1033
|
+
tags: string[];
|
|
1034
|
+
/**
|
|
1035
|
+
* Item title.
|
|
1036
|
+
*/
|
|
1037
|
+
title: string;
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
export enum EWorkshopFileType {
|
|
1041
|
+
Invalid = -1,
|
|
1042
|
+
Community,
|
|
1043
|
+
Microtransaction,
|
|
1044
|
+
Collection,
|
|
1045
|
+
Art,
|
|
1046
|
+
Video,
|
|
1047
|
+
Screenshot,
|
|
1048
|
+
Game,
|
|
1049
|
+
Software,
|
|
1050
|
+
Concept,
|
|
1051
|
+
WebGuide,
|
|
1052
|
+
IntegratedGuide,
|
|
1053
|
+
Merch,
|
|
1054
|
+
ControllerBinding,
|
|
1055
|
+
SteamworksAccessInvite,
|
|
1056
|
+
SteamVideo,
|
|
1057
|
+
GameManagedItem,
|
|
1058
|
+
Max,
|
|
1059
|
+
}
|
|
1060
|
+
|
|
1061
|
+
export interface EndUserLicenseAgreement {
|
|
1062
|
+
id: string;
|
|
1063
|
+
url: string;
|
|
1064
|
+
version: number;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
export interface AppBackupStatus {
|
|
1068
|
+
appid: number;
|
|
1069
|
+
eError: EAppUpdateError;
|
|
1070
|
+
strBytesToProcess: string;
|
|
1071
|
+
strBytesProcessed: string;
|
|
1072
|
+
strTotalBytesWritten: string;
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1075
|
+
|
|
1076
|
+
export enum EAppUpdateError {
|
|
1077
|
+
None,
|
|
1078
|
+
Unspecified,
|
|
1079
|
+
Paused,
|
|
1080
|
+
Canceled,
|
|
1081
|
+
Suspended,
|
|
1082
|
+
NoSubscription,
|
|
1083
|
+
NoConnection,
|
|
1084
|
+
Timeout,
|
|
1085
|
+
MissingKey,
|
|
1086
|
+
MissingConfig,
|
|
1087
|
+
DiskReadFailure,
|
|
1088
|
+
DiskWriteFailure,
|
|
1089
|
+
NotEnoughDiskSpace,
|
|
1090
|
+
CorruptGameFiles,
|
|
1091
|
+
WaitingForNextDisk,
|
|
1092
|
+
InvalidInstallPath,
|
|
1093
|
+
AppRunning,
|
|
1094
|
+
DependencyFailure,
|
|
1095
|
+
NotInstalled,
|
|
1096
|
+
UpdateRequired,
|
|
1097
|
+
Busy,
|
|
1098
|
+
NoDownloadSources,
|
|
1099
|
+
InvalidAppConfig,
|
|
1100
|
+
InvalidDepotConfig,
|
|
1101
|
+
MissingManifest,
|
|
1102
|
+
NotReleased,
|
|
1103
|
+
RegionRestricted,
|
|
1104
|
+
CorruptDepotCache,
|
|
1105
|
+
MissingExecutable,
|
|
1106
|
+
InvalidPlatform,
|
|
1107
|
+
InvalidFileSystem,
|
|
1108
|
+
CorruptUpdateFiles,
|
|
1109
|
+
DownloadDisabled,
|
|
1110
|
+
SharedLibraryLocked,
|
|
1111
|
+
PendingLicense,
|
|
1112
|
+
OtherSessionPlaying,
|
|
1113
|
+
CorruptDownload,
|
|
1114
|
+
CorruptDisk,
|
|
1115
|
+
FilePermissions,
|
|
1116
|
+
FileLocked,
|
|
1117
|
+
MissingContent,
|
|
1118
|
+
Requires64BitOS,
|
|
1119
|
+
MissingUpdateFiles,
|
|
1120
|
+
NotEnoughDiskQuota,
|
|
1121
|
+
LockedSiteLicense,
|
|
1122
|
+
ParentalControlBlocked,
|
|
1123
|
+
CreateProcessFailure,
|
|
1124
|
+
SteamClientOutdated,
|
|
1125
|
+
PlaytimeExceeded,
|
|
1126
|
+
CorruptFileSignature,
|
|
1127
|
+
MissingInstalledFiles,
|
|
1128
|
+
CompatibilityToolFailure,
|
|
1129
|
+
UnmountedUninstallPath,
|
|
1130
|
+
InvalidBackupPath,
|
|
1131
|
+
InvalidPasscode,
|
|
1132
|
+
ThirdPartyUpdater,
|
|
1133
|
+
ParentalPlaytimeExceeded,
|
|
1134
|
+
Max,
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1137
|
+
// TODO: not the actual name
|
|
1138
|
+
export enum ESteamInputController {
|
|
1139
|
+
PlayStation = 1 << 0,
|
|
1140
|
+
Xbox = 1 << 1,
|
|
1141
|
+
Generic = 1 << 2,
|
|
1142
|
+
NintendoSwitch = 1 << 3,
|
|
1143
|
+
}
|
|
1144
|
+
|
|
1145
|
+
type AppPlatform_t = 'windows' | 'osx' | 'linux';
|
|
1146
|
+
|
|
1147
|
+
export interface AppDetails {
|
|
1148
|
+
achievements: AppAchievements;
|
|
1149
|
+
/** Indicates whether the application is available on the store. */
|
|
1150
|
+
bAvailableContentOnStore: boolean;
|
|
1151
|
+
bCanMoveInstallFolder: boolean;
|
|
1152
|
+
bCloudAvailable: boolean;
|
|
1153
|
+
bCloudEnabledForAccount: boolean;
|
|
1154
|
+
bCloudEnabledForApp: boolean;
|
|
1155
|
+
bCloudSyncOnSuspendAvailable: boolean;
|
|
1156
|
+
bCloudSyncOnSuspendEnabled: boolean;
|
|
1157
|
+
/** Indicates whether the application has community market available. */
|
|
1158
|
+
bCommunityMarketPresence: boolean;
|
|
1159
|
+
bEnableAllowDesktopConfiguration: boolean;
|
|
1160
|
+
bFreeRemovableLicense: boolean;
|
|
1161
|
+
bHasAllLegacyCDKeys: boolean;
|
|
1162
|
+
bHasAnyLocalContent: boolean;
|
|
1163
|
+
bHasLockedPrivateBetas: boolean;
|
|
1164
|
+
bIsExcludedFromSharing: boolean;
|
|
1165
|
+
bIsSubscribedTo: boolean;
|
|
1166
|
+
bIsThirdPartyUpdater: boolean;
|
|
1167
|
+
bOverlayEnabled: boolean;
|
|
1168
|
+
bOverrideInternalResolution: boolean;
|
|
1169
|
+
bRequiresLegacyCDKey: boolean;
|
|
1170
|
+
bShortcutIsVR: boolean;
|
|
1171
|
+
bShowCDKeyInMenus: boolean;
|
|
1172
|
+
bShowControllerConfig: boolean;
|
|
1173
|
+
bSupportsCDKeyCopyToClipboard: boolean;
|
|
1174
|
+
bVRGameTheatreEnabled: boolean;
|
|
1175
|
+
bWorkshopVisible: boolean;
|
|
1176
|
+
deckDerivedProperties?: AppDeckDerivedProperties;
|
|
1177
|
+
/**
|
|
1178
|
+
* @see {@link EAppOwnershipFlags}
|
|
1179
|
+
*/
|
|
1180
|
+
eAppOwnershipFlags: number;
|
|
1181
|
+
eAutoUpdateValue: EAppAutoUpdateBehavior;
|
|
1182
|
+
eBackgroundDownloads: EAppAllowDownloadsWhileRunningBehavior;
|
|
1183
|
+
eCloudStatus: EAppCloudStatus;
|
|
1184
|
+
/**
|
|
1185
|
+
* @todo enum
|
|
1186
|
+
*/
|
|
1187
|
+
eCloudSync: number;
|
|
1188
|
+
eControllerRumblePreference: EControllerRumbleSetting;
|
|
1189
|
+
eDisplayStatus: EDisplayStatus;
|
|
1190
|
+
eEnableThirdPartyControllerConfiguration: EThirdPartyControllerConfiguration;
|
|
1191
|
+
/**
|
|
1192
|
+
* @see {@link ESteamInputController}
|
|
1193
|
+
*/
|
|
1194
|
+
eSteamInputControllerMask: number;
|
|
1195
|
+
/**
|
|
1196
|
+
* Index of the install folder. -1 if not installed.
|
|
1197
|
+
*/
|
|
1198
|
+
iInstallFolder: number;
|
|
1199
|
+
/** Disk space required for installation, in bytes. */
|
|
1200
|
+
lDiskSpaceRequiredBytes: number;
|
|
1201
|
+
/** Application disk space usage, in bytes. */
|
|
1202
|
+
lDiskUsageBytes: number;
|
|
1203
|
+
/** DLC disk space usage, in bytes. */
|
|
1204
|
+
lDlcUsageBytes: number;
|
|
1205
|
+
nBuildID: number;
|
|
1206
|
+
nCompatToolPriority: number;
|
|
1207
|
+
/** Total play time, in minutes. */
|
|
1208
|
+
nPlaytimeForever: number;
|
|
1209
|
+
/** Screenshot count. */
|
|
1210
|
+
nScreenshots: number;
|
|
1211
|
+
rtLastTimePlayed: number;
|
|
1212
|
+
rtLastUpdated: number;
|
|
1213
|
+
rtPurchased: number;
|
|
1214
|
+
selectedLanguage: AppLanguage;
|
|
1215
|
+
strCloudBytesAvailable: string;
|
|
1216
|
+
strCloudBytesUsed: string;
|
|
1217
|
+
strCompatToolDisplayName: string;
|
|
1218
|
+
strCompatToolName: string;
|
|
1219
|
+
strDeveloperName: string;
|
|
1220
|
+
strDeveloperURL: string;
|
|
1221
|
+
strDisplayName: string;
|
|
1222
|
+
strExternalSubscriptionURL: string;
|
|
1223
|
+
strFlatpakAppID: string;
|
|
1224
|
+
strHomepageURL: string;
|
|
1225
|
+
strLaunchOptions: string;
|
|
1226
|
+
strManualURL: string;
|
|
1227
|
+
/** Steam64 ID. */
|
|
1228
|
+
strOwnerSteamID: string;
|
|
1229
|
+
strResolutionOverride: string;
|
|
1230
|
+
strSelectedBeta: string;
|
|
1231
|
+
strShortcutExe: string;
|
|
1232
|
+
strShortcutLaunchOptions: string;
|
|
1233
|
+
strShortcutStartDir: string;
|
|
1234
|
+
strSteamDeckBlogURL: string;
|
|
1235
|
+
unAppID: number;
|
|
1236
|
+
unEntitledContentApp: number;
|
|
1237
|
+
unTimedTrialSecondsAllowed: number;
|
|
1238
|
+
unTimedTrialSecondsPlayed: number;
|
|
1239
|
+
vecBetas: AppBeta[];
|
|
1240
|
+
vecChildConfigApps: number[];
|
|
1241
|
+
vecDLC: AppDLC[];
|
|
1242
|
+
vecDeckCompatTestResults: DeckCompatTestResult[];
|
|
1243
|
+
vecLanguages: AppLanguage[];
|
|
1244
|
+
vecLegacyCDKeys: LegacyCDKey[];
|
|
1245
|
+
vecMusicAlbums: AppSoundtrack[];
|
|
1246
|
+
vecPlatforms: AppPlatform_t[];
|
|
1247
|
+
vecScreenShots: Screenshot[];
|
|
1248
|
+
libraryAssets?: AppLibraryAsset;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
interface AppAssociation {
|
|
1252
|
+
strName: string;
|
|
1253
|
+
strURL: string;
|
|
1254
|
+
}
|
|
1255
|
+
|
|
1256
|
+
export interface AppAssociations {
|
|
1257
|
+
rgDevelopers: AppAssociation[];
|
|
1258
|
+
rgFranchises: AppAssociation[];
|
|
1259
|
+
rgPublishers: AppAssociation[];
|
|
1260
|
+
}
|
|
1261
|
+
|
|
1262
|
+
export interface BadgeCard {
|
|
1263
|
+
nOwned: number;
|
|
1264
|
+
strArtworkURL: string;
|
|
1265
|
+
strImgURL: string;
|
|
1266
|
+
strMarketHash: string;
|
|
1267
|
+
strName: string;
|
|
1268
|
+
strTitle: string;
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1271
|
+
export interface Badge {
|
|
1272
|
+
bMaxed: VDFBoolean_t;
|
|
1273
|
+
dtNextRetry: number | null;
|
|
1274
|
+
nLevel: number;
|
|
1275
|
+
nMaxLevel: number;
|
|
1276
|
+
nNextLevelXP: number;
|
|
1277
|
+
nXP: number;
|
|
1278
|
+
rgCards: BadgeCard[];
|
|
1279
|
+
strIconURL: string;
|
|
1280
|
+
strName: string;
|
|
1281
|
+
strNextLevelName: string;
|
|
1282
|
+
}
|
|
1283
|
+
|
|
1284
|
+
interface AppDescription {
|
|
1285
|
+
/**
|
|
1286
|
+
* Full app description. Note that it uses BB code and so must be rendered.
|
|
1287
|
+
*/
|
|
1288
|
+
strFullDescription: string;
|
|
1289
|
+
|
|
1290
|
+
/**
|
|
1291
|
+
* Short game description.
|
|
1292
|
+
*/
|
|
1293
|
+
strSnippet: string;
|
|
1294
|
+
}
|
|
1295
|
+
|
|
1296
|
+
interface CachedAppDetailMap {
|
|
1297
|
+
/**
|
|
1298
|
+
* Stringified JSON data of achievements.
|
|
1299
|
+
*/
|
|
1300
|
+
achievementmap: string;
|
|
1301
|
+
achievements: AppAchievements;
|
|
1302
|
+
associations: AppAssociations;
|
|
1303
|
+
badge: Badge;
|
|
1304
|
+
descriptions: AppDescription;
|
|
1305
|
+
gameactivity: any[];
|
|
1306
|
+
/**
|
|
1307
|
+
* Each string is a base64 encoded binary data.
|
|
1308
|
+
*/
|
|
1309
|
+
usernews: string[];
|
|
1310
|
+
workshop_trendy_items: any;
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
export type CachedAppDetails = {
|
|
1314
|
+
[K in keyof CachedAppDetailMap]: {
|
|
1315
|
+
version: number;
|
|
1316
|
+
data: CachedAppDetailMap[K];
|
|
1317
|
+
};
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
export interface AppDeckDerivedProperties {
|
|
1321
|
+
gamescope_frame_limiter_not_supported?: boolean;
|
|
1322
|
+
non_deck_display_glyphs: boolean;
|
|
1323
|
+
primary_player_is_controller_slot_0: boolean;
|
|
1324
|
+
requires_h264: boolean;
|
|
1325
|
+
requires_internet_for_setup: boolean;
|
|
1326
|
+
requires_internet_for_singleplayer: boolean;
|
|
1327
|
+
requires_manual_keyboard_invoke: false;
|
|
1328
|
+
requires_non_controller_launcher_nav: false;
|
|
1329
|
+
small_text: boolean;
|
|
1330
|
+
supported_input: number;
|
|
1331
|
+
}
|
|
1332
|
+
|
|
1333
|
+
export enum EAppOwnershipFlags {
|
|
1334
|
+
None,
|
|
1335
|
+
Subscribed = 1 << 0,
|
|
1336
|
+
Free = 1 << 1,
|
|
1337
|
+
RegionRestricted = 1 << 2,
|
|
1338
|
+
LowViolence = 1 << 3,
|
|
1339
|
+
InvalidPlatform = 1 << 4,
|
|
1340
|
+
Borrowed = 1 << 5,
|
|
1341
|
+
FreeWeekend = 1 << 6,
|
|
1342
|
+
Retail = 1 << 7,
|
|
1343
|
+
Locked = 1 << 8,
|
|
1344
|
+
Pending = 1 << 9,
|
|
1345
|
+
Expired = 1 << 10,
|
|
1346
|
+
Permanent = 1 << 11,
|
|
1347
|
+
Recurring = 1 << 12,
|
|
1348
|
+
Canceled = 1 << 13,
|
|
1349
|
+
AutoGrant = 1 << 14,
|
|
1350
|
+
PendingGift = 1 << 15,
|
|
1351
|
+
RentalNotActivated = 1 << 16,
|
|
1352
|
+
Rental = 1 << 17,
|
|
1353
|
+
SiteLicense = 1 << 18,
|
|
1354
|
+
LegacyFreeSub = 1 << 19,
|
|
1355
|
+
InvalidOSType = 1 << 20,
|
|
1356
|
+
TimedTrial = 1 << 21,
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
export enum EAppAutoUpdateBehavior {
|
|
1360
|
+
Always,
|
|
1361
|
+
Launch,
|
|
1362
|
+
HighPriority,
|
|
1363
|
+
}
|
|
1364
|
+
|
|
1365
|
+
export enum EAppAllowDownloadsWhileRunningBehavior {
|
|
1366
|
+
UseGlobal,
|
|
1367
|
+
AlwaysAllow,
|
|
1368
|
+
NeverAllow,
|
|
1369
|
+
}
|
|
1370
|
+
|
|
1371
|
+
export enum EDisplayStatus {
|
|
1372
|
+
Invalid,
|
|
1373
|
+
Launching,
|
|
1374
|
+
Uninstalling,
|
|
1375
|
+
Installing,
|
|
1376
|
+
Running,
|
|
1377
|
+
Validating,
|
|
1378
|
+
Updating,
|
|
1379
|
+
Downloading,
|
|
1380
|
+
Synchronizing,
|
|
1381
|
+
ReadyToInstall,
|
|
1382
|
+
ReadyToPreload,
|
|
1383
|
+
ReadyToLaunch,
|
|
1384
|
+
RegionRestricted,
|
|
1385
|
+
PresaleOnly,
|
|
1386
|
+
InvalidPlatform,
|
|
1387
|
+
// ty valve
|
|
1388
|
+
PreloadComplete = 16,
|
|
1389
|
+
BorrowerLocked,
|
|
1390
|
+
UpdatePaused,
|
|
1391
|
+
UpdateQueued,
|
|
1392
|
+
UpdateRequired,
|
|
1393
|
+
UpdateDisabled,
|
|
1394
|
+
DownloadPaused,
|
|
1395
|
+
DownloadQueued,
|
|
1396
|
+
DownloadRequired,
|
|
1397
|
+
DownloadDisabled,
|
|
1398
|
+
LicensePending,
|
|
1399
|
+
LicenseExpired,
|
|
1400
|
+
AvailForFree,
|
|
1401
|
+
AvailToBorrow,
|
|
1402
|
+
AvailGuestPass,
|
|
1403
|
+
Purchase,
|
|
1404
|
+
Unavailable,
|
|
1405
|
+
NotLaunchable,
|
|
1406
|
+
CloudError,
|
|
1407
|
+
CloudOutOfDate,
|
|
1408
|
+
Terminating,
|
|
1409
|
+
OwnerLocked,
|
|
1410
|
+
DownloadFailed,
|
|
1411
|
+
UpdateFailed,
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
export enum ESteamDeckCompatibilityTestResult {
|
|
1415
|
+
Invalid,
|
|
1416
|
+
NotApplicable,
|
|
1417
|
+
Pass,
|
|
1418
|
+
Fail,
|
|
1419
|
+
FailMinor,
|
|
1420
|
+
}
|
|
1421
|
+
|
|
1422
|
+
export interface AppLanguage {
|
|
1423
|
+
strDisplayName: string;
|
|
1424
|
+
/** A localization string for the language. */
|
|
1425
|
+
strShortName: string;
|
|
1426
|
+
}
|
|
1427
|
+
|
|
1428
|
+
export interface LegacyCDKey {
|
|
1429
|
+
eResult: EResult;
|
|
1430
|
+
strKey: string;
|
|
1431
|
+
strName: string;
|
|
1432
|
+
}
|
|
1433
|
+
|
|
1434
|
+
export interface AppBeta {
|
|
1435
|
+
/** Beta name. */
|
|
1436
|
+
strName: string;
|
|
1437
|
+
/** Beta description. */
|
|
1438
|
+
strDescription: string;
|
|
1439
|
+
}
|
|
1440
|
+
|
|
1441
|
+
export interface AppDLC {
|
|
1442
|
+
/** Is the DLC availble on the store? */
|
|
1443
|
+
bAvailableOnStore: boolean;
|
|
1444
|
+
bEnabled: boolean;
|
|
1445
|
+
/** Disk usage, in bytes. */
|
|
1446
|
+
lDiskUsageBytes: number;
|
|
1447
|
+
/** Purchase date. */
|
|
1448
|
+
rtPurchaseDate: number;
|
|
1449
|
+
rtStoreAssetModifyType: number;
|
|
1450
|
+
/** Store header image filename. */
|
|
1451
|
+
strHeaderFilename: string;
|
|
1452
|
+
/** Display name. */
|
|
1453
|
+
strName: string;
|
|
1454
|
+
/** State (installed/notinstalled). */
|
|
1455
|
+
strState: string;
|
|
1456
|
+
/** App ID. */
|
|
1457
|
+
unAppID: number;
|
|
1458
|
+
}
|
|
1459
|
+
|
|
1460
|
+
export interface DeckCompatTestResult {
|
|
1461
|
+
test_result: ESteamDeckCompatibilityTestResult;
|
|
1462
|
+
/** A localization string. */
|
|
1463
|
+
test_loc_token: string;
|
|
1464
|
+
}
|
|
1465
|
+
|
|
1466
|
+
export interface AppSoundtrack {
|
|
1467
|
+
/** Purchase date. */
|
|
1468
|
+
rtPurchaseDate: number;
|
|
1469
|
+
rtStoreAssetModifyType: number;
|
|
1470
|
+
/** Display name. */
|
|
1471
|
+
strName: string;
|
|
1472
|
+
/** State (installed/notinstalled). */
|
|
1473
|
+
strState: string;
|
|
1474
|
+
/** App ID. */
|
|
1475
|
+
unAppID: number;
|
|
1476
|
+
}
|
|
1477
|
+
|
|
1478
|
+
export interface AppLibraryAsset {
|
|
1479
|
+
logoPosition?: LogoPosition;
|
|
1480
|
+
strCapsuleImage: string;
|
|
1481
|
+
strHeroBlurImage: string;
|
|
1482
|
+
strHeroImage: string;
|
|
1483
|
+
strLogoImage: string;
|
|
1484
|
+
}
|
|
1485
|
+
|
|
1486
|
+
export interface LogoPosition {
|
|
1487
|
+
pinnedPosition: LogoPinPosition_t;
|
|
1488
|
+
nWidthPct: number;
|
|
1489
|
+
nHeightPct: number;
|
|
1490
|
+
}
|
|
1491
|
+
|
|
1492
|
+
export type LogoPinPosition_t = 'BottomLeft' | 'UpperLeft' | 'CenterCenter' | 'UpperCenter' | 'BottomCenter';
|
|
1493
|
+
|
|
1494
|
+
export enum ELaunchSource {
|
|
1495
|
+
None,
|
|
1496
|
+
_2ftLibraryDetails = 100,
|
|
1497
|
+
_2ftLibraryListView,
|
|
1498
|
+
_2ftLibraryGrid,
|
|
1499
|
+
InstallSubComplete,
|
|
1500
|
+
DownloadsPage,
|
|
1501
|
+
RemoteClientStartStreaming,
|
|
1502
|
+
_2ftMiniModeList,
|
|
1503
|
+
_10ft = 200,
|
|
1504
|
+
DashAppLaunchCmdLine = 300,
|
|
1505
|
+
DashGameIdLaunchCmdLine,
|
|
1506
|
+
RunByGameDir,
|
|
1507
|
+
SubCmdRunDashGame,
|
|
1508
|
+
SteamURL_Launch = 400,
|
|
1509
|
+
SteamURL_Run,
|
|
1510
|
+
SteamURL_JoinLobby,
|
|
1511
|
+
SteamURL_RunGame,
|
|
1512
|
+
SteamURL_RunGameIdOrJumplist,
|
|
1513
|
+
SteamURL_RunSafe,
|
|
1514
|
+
TrayIcon = 500,
|
|
1515
|
+
LibraryLeftColumnContextMenu = 600,
|
|
1516
|
+
LibraryLeftColumnDoubleClick,
|
|
1517
|
+
Dota2Launcher = 700,
|
|
1518
|
+
IRunGameEngine = 800,
|
|
1519
|
+
DRMFailureResponse,
|
|
1520
|
+
DRMDataRequest,
|
|
1521
|
+
CloudFilePanel,
|
|
1522
|
+
DiscoveredAlreadyRunning,
|
|
1523
|
+
GameActionJoinParty = 900,
|
|
1524
|
+
AppPortraitContextMenu = 1000,
|
|
1525
|
+
}
|
|
1526
|
+
|
|
1527
|
+
export interface NonSteamApp {
|
|
1528
|
+
bIsApplication: boolean;
|
|
1529
|
+
strAppName: string;
|
|
1530
|
+
strExePath: string;
|
|
1531
|
+
strArguments: string;
|
|
1532
|
+
strCmdline: string;
|
|
1533
|
+
strIconDataBase64: string | undefined;
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
export interface Shortcut extends NonSteamApp {
|
|
1537
|
+
strShortcutPath: string | undefined;
|
|
1538
|
+
strSortAs: string | undefined;
|
|
1539
|
+
}
|
|
1540
|
+
|
|
1541
|
+
export interface LogoPositionForApp {
|
|
1542
|
+
nVersion: number; // Usually 1
|
|
1543
|
+
logoPosition: LogoPosition;
|
|
1544
|
+
}
|
|
1545
|
+
|
|
1546
|
+
export interface CLibraryBootstrapData extends JsPbMessage {
|
|
1547
|
+
app_data(): AppBootstrapData[];
|
|
1548
|
+
|
|
1549
|
+
add_app_data(param0: any, param1: any): any;
|
|
1550
|
+
|
|
1551
|
+
set_app_data(param0: any): any;
|
|
1552
|
+
}
|
|
1553
|
+
|
|
1554
|
+
export interface AppBootstrapData {
|
|
1555
|
+
appid: number;
|
|
1556
|
+
hidden: boolean;
|
|
1557
|
+
user_tag: string[];
|
|
1558
|
+
}
|
|
1559
|
+
|
|
1560
|
+
export interface CAppOverview_Change extends JsPbMessage {
|
|
1561
|
+
app_overview(): SteamAppOverview[];
|
|
1562
|
+
|
|
1563
|
+
full_update(): boolean;
|
|
1564
|
+
|
|
1565
|
+
removed_appid(): number[];
|
|
1566
|
+
|
|
1567
|
+
update_complete(): boolean;
|
|
1568
|
+
|
|
1569
|
+
add_app_overview(param0: any, param1: any): any;
|
|
1570
|
+
|
|
1571
|
+
add_removed_appid(param0: any, param1: any): any;
|
|
1572
|
+
|
|
1573
|
+
set_app_overview(param0: any): any;
|
|
1574
|
+
|
|
1575
|
+
set_full_update(param0: any): any;
|
|
1576
|
+
|
|
1577
|
+
set_removed_appid(param0: any): any;
|
|
1578
|
+
|
|
1579
|
+
set_update_complete(param0: any): any;
|
|
1580
|
+
}
|
|
1581
|
+
|
|
1582
|
+
export enum ECloudPendingRemoteOperation {
|
|
1583
|
+
None,
|
|
1584
|
+
AppSessionActive,
|
|
1585
|
+
UploadInProgress,
|
|
1586
|
+
UploadPending,
|
|
1587
|
+
AppSessionSuspended,
|
|
1588
|
+
}
|
|
1589
|
+
|
|
1590
|
+
export interface CCloud_PendingRemoteOperation {
|
|
1591
|
+
operation(): ECloudPendingRemoteOperation;
|
|
1592
|
+
machine_name(): string;
|
|
1593
|
+
client_id(): number;
|
|
1594
|
+
time_last_updated(): number;
|
|
1595
|
+
os_type(): number;
|
|
1596
|
+
device_type(): number;
|
|
1597
|
+
}
|
|
1598
|
+
|
|
1599
|
+
export interface CMsgCloudPendingRemoteOperations extends JsPbMessage {
|
|
1600
|
+
operations: CCloud_PendingRemoteOperation[];
|
|
1601
|
+
}
|
|
1602
|
+
|
|
1603
|
+
// Appears to be all optional fields :disaster:
|
|
1604
|
+
export interface SteamAppOverview {
|
|
1605
|
+
appid: number;
|
|
1606
|
+
display_name: string;
|
|
1607
|
+
visible_in_game_list: boolean;
|
|
1608
|
+
sort_as: string;
|
|
1609
|
+
|
|
1610
|
+
/*
|
|
1611
|
+
* Possible bitmask values, but I haven't spotted any of them being masked in the app_type field.
|
|
1612
|
+
* Should be safe as an enum.
|
|
1613
|
+
*/
|
|
1614
|
+
app_type: EAppType;
|
|
1615
|
+
mru_index: number | undefined;
|
|
1616
|
+
rt_recent_activity_time: number;
|
|
1617
|
+
minutes_playtime_forever: number;
|
|
1618
|
+
minutes_playtime_last_two_weeks: number;
|
|
1619
|
+
rt_last_time_played_or_installed: number;
|
|
1620
|
+
rt_last_time_played: number;
|
|
1621
|
+
store_tag?: number[];
|
|
1622
|
+
association: SteamAppOverviewAssociation[];
|
|
1623
|
+
store_category?: number[];
|
|
1624
|
+
rt_original_release_date: number;
|
|
1625
|
+
rt_steam_release_date: number;
|
|
1626
|
+
icon_hash: string;
|
|
1627
|
+
controller_support?: EAppControllerSupportLevel; // default none
|
|
1628
|
+
vr_supported?: boolean;
|
|
1629
|
+
metacritic_score: number;
|
|
1630
|
+
size_on_disk?: number;
|
|
1631
|
+
third_party_mod?: boolean;
|
|
1632
|
+
icon_data?: string;
|
|
1633
|
+
icon_data_format?: string;
|
|
1634
|
+
gameid: string;
|
|
1635
|
+
library_capsule_filename?: string;
|
|
1636
|
+
per_client_data: SteamAppOverviewRemoteClientData[];
|
|
1637
|
+
most_available_clientid: string;
|
|
1638
|
+
selected_clientid?: string;
|
|
1639
|
+
rt_store_asset_mtime: number;
|
|
1640
|
+
rt_custom_image_mtime?: number;
|
|
1641
|
+
optional_parent_app_id?: number;
|
|
1642
|
+
owner_account_id?: number;
|
|
1643
|
+
review_score_with_bombs: number;
|
|
1644
|
+
review_percentage_with_bombs: number;
|
|
1645
|
+
review_score_without_bombs: number;
|
|
1646
|
+
review_percentage_without_bombs: number;
|
|
1647
|
+
library_id?: string;
|
|
1648
|
+
vr_only?: boolean;
|
|
1649
|
+
mastersub_appid?: number;
|
|
1650
|
+
mastersub_includedwith_logo?: string;
|
|
1651
|
+
site_license_site_name?: string;
|
|
1652
|
+
shortcut_override_appid?: number;
|
|
1653
|
+
steam_deck_compat_category: ESteamDeckCompatibilityCategory; // Default should be Unknown
|
|
1654
|
+
rt_last_time_locally_played?: number;
|
|
1655
|
+
rt_purchased_time: number;
|
|
1656
|
+
header_filename?: string;
|
|
1657
|
+
local_cache_version?: number;
|
|
1658
|
+
ps4_controller_support?: EAppControllerSupportLevel;
|
|
1659
|
+
ps5_controller_support?: EAppControllerSupportLevel;
|
|
1660
|
+
gamepad_preferred?: boolean;
|
|
1661
|
+
canonicalAppType: number;
|
|
1662
|
+
local_per_client_data: SteamAppOverviewRemoteClientData;
|
|
1663
|
+
most_available_per_client_data: SteamAppOverviewRemoteClientData;
|
|
1664
|
+
selected_per_client_data: SteamAppOverviewRemoteClientData;
|
|
1665
|
+
}
|
|
1666
|
+
|
|
1667
|
+
export enum EAppType {
|
|
1668
|
+
DepotOnly = -2147483648,
|
|
1669
|
+
Invalid = 0,
|
|
1670
|
+
Game = 1 << 0,
|
|
1671
|
+
Application = 1 << 1,
|
|
1672
|
+
Tool = 1 << 2,
|
|
1673
|
+
Demo = 1 << 3,
|
|
1674
|
+
Deprecated = 1 << 4,
|
|
1675
|
+
DLC = 1 << 5,
|
|
1676
|
+
Guide = 1 << 6,
|
|
1677
|
+
Driver = 1 << 7,
|
|
1678
|
+
Config = 1 << 8,
|
|
1679
|
+
Hardware = 1 << 9,
|
|
1680
|
+
Franchise = 1 << 10,
|
|
1681
|
+
Video = 1 << 11,
|
|
1682
|
+
Plugin = 1 << 12,
|
|
1683
|
+
MusicAlbum = 1 << 13,
|
|
1684
|
+
Series = 1 << 14,
|
|
1685
|
+
Comic = 1 << 15,
|
|
1686
|
+
Beta = 1 << 16,
|
|
1687
|
+
Shortcut = 1073741824,
|
|
1688
|
+
}
|
|
1689
|
+
|
|
1690
|
+
export interface SteamAppOverviewAssociation {
|
|
1691
|
+
type: EAppAssociationType; // Default should be Invalid
|
|
1692
|
+
name: string;
|
|
1693
|
+
}
|
|
1694
|
+
|
|
1695
|
+
export enum EAppAssociationType {
|
|
1696
|
+
Invalid,
|
|
1697
|
+
Publisher,
|
|
1698
|
+
Developer,
|
|
1699
|
+
Franchise,
|
|
1700
|
+
}
|
|
1701
|
+
|
|
1702
|
+
export enum EAppControllerSupportLevel {
|
|
1703
|
+
None,
|
|
1704
|
+
Partial,
|
|
1705
|
+
Full,
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1708
|
+
export interface SteamAppOverviewRemoteClientData {
|
|
1709
|
+
clientid: string;
|
|
1710
|
+
client_name: string;
|
|
1711
|
+
display_status: EDisplayStatus; // Default should be Invalid
|
|
1712
|
+
status_percentage: number;
|
|
1713
|
+
active_beta?: string;
|
|
1714
|
+
installed?: boolean;
|
|
1715
|
+
bytes_downloaded: string;
|
|
1716
|
+
bytes_total: string;
|
|
1717
|
+
streaming_to_local_client?: boolean;
|
|
1718
|
+
is_available_on_current_platform: boolean;
|
|
1719
|
+
is_invalid_os_type?: boolean;
|
|
1720
|
+
playtime_left?: number;
|
|
1721
|
+
cloud_status: EAppCloudStatus;
|
|
1722
|
+
}
|
|
1723
|
+
|
|
1724
|
+
export enum ESteamDeckCompatibilityCategory {
|
|
1725
|
+
Unknown,
|
|
1726
|
+
Unsupported,
|
|
1727
|
+
Playable,
|
|
1728
|
+
Verified,
|
|
1729
|
+
}
|
|
1730
|
+
|
|
1731
|
+
export enum EAppCloudStatus {
|
|
1732
|
+
Invalid,
|
|
1733
|
+
Disabled,
|
|
1734
|
+
Unknown,
|
|
1735
|
+
Synchronized,
|
|
1736
|
+
Checking,
|
|
1737
|
+
OutOfSync,
|
|
1738
|
+
Uploading,
|
|
1739
|
+
Downloading,
|
|
1740
|
+
SyncFailed,
|
|
1741
|
+
Conflict,
|
|
1742
|
+
PendingElsewhere,
|
|
1743
|
+
}
|
|
1744
|
+
|
|
1745
|
+
export enum ERaiseGameWindowResult {
|
|
1746
|
+
NotRunning = 1,
|
|
1747
|
+
Success,
|
|
1748
|
+
Failure,
|
|
1749
|
+
}
|