steamworks-ffi-node 0.4.0 → 0.4.2
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/README.md +25 -24
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -7
- package/dist/index.js.map +1 -1
- package/dist/internal/SteamLeaderboardManager.d.ts.map +1 -1
- package/dist/internal/SteamLeaderboardManager.js.map +1 -1
- package/dist/internal/SteamLibraryLoader.d.ts +1 -0
- package/dist/internal/SteamLibraryLoader.d.ts.map +1 -1
- package/dist/internal/SteamLibraryLoader.js +2 -0
- package/dist/internal/SteamLibraryLoader.js.map +1 -1
- package/dist/internal/SteamStatsManager.d.ts +37 -0
- package/dist/internal/SteamStatsManager.d.ts.map +1 -1
- package/dist/internal/SteamStatsManager.js +80 -0
- package/dist/internal/SteamStatsManager.js.map +1 -1
- package/dist/steam.d.ts +102 -319
- package/dist/steam.d.ts.map +1 -1
- package/dist/steam.js +23 -418
- package/dist/steam.js.map +1 -1
- package/dist/types/achievements.d.ts +49 -0
- package/dist/types/achievements.d.ts.map +1 -0
- package/dist/types/achievements.js +6 -0
- package/dist/types/achievements.js.map +1 -0
- package/dist/types/core.d.ts +18 -0
- package/dist/types/core.d.ts.map +1 -0
- package/dist/types/core.js +6 -0
- package/dist/types/core.js.map +1 -0
- package/dist/types/index.d.ts +14 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +34 -0
- package/dist/types/index.js.map +1 -0
- package/dist/{types.d.ts → types/leaderboards.d.ts} +30 -60
- package/dist/types/leaderboards.d.ts.map +1 -0
- package/dist/{types.js → types/leaderboards.js} +16 -8
- package/dist/types/leaderboards.js.map +1 -0
- package/dist/types/stats.d.ts +46 -0
- package/dist/types/stats.d.ts.map +1 -0
- package/dist/types/stats.js +6 -0
- package/dist/types/stats.js.map +1 -0
- package/package.json +1 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/steamworks_sdk/README.md +0 -82
package/dist/steam.d.ts
CHANGED
|
@@ -1,366 +1,149 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SteamInitOptions, SteamStatus } from './types';
|
|
2
|
+
import { SteamAchievementManager } from './internal/SteamAchievementManager';
|
|
3
|
+
import { SteamStatsManager } from './internal/SteamStatsManager';
|
|
4
|
+
import { SteamLeaderboardManager } from './internal/SteamLeaderboardManager';
|
|
2
5
|
/**
|
|
3
6
|
* Real Steamworks SDK implementation using Koffi FFI
|
|
4
7
|
* This connects directly to the actual Steam client and Steamworks SDK
|
|
5
8
|
*
|
|
6
|
-
* Uses composition pattern with specialized
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
9
|
-
* -
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* Uses composition pattern with specialized managers:
|
|
10
|
+
* - achievements: SteamAchievementManager - All achievement operations
|
|
11
|
+
* - stats: SteamStatsManager - All stats operations
|
|
12
|
+
* - leaderboards: SteamLeaderboardManager - All leaderboard operations
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const steam = Steam.getInstance();
|
|
17
|
+
* steam.init({ appId: 480 });
|
|
18
|
+
*
|
|
19
|
+
* // Use managers directly
|
|
20
|
+
* await steam.achievements.unlockAchievement('ACH_WIN_ONE_GAME');
|
|
21
|
+
* await steam.stats.setStatInt('NumGames', 1);
|
|
22
|
+
* await steam.leaderboards.uploadScore(handle, 1000, KeepBest);
|
|
23
|
+
* ```
|
|
12
24
|
*/
|
|
13
25
|
declare class SteamworksSDK {
|
|
14
26
|
private static instance;
|
|
15
27
|
private libraryLoader;
|
|
16
28
|
private apiCore;
|
|
17
|
-
private achievementManager;
|
|
18
|
-
private statsManager;
|
|
19
|
-
private leaderboardManager;
|
|
20
|
-
private constructor();
|
|
21
|
-
static getInstance(): SteamworksSDK;
|
|
22
|
-
/**
|
|
23
|
-
* Initialize Steam API with real Steamworks SDK
|
|
24
|
-
*/
|
|
25
|
-
init(options: SteamInitOptions): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Shutdown Steam API
|
|
28
|
-
*/
|
|
29
|
-
shutdown(): void;
|
|
30
|
-
/**
|
|
31
|
-
* Get current Steam status
|
|
32
|
-
*/
|
|
33
|
-
getStatus(): SteamStatus;
|
|
34
|
-
/**
|
|
35
|
-
* Get all achievements from Steam
|
|
36
|
-
*/
|
|
37
|
-
getAllAchievements(): Promise<SteamAchievement[]>;
|
|
38
|
-
/**
|
|
39
|
-
* Unlock achievement in Steam
|
|
40
|
-
*/
|
|
41
|
-
unlockAchievement(achievementName: string): Promise<boolean>;
|
|
42
29
|
/**
|
|
43
|
-
*
|
|
44
|
-
*/
|
|
45
|
-
clearAchievement(achievementName: string): Promise<boolean>;
|
|
46
|
-
/**
|
|
47
|
-
* Check if achievement is unlocked
|
|
48
|
-
*/
|
|
49
|
-
isAchievementUnlocked(achievementName: string): Promise<boolean>;
|
|
50
|
-
/**
|
|
51
|
-
* Get achievement by API name
|
|
52
|
-
*/
|
|
53
|
-
getAchievementByName(achievementName: string): Promise<SteamAchievement | null>;
|
|
54
|
-
/**
|
|
55
|
-
* Get total number of achievements
|
|
56
|
-
*/
|
|
57
|
-
getTotalAchievementCount(): Promise<number>;
|
|
58
|
-
/**
|
|
59
|
-
* Get number of unlocked achievements
|
|
60
|
-
*/
|
|
61
|
-
getUnlockedAchievementCount(): Promise<number>;
|
|
62
|
-
/**
|
|
63
|
-
* Run Steam callbacks to process pending events
|
|
64
|
-
*/
|
|
65
|
-
runCallbacks(): void;
|
|
66
|
-
/**
|
|
67
|
-
* Check if Steam client is running
|
|
68
|
-
*/
|
|
69
|
-
isSteamRunning(): boolean;
|
|
70
|
-
/**
|
|
71
|
-
* Get achievement icon handle for use with ISteamUtils::GetImageRGBA()
|
|
72
|
-
*/
|
|
73
|
-
getAchievementIcon(achievementName: string): Promise<number>;
|
|
74
|
-
/**
|
|
75
|
-
* Show achievement progress notification in Steam overlay
|
|
76
|
-
*/
|
|
77
|
-
indicateAchievementProgress(achievementName: string, currentProgress: number, maxProgress: number): Promise<boolean>;
|
|
78
|
-
/**
|
|
79
|
-
* Get all achievements with icon handles
|
|
80
|
-
*/
|
|
81
|
-
getAllAchievementsWithIcons(): Promise<AchievementWithIcon[]>;
|
|
82
|
-
/**
|
|
83
|
-
* Get achievement progress limits (integer-based)
|
|
84
|
-
*/
|
|
85
|
-
getAchievementProgressLimitsInt(achievementName: string): Promise<AchievementProgressLimits | null>;
|
|
86
|
-
/**
|
|
87
|
-
* Get achievement progress limits (float-based)
|
|
88
|
-
*/
|
|
89
|
-
getAchievementProgressLimitsFloat(achievementName: string): Promise<AchievementProgressLimits | null>;
|
|
90
|
-
/**
|
|
91
|
-
* Request achievement stats for another user (friend)
|
|
92
|
-
* This is async - wait for callback before calling getUserAchievement()
|
|
93
|
-
*/
|
|
94
|
-
requestUserStats(steamId: string): Promise<boolean>;
|
|
95
|
-
/**
|
|
96
|
-
* Get achievement status for another user (friend)
|
|
97
|
-
* Must call requestUserStats() first and wait for callback
|
|
98
|
-
*/
|
|
99
|
-
getUserAchievement(steamId: string, achievementName: string): Promise<UserAchievement | null>;
|
|
100
|
-
/**
|
|
101
|
-
* Request global achievement percentages from Steam
|
|
102
|
-
* This is async - wait for callback before calling other global stats methods
|
|
103
|
-
*/
|
|
104
|
-
requestGlobalAchievementPercentages(): Promise<boolean>;
|
|
105
|
-
/**
|
|
106
|
-
* Get percentage of users who unlocked a specific achievement
|
|
107
|
-
* Must call requestGlobalAchievementPercentages() first
|
|
108
|
-
*/
|
|
109
|
-
getAchievementAchievedPercent(achievementName: string): Promise<number | null>;
|
|
110
|
-
/**
|
|
111
|
-
* Get all achievements with global unlock percentages
|
|
112
|
-
* Must call requestGlobalAchievementPercentages() first
|
|
113
|
-
*/
|
|
114
|
-
getAllAchievementsWithGlobalStats(): Promise<AchievementGlobalStats[]>;
|
|
115
|
-
/**
|
|
116
|
-
* Get most achieved achievement
|
|
117
|
-
*/
|
|
118
|
-
getMostAchievedAchievementInfo(): Promise<{
|
|
119
|
-
apiName: string;
|
|
120
|
-
percent: number;
|
|
121
|
-
unlocked: boolean;
|
|
122
|
-
iterator: number;
|
|
123
|
-
} | null>;
|
|
124
|
-
/**
|
|
125
|
-
* Get next most achieved achievement (iterate by popularity)
|
|
126
|
-
*/
|
|
127
|
-
getNextMostAchievedAchievementInfo(previousIterator: number): Promise<{
|
|
128
|
-
apiName: string;
|
|
129
|
-
percent: number;
|
|
130
|
-
unlocked: boolean;
|
|
131
|
-
iterator: number;
|
|
132
|
-
} | null>;
|
|
133
|
-
/**
|
|
134
|
-
* Get all achievements sorted by global popularity (most achieved first)
|
|
135
|
-
* Must call requestGlobalAchievementPercentages() first
|
|
136
|
-
*/
|
|
137
|
-
getAllAchievementsSortedByPopularity(): Promise<AchievementGlobalStats[]>;
|
|
138
|
-
/**
|
|
139
|
-
* Reset all stats and optionally achievements
|
|
140
|
-
* WARNING: This clears ALL user stats and achievements!
|
|
141
|
-
*/
|
|
142
|
-
resetAllStats(includeAchievements?: boolean): Promise<boolean>;
|
|
143
|
-
/**
|
|
144
|
-
* Get an integer stat value
|
|
145
|
-
*/
|
|
146
|
-
getStatInt(statName: string): Promise<SteamStat | null>;
|
|
147
|
-
/**
|
|
148
|
-
* Get a float stat value
|
|
149
|
-
*/
|
|
150
|
-
getStatFloat(statName: string): Promise<SteamStat | null>;
|
|
151
|
-
/**
|
|
152
|
-
* Set an integer stat value
|
|
153
|
-
*/
|
|
154
|
-
setStatInt(statName: string, value: number): Promise<boolean>;
|
|
155
|
-
/**
|
|
156
|
-
* Set a float stat value
|
|
157
|
-
*/
|
|
158
|
-
setStatFloat(statName: string, value: number): Promise<boolean>;
|
|
159
|
-
/**
|
|
160
|
-
* Update an average rate stat (e.g., kills per hour, average speed)
|
|
161
|
-
*/
|
|
162
|
-
updateAvgRateStat(statName: string, countThisSession: number, sessionLength: number): Promise<boolean>;
|
|
163
|
-
/**
|
|
164
|
-
* Request stats for another user (friend)
|
|
165
|
-
* Must be called before getting user stats
|
|
166
|
-
*/
|
|
167
|
-
requestUserStatsForStats(steamId: string | bigint): Promise<boolean>;
|
|
168
|
-
/**
|
|
169
|
-
* Get an integer stat value for another user (friend)
|
|
170
|
-
* Must call requestUserStatsForStats() first and wait for callback
|
|
171
|
-
*/
|
|
172
|
-
getUserStatInt(steamId: string | bigint, statName: string): Promise<UserStat | null>;
|
|
173
|
-
/**
|
|
174
|
-
* Get a float stat value for another user (friend)
|
|
175
|
-
* Must call requestUserStatsForStats() first and wait for callback
|
|
176
|
-
*/
|
|
177
|
-
getUserStatFloat(steamId: string | bigint, statName: string): Promise<UserStat | null>;
|
|
178
|
-
/**
|
|
179
|
-
* Request global stats data from Steam
|
|
180
|
-
* Must be called before getting global stats
|
|
181
|
-
* @param historyDays - Number of days of history to retrieve (0-60)
|
|
182
|
-
*/
|
|
183
|
-
requestGlobalStats(historyDays?: number): Promise<boolean>;
|
|
184
|
-
/**
|
|
185
|
-
* Get a global stat value (int64)
|
|
186
|
-
* Must call requestGlobalStats() first and wait for callback
|
|
187
|
-
*/
|
|
188
|
-
getGlobalStatInt(statName: string): Promise<GlobalStat | null>;
|
|
189
|
-
/**
|
|
190
|
-
* Get a global stat value (double)
|
|
191
|
-
* Must call requestGlobalStats() first and wait for callback
|
|
192
|
-
*/
|
|
193
|
-
getGlobalStatDouble(statName: string): Promise<GlobalStat | null>;
|
|
194
|
-
/**
|
|
195
|
-
* Get global stat history (int64)
|
|
196
|
-
* Returns daily values for the stat, with [0] being today, [1] yesterday, etc.
|
|
197
|
-
* @param days - Number of days of history to retrieve (max 60)
|
|
198
|
-
*/
|
|
199
|
-
getGlobalStatHistoryInt(statName: string, days?: number): Promise<GlobalStatHistory | null>;
|
|
200
|
-
/**
|
|
201
|
-
* Get global stat history (double)
|
|
202
|
-
* Returns daily values for the stat, with [0] being today, [1] yesterday, etc.
|
|
203
|
-
* @param days - Number of days of history to retrieve (max 60)
|
|
204
|
-
*/
|
|
205
|
-
getGlobalStatHistoryDouble(statName: string, days?: number): Promise<GlobalStatHistory | null>;
|
|
206
|
-
/**
|
|
207
|
-
* Find or create a leaderboard with specified sort and display settings
|
|
30
|
+
* Achievement Manager - Handle all Steam achievement operations
|
|
208
31
|
*
|
|
209
|
-
*
|
|
210
|
-
*
|
|
211
|
-
*
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
*
|
|
32
|
+
* Provides comprehensive achievement functionality including:
|
|
33
|
+
* - Unlock/clear achievements
|
|
34
|
+
* - Query achievement status and metadata
|
|
35
|
+
* - Display progress notifications
|
|
36
|
+
* - Retrieve global unlock percentages
|
|
37
|
+
* - Get friend/user achievement data
|
|
38
|
+
* - Achievement icons and visual elements
|
|
216
39
|
*
|
|
217
40
|
* @example
|
|
218
41
|
* ```typescript
|
|
219
|
-
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
*
|
|
223
|
-
* );
|
|
224
|
-
* if (leaderboard) {
|
|
225
|
-
* console.log(`Leaderboard handle: ${leaderboard.handle}`);
|
|
226
|
-
* }
|
|
227
|
-
* ```
|
|
228
|
-
*/
|
|
229
|
-
findOrCreateLeaderboard(leaderboardName: string, sortMethod: LeaderboardSortMethod, displayType: LeaderboardDisplayType): Promise<LeaderboardInfo | null>;
|
|
230
|
-
/**
|
|
231
|
-
* Find an existing leaderboard (does not create if missing)
|
|
42
|
+
* // Basic operations
|
|
43
|
+
* await steam.achievements.unlockAchievement('ACH_WIN_ONE_GAME');
|
|
44
|
+
* const achievements = await steam.achievements.getAllAchievements();
|
|
45
|
+
* const unlocked = await steam.achievements.isAchievementUnlocked('ACH_1');
|
|
232
46
|
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
47
|
+
* // Progress tracking
|
|
48
|
+
* await steam.achievements.indicateAchievementProgress('ACH_COLLECTOR', 50, 100);
|
|
235
49
|
*
|
|
236
|
-
*
|
|
237
|
-
*
|
|
238
|
-
* const
|
|
239
|
-
* if (!leaderboard) {
|
|
240
|
-
* console.log('Leaderboard not found');
|
|
241
|
-
* }
|
|
50
|
+
* // Global statistics
|
|
51
|
+
* await steam.achievements.requestGlobalAchievementPercentages();
|
|
52
|
+
* const percent = await steam.achievements.getAchievementAchievedPercent('ACH_1');
|
|
242
53
|
* ```
|
|
243
|
-
*/
|
|
244
|
-
findLeaderboard(leaderboardName: string): Promise<LeaderboardInfo | null>;
|
|
245
|
-
/**
|
|
246
|
-
* Get leaderboard metadata (name, entry count, sort method, display type)
|
|
247
54
|
*
|
|
248
|
-
* @
|
|
249
|
-
* @returns Leaderboard info object, or null on failure
|
|
250
|
-
*
|
|
251
|
-
* @example
|
|
252
|
-
* ```typescript
|
|
253
|
-
* const handle = await steam.findLeaderboard('HighScores');
|
|
254
|
-
* const info = await steam.getLeaderboardInfo(handle);
|
|
255
|
-
* console.log(`${info.name}: ${info.entryCount} entries`);
|
|
256
|
-
* ```
|
|
55
|
+
* @see {@link SteamAchievementManager} for complete API documentation
|
|
257
56
|
*/
|
|
258
|
-
|
|
57
|
+
readonly achievements: SteamAchievementManager;
|
|
259
58
|
/**
|
|
260
|
-
*
|
|
59
|
+
* Stats Manager - Handle all Steam stats operations
|
|
261
60
|
*
|
|
262
|
-
*
|
|
263
|
-
*
|
|
264
|
-
*
|
|
265
|
-
*
|
|
266
|
-
*
|
|
61
|
+
* Provides comprehensive stats functionality including:
|
|
62
|
+
* - Get/set user stats (int and float)
|
|
63
|
+
* - Update average rate stats
|
|
64
|
+
* - Query global stats and history
|
|
65
|
+
* - Retrieve friend/user stats
|
|
66
|
+
* - Track player progress and metrics
|
|
267
67
|
*
|
|
268
68
|
* @example
|
|
269
69
|
* ```typescript
|
|
270
|
-
* //
|
|
271
|
-
*
|
|
272
|
-
*
|
|
273
|
-
*
|
|
274
|
-
* LeaderboardUploadScoreMethod.KeepBest
|
|
275
|
-
* );
|
|
70
|
+
* // User stats
|
|
71
|
+
* await steam.stats.setStatInt('NumGames', 10);
|
|
72
|
+
* await steam.stats.setStatFloat('Accuracy', 0.95);
|
|
73
|
+
* const stat = await steam.stats.getStatInt('NumGames');
|
|
276
74
|
*
|
|
277
|
-
* //
|
|
278
|
-
*
|
|
279
|
-
* leaderboard.handle,
|
|
280
|
-
* 1000,
|
|
281
|
-
* LeaderboardUploadScoreMethod.KeepBest,
|
|
282
|
-
* [120, 5, 15] // time in seconds, deaths, collectibles
|
|
283
|
-
* );
|
|
75
|
+
* // Average rate stats
|
|
76
|
+
* await steam.stats.updateAvgRateStat('KillsPerHour', sessionKills, sessionTime);
|
|
284
77
|
*
|
|
285
|
-
*
|
|
286
|
-
*
|
|
287
|
-
*
|
|
78
|
+
* // Global stats
|
|
79
|
+
* await steam.stats.requestGlobalStats(7); // 7 days of history
|
|
80
|
+
* const globalStat = await steam.stats.getGlobalStatInt('TotalPlayers');
|
|
288
81
|
* ```
|
|
82
|
+
*
|
|
83
|
+
* @see {@link SteamStatsManager} for complete API documentation
|
|
289
84
|
*/
|
|
290
|
-
|
|
85
|
+
readonly stats: SteamStatsManager;
|
|
291
86
|
/**
|
|
292
|
-
*
|
|
87
|
+
* Leaderboards Manager - Handle all Steam leaderboard operations
|
|
293
88
|
*
|
|
294
|
-
*
|
|
295
|
-
*
|
|
296
|
-
*
|
|
297
|
-
*
|
|
298
|
-
*
|
|
89
|
+
* Provides comprehensive leaderboard functionality including:
|
|
90
|
+
* - Find/create leaderboards
|
|
91
|
+
* - Upload scores with optional details
|
|
92
|
+
* - Download entries (global, friends, around user)
|
|
93
|
+
* - Attach UGC to leaderboard entries
|
|
94
|
+
* - Query leaderboard metadata
|
|
299
95
|
*
|
|
300
96
|
* @example
|
|
301
97
|
* ```typescript
|
|
302
|
-
* //
|
|
303
|
-
* const
|
|
304
|
-
*
|
|
305
|
-
*
|
|
306
|
-
*
|
|
307
|
-
* 9
|
|
98
|
+
* // Find or create leaderboard
|
|
99
|
+
* const lb = await steam.leaderboards.findOrCreateLeaderboard(
|
|
100
|
+
* 'HighScores',
|
|
101
|
+
* LeaderboardSortMethod.Descending,
|
|
102
|
+
* LeaderboardDisplayType.Numeric
|
|
308
103
|
* );
|
|
309
104
|
*
|
|
310
|
-
* //
|
|
311
|
-
* const
|
|
312
|
-
*
|
|
313
|
-
*
|
|
314
|
-
*
|
|
315
|
-
* 5
|
|
105
|
+
* // Upload score with details
|
|
106
|
+
* const result = await steam.leaderboards.uploadScore(
|
|
107
|
+
* lb.handle,
|
|
108
|
+
* 1000,
|
|
109
|
+
* LeaderboardUploadScoreMethod.KeepBest,
|
|
110
|
+
* [120, 5, 15] // time, deaths, collectibles
|
|
316
111
|
* );
|
|
317
112
|
*
|
|
318
|
-
* //
|
|
319
|
-
* const
|
|
320
|
-
*
|
|
321
|
-
* LeaderboardDataRequest.
|
|
322
|
-
*
|
|
323
|
-
*
|
|
113
|
+
* // Download top 10 scores
|
|
114
|
+
* const entries = await steam.leaderboards.downloadLeaderboardEntries(
|
|
115
|
+
* lb.handle,
|
|
116
|
+
* LeaderboardDataRequest.Global,
|
|
117
|
+
* 1,
|
|
118
|
+
* 10
|
|
324
119
|
* );
|
|
325
120
|
* ```
|
|
121
|
+
*
|
|
122
|
+
* @see {@link SteamLeaderboardManager} for complete API documentation
|
|
326
123
|
*/
|
|
327
|
-
|
|
124
|
+
readonly leaderboards: SteamLeaderboardManager;
|
|
125
|
+
private constructor();
|
|
126
|
+
static getInstance(): SteamworksSDK;
|
|
328
127
|
/**
|
|
329
|
-
*
|
|
330
|
-
*
|
|
331
|
-
* @param leaderboardHandle - Handle to the leaderboard
|
|
332
|
-
* @param steamIds - Array of Steam ID strings (max 100)
|
|
333
|
-
* @returns Promise resolving to array of leaderboard entries
|
|
334
|
-
*
|
|
335
|
-
* @example
|
|
336
|
-
* ```typescript
|
|
337
|
-
* const entries = await steam.downloadLeaderboardEntriesForUsers(
|
|
338
|
-
* leaderboard.handle,
|
|
339
|
-
* ['76561198000000000', '76561198000000001']
|
|
340
|
-
* );
|
|
341
|
-
* ```
|
|
128
|
+
* Initialize Steam API with real Steamworks SDK
|
|
342
129
|
*/
|
|
343
|
-
|
|
130
|
+
init(options: SteamInitOptions): boolean;
|
|
344
131
|
/**
|
|
345
|
-
*
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
*
|
|
350
|
-
* @param leaderboardHandle - Handle to the leaderboard
|
|
351
|
-
* @param ugcHandle - Handle to the shared UGC content (from ISteamRemoteStorage::FileShare())
|
|
352
|
-
* @returns Promise resolving to true if successful
|
|
353
|
-
*
|
|
354
|
-
* @example
|
|
355
|
-
* ```typescript
|
|
356
|
-
* // First share a file to get UGC handle
|
|
357
|
-
* // const ugcHandle = await steamRemoteStorage.fileShare('replay.dat');
|
|
358
|
-
*
|
|
359
|
-
* const ugcHandle = BigInt('123456789');
|
|
360
|
-
* await steam.attachLeaderboardUGC(leaderboard, ugcHandle);
|
|
361
|
-
* ```
|
|
132
|
+
* Shutdown Steam API
|
|
133
|
+
*/
|
|
134
|
+
shutdown(): void;
|
|
135
|
+
/**
|
|
136
|
+
* Get current Steam status
|
|
362
137
|
*/
|
|
363
|
-
|
|
138
|
+
getStatus(): SteamStatus;
|
|
139
|
+
/**
|
|
140
|
+
* Run Steam callbacks to process pending events
|
|
141
|
+
*/
|
|
142
|
+
runCallbacks(): void;
|
|
143
|
+
/**
|
|
144
|
+
* Check if Steam client is running
|
|
145
|
+
*/
|
|
146
|
+
isSteamRunning(): boolean;
|
|
364
147
|
}
|
|
365
148
|
export default SteamworksSDK;
|
|
366
149
|
//# sourceMappingURL=steam.d.ts.map
|
package/dist/steam.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steam.d.ts","sourceRoot":"","sources":["../src/steam.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"steam.d.ts","sourceRoot":"","sources":["../src/steam.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,WAAW,EACZ,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IAGvC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,OAAO,CAAe;IAE9B;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAgB,YAAY,EAAE,uBAAuB,CAAC;IAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,SAAgB,KAAK,EAAE,iBAAiB,CAAC;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,SAAgB,YAAY,EAAE,uBAAuB,CAAC;IAEtD,OAAO;IAWP,MAAM,CAAC,WAAW,IAAI,aAAa;IAWnC;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO;IAIxC;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,SAAS,IAAI,WAAW;IAIxB;;OAEG;IACH,YAAY,IAAI,IAAI;IAIpB;;OAEG;IACH,cAAc,IAAI,OAAO;CAG1B;AAED,eAAe,aAAa,CAAC"}
|