@decky/ui 4.15.1 → 4.16.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.
Files changed (167) hide show
  1. package/dist/components/Dropdown.d.ts +2 -2
  2. package/dist/components/FooterLegend.d.ts +8 -2
  3. package/dist/components/FooterLegend.js +7 -0
  4. package/dist/components/Menu.d.ts +5 -9
  5. package/dist/components/Modal.d.ts +3 -2
  6. package/dist/globals/index.d.ts +25 -2
  7. package/dist/globals/index.js +1 -2
  8. package/dist/globals/shared/cm.d.ts +112 -0
  9. package/dist/globals/shared/enums.d.ts +80 -0
  10. package/dist/globals/shared/enums.js +85 -0
  11. package/dist/globals/shared/history.d.ts +12 -0
  12. package/dist/globals/shared/history.js +1 -0
  13. package/dist/globals/shared/index.d.ts +5 -0
  14. package/dist/globals/shared/index.js +5 -0
  15. package/dist/globals/shared/interfaces.d.ts +54 -0
  16. package/dist/globals/shared/interfaces.js +1 -0
  17. package/dist/globals/shared/navigation.d.ts +14 -0
  18. package/dist/globals/shared/navigation.js +10 -0
  19. package/dist/globals/shared/steamid.d.ts +36 -0
  20. package/dist/globals/shared/steamid.js +15 -0
  21. package/dist/globals/shared/storage.d.ts +27 -0
  22. package/dist/globals/shared/storage.js +11 -0
  23. package/dist/globals/steam-client/App.d.ts +1 -1
  24. package/dist/globals/steam-client/Auth.d.ts +1 -1
  25. package/dist/globals/steam-client/ClientNotifications.d.ts +1 -1
  26. package/dist/globals/steam-client/Overlay.d.ts +2 -1
  27. package/dist/globals/steam-client/Settings.d.ts +1 -1
  28. package/dist/globals/steam-client/SharedConnection.d.ts +2 -1
  29. package/dist/globals/steam-client/UI.d.ts +14 -3
  30. package/dist/globals/steam-client/UI.js +11 -0
  31. package/dist/globals/steam-client/User.d.ts +13 -0
  32. package/dist/globals/steam-client/User.js +7 -0
  33. package/dist/globals/steam-client/WebChat.d.ts +3 -2
  34. package/dist/globals/steam-client/shared.d.ts +0 -29
  35. package/dist/globals/steam-client/shared.js +0 -24
  36. package/dist/globals/stores/app.d.ts +35 -0
  37. package/dist/globals/stores/app.js +1 -0
  38. package/dist/globals/stores/appdetailsstore.d.ts +86 -0
  39. package/dist/globals/stores/appdetailsstore.js +1 -0
  40. package/dist/globals/stores/appinfostore.d.ts +56 -0
  41. package/dist/globals/stores/appinfostore.js +1 -0
  42. package/dist/globals/stores/appstore.d.ts +77 -0
  43. package/dist/globals/stores/appstore.js +1 -0
  44. package/dist/globals/stores/badgestore.d.ts +52 -0
  45. package/dist/globals/stores/badgestore.js +1 -0
  46. package/dist/globals/stores/collectionstore.d.ts +313 -0
  47. package/dist/globals/stores/collectionstore.js +143 -0
  48. package/dist/globals/stores/consolestore.d.ts +20 -0
  49. package/dist/globals/stores/consolestore.js +1 -0
  50. package/dist/globals/stores/focusnavcontroller.d.ts +383 -0
  51. package/dist/globals/stores/focusnavcontroller.js +29 -0
  52. package/dist/globals/stores/friendstore/clanstore.d.ts +75 -0
  53. package/dist/globals/stores/friendstore/clanstore.js +19 -0
  54. package/dist/globals/stores/friendstore/friendchat.d.ts +374 -0
  55. package/dist/globals/stores/friendstore/friendchat.js +56 -0
  56. package/dist/globals/stores/friendstore/friendgroupstore.d.ts +98 -0
  57. package/dist/globals/stores/friendstore/friendgroupstore.js +8 -0
  58. package/dist/globals/stores/friendstore/friendingamenotificationstore.d.ts +2 -0
  59. package/dist/globals/stores/friendstore/friendingamenotificationstore.js +1 -0
  60. package/dist/globals/stores/friendstore/friendslistfavoritesstore.d.ts +22 -0
  61. package/dist/globals/stores/friendstore/friendslistfavoritesstore.js +1 -0
  62. package/dist/globals/stores/friendstore/friendsuifriendstore.d.ts +125 -0
  63. package/dist/globals/stores/friendstore/friendsuifriendstore.js +1 -0
  64. package/dist/globals/stores/friendstore/index.d.ts +25 -0
  65. package/dist/globals/stores/friendstore/index.js +1 -0
  66. package/dist/globals/stores/friendstore/shared.d.ts +207 -0
  67. package/dist/globals/stores/friendstore/shared.js +41 -0
  68. package/dist/globals/stores/gamerecordingstore.d.ts +263 -0
  69. package/dist/globals/stores/gamerecordingstore.js +1 -0
  70. package/dist/globals/stores/index.d.ts +18 -0
  71. package/dist/globals/stores/index.js +18 -0
  72. package/dist/globals/stores/libraryuistore.d.ts +179 -0
  73. package/dist/globals/stores/libraryuistore.js +56 -0
  74. package/dist/globals/stores/localizationmanager.d.ts +18 -0
  75. package/dist/globals/stores/localizationmanager.js +1 -0
  76. package/dist/globals/stores/mainwindowbrowsermanager.d.ts +62 -0
  77. package/dist/globals/stores/mainwindowbrowsermanager.js +1 -0
  78. package/dist/globals/stores/notificationstore.d.ts +242 -0
  79. package/dist/globals/stores/notificationstore.js +20 -0
  80. package/dist/globals/stores/popupmanager.d.ts +128 -0
  81. package/dist/globals/stores/popupmanager.js +1 -0
  82. package/dist/globals/stores/securitystore.d.ts +35 -0
  83. package/dist/globals/stores/securitystore.js +1 -0
  84. package/dist/globals/stores/settingsstore.d.ts +86 -0
  85. package/dist/globals/stores/settingsstore.js +19 -0
  86. package/dist/globals/stores/steamuistore/gamepadbrowserview.d.ts +143 -0
  87. package/dist/globals/stores/steamuistore/gamepadbrowserview.js +9 -0
  88. package/dist/globals/stores/steamuistore/gamepaduiaudio.d.ts +36 -0
  89. package/dist/globals/stores/steamuistore/gamepaduiaudio.js +1 -0
  90. package/dist/globals/stores/steamuistore/index.d.ts +129 -0
  91. package/dist/globals/stores/steamuistore/index.js +11 -0
  92. package/dist/globals/stores/steamuistore/menu.d.ts +39 -0
  93. package/dist/globals/stores/steamuistore/menu.js +19 -0
  94. package/dist/globals/stores/steamuistore/window.d.ts +206 -0
  95. package/dist/globals/stores/steamuistore/window.js +6 -0
  96. package/dist/globals/stores/storeitemcache.d.ts +319 -0
  97. package/dist/globals/stores/storeitemcache.js +17 -0
  98. package/dist/globals/stores/urlstore.d.ts +57 -0
  99. package/dist/globals/stores/urlstore.js +1 -0
  100. package/dist/modules/Router.d.ts +5 -58
  101. package/dist/modules/Router.js +2 -20
  102. package/dist/tsconfig.tsbuildinfo +1 -1
  103. package/dist/utils/index.d.ts +0 -1
  104. package/package.json +1 -1
  105. package/src/components/Dropdown.tsx +2 -2
  106. package/src/components/FooterLegend.ts +10 -2
  107. package/src/components/Menu.ts +11 -21
  108. package/src/components/Modal.ts +40 -8
  109. package/src/globals/index.ts +45 -2
  110. package/src/globals/shared/cm.ts +158 -0
  111. package/src/globals/shared/enums.ts +97 -0
  112. package/src/globals/shared/history.ts +15 -0
  113. package/src/globals/shared/index.ts +5 -0
  114. package/src/globals/shared/interfaces.ts +147 -0
  115. package/src/globals/shared/navigation.ts +15 -0
  116. package/src/globals/shared/steamid.ts +49 -0
  117. package/src/globals/shared/storage.ts +62 -0
  118. package/src/globals/steam-client/App.ts +2 -2
  119. package/src/globals/steam-client/Auth.ts +2 -2
  120. package/src/globals/steam-client/ClientNotifications.ts +1 -1
  121. package/src/globals/steam-client/Overlay.ts +2 -1
  122. package/src/globals/steam-client/Settings.ts +1 -1
  123. package/src/globals/steam-client/SharedConnection.ts +2 -1
  124. package/src/globals/steam-client/UI.ts +15 -6
  125. package/src/globals/steam-client/User.ts +20 -0
  126. package/src/globals/steam-client/WebChat.ts +3 -2
  127. package/src/globals/steam-client/shared.ts +0 -69
  128. package/src/globals/stores/app.ts +102 -0
  129. package/src/globals/stores/appdetailsstore.ts +235 -0
  130. package/src/globals/stores/appinfostore.ts +65 -0
  131. package/src/globals/stores/appstore.ts +166 -0
  132. package/src/globals/stores/badgestore.ts +87 -0
  133. package/src/globals/stores/collectionstore.ts +544 -0
  134. package/src/globals/stores/consolestore.ts +54 -0
  135. package/src/globals/stores/focusnavcontroller.ts +522 -0
  136. package/src/globals/stores/friendstore/clanstore.ts +89 -0
  137. package/src/globals/stores/friendstore/friendchat.ts +646 -0
  138. package/src/globals/stores/friendstore/friendgroupstore.ts +187 -0
  139. package/src/globals/stores/friendstore/friendingamenotificationstore.ts +1 -0
  140. package/src/globals/stores/friendstore/friendslistfavoritesstore.ts +37 -0
  141. package/src/globals/stores/friendstore/friendsuifriendstore.ts +274 -0
  142. package/src/globals/stores/friendstore/index.ts +58 -0
  143. package/src/globals/stores/friendstore/shared.ts +318 -0
  144. package/src/globals/stores/gamerecordingstore.ts +367 -0
  145. package/src/globals/stores/index.ts +18 -0
  146. package/src/globals/stores/libraryuistore.ts +395 -0
  147. package/src/globals/stores/localizationmanager.ts +56 -0
  148. package/src/globals/stores/mainwindowbrowsermanager.ts +135 -0
  149. package/src/globals/stores/notificationstore.ts +298 -0
  150. package/src/globals/stores/popupmanager.ts +352 -0
  151. package/src/globals/stores/securitystore.ts +36 -0
  152. package/src/globals/stores/settingsstore.ts +134 -0
  153. package/src/globals/stores/steamuistore/gamepadbrowserview.ts +172 -0
  154. package/src/globals/stores/steamuistore/gamepaduiaudio.ts +117 -0
  155. package/src/globals/stores/steamuistore/index.ts +212 -0
  156. package/src/globals/stores/steamuistore/menu.ts +89 -0
  157. package/src/globals/stores/steamuistore/window.ts +466 -0
  158. package/src/globals/stores/storeitemcache.ts +347 -0
  159. package/src/globals/stores/urlstore.ts +150 -0
  160. package/src/modules/Router.ts +11 -77
  161. package/src/utils/index.ts +0 -1
  162. package/dist/globals/SteamClient.d.ts +0 -5
  163. package/dist/globals/SteamClient.js +0 -1
  164. package/dist/globals/stores.d.ts +0 -70
  165. package/src/globals/SteamClient.ts +0 -6
  166. package/src/globals/stores.ts +0 -74
  167. /package/dist/globals/{stores.js → shared/cm.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { ReactNode, FC } from 'react';
2
2
  import { ItemProps } from './Item';
3
- import type { ContextMenuPositionOptions } from './Menu';
3
+ import type { ContextMenuCreationOptions } from './Menu';
4
4
  export interface SingleDropdownOption {
5
5
  data: any;
6
6
  label: ReactNode;
@@ -19,7 +19,7 @@ export interface DropdownProps {
19
19
  onMenuWillOpen?(showMenu: () => void): void;
20
20
  onMenuOpened?(): void;
21
21
  onChange?(data: SingleDropdownOption): void;
22
- contextMenuPositionOptions?: ContextMenuPositionOptions;
22
+ contextMenuPositionOptions?: ContextMenuCreationOptions;
23
23
  menuLabel?: string;
24
24
  strDefaultLabel?: string;
25
25
  renderButtonValue?(element: ReactNode): ReactNode;
@@ -30,6 +30,12 @@ export declare enum GamepadButton {
30
30
  STEAM_GUIDE = 27,
31
31
  STEAM_QUICK_MENU = 28
32
32
  }
33
+ export declare enum EFocusSource {
34
+ GAMEPAD = 0,
35
+ KEYBOARD = 1,
36
+ APPLICATION = 2,
37
+ BROWSER = 3
38
+ }
33
39
  export declare enum NavEntryPositionPreferences {
34
40
  FIRST = 0,
35
41
  LAST = 1,
@@ -38,9 +44,9 @@ export declare enum NavEntryPositionPreferences {
38
44
  PREFERRED_CHILD = 4
39
45
  }
40
46
  export interface GamepadEventDetail {
41
- button: number;
47
+ button: GamepadButton;
42
48
  is_repeat?: boolean;
43
- source: number;
49
+ source: EFocusSource;
44
50
  }
45
51
  export declare type ActionDescriptionMap = {
46
52
  [key in GamepadButton]?: ReactNode;
@@ -30,6 +30,13 @@ export var GamepadButton;
30
30
  GamepadButton[GamepadButton["STEAM_GUIDE"] = 27] = "STEAM_GUIDE";
31
31
  GamepadButton[GamepadButton["STEAM_QUICK_MENU"] = 28] = "STEAM_QUICK_MENU";
32
32
  })(GamepadButton || (GamepadButton = {}));
33
+ export var EFocusSource;
34
+ (function (EFocusSource) {
35
+ EFocusSource[EFocusSource["GAMEPAD"] = 0] = "GAMEPAD";
36
+ EFocusSource[EFocusSource["KEYBOARD"] = 1] = "KEYBOARD";
37
+ EFocusSource[EFocusSource["APPLICATION"] = 2] = "APPLICATION";
38
+ EFocusSource[EFocusSource["BROWSER"] = 3] = "BROWSER";
39
+ })(EFocusSource || (EFocusSource = {}));
33
40
  export var NavEntryPositionPreferences;
34
41
  (function (NavEntryPositionPreferences) {
35
42
  NavEntryPositionPreferences[NavEntryPositionPreferences["FIRST"] = 0] = "FIRST";
@@ -1,10 +1,6 @@
1
- import { FC, ReactNode } from 'react';
2
- import { FooterLegendProps } from './FooterLegend';
3
- interface PopupCreationOptions {
4
- bCreateHidden?: boolean;
5
- bModal?: boolean;
6
- title?: string;
7
- }
1
+ import type { FC, ReactNode } from 'react';
2
+ import type { PopupCreationOptions } from '../globals/stores/popupmanager';
3
+ import type { FooterLegendProps } from './FooterLegend';
8
4
  interface MonitorOptions {
9
5
  targetMonitor: {
10
6
  flMonitorScale: number;
@@ -15,7 +11,7 @@ interface MonitorOptions {
15
11
  };
16
12
  flGamepadScale: number;
17
13
  }
18
- export interface ContextMenuPositionOptions extends PopupCreationOptions, Partial<MonitorOptions> {
14
+ export interface ContextMenuCreationOptions extends PopupCreationOptions, Partial<MonitorOptions> {
19
15
  bAlwaysOnTop?: boolean;
20
16
  bDisableMouseOverlay?: boolean;
21
17
  bDisablePopTop?: boolean;
@@ -39,7 +35,7 @@ interface ContextMenuInstance {
39
35
  Hide(): void;
40
36
  Show(): void;
41
37
  }
42
- export declare const showContextMenu: (children: ReactNode, parent?: EventTarget, options?: ContextMenuPositionOptions) => ContextMenuInstance;
38
+ export declare const showContextMenu: (children: ReactNode, parent?: EventTarget, options?: ContextMenuCreationOptions) => ContextMenuInstance;
43
39
  export interface MenuProps extends FooterLegendProps {
44
40
  label: string;
45
41
  onCancel?(): void;
@@ -1,6 +1,7 @@
1
- import { FC, ReactNode } from 'react';
1
+ import type { FC, ReactNode } from 'react';
2
+ import type { BrowserContext } from '../globals/shared';
2
3
  export interface ShowModalProps {
3
- browserContext?: unknown;
4
+ browserContext?: BrowserContext;
4
5
  bForcePopOut?: boolean;
5
6
  bHideActionIcons?: boolean;
6
7
  bHideMainWindowForPopouts?: boolean;
@@ -1,2 +1,25 @@
1
- export * from './SteamClient';
2
- export * from './stores';
1
+ import type { SteamClient } from './steam-client';
2
+ import type { CApp, CAppDetailsStore, CAppStore, CBadgeStore, CCollectionStore, CConsoleStore, CFocusNavController, CFriendStore, CGameRecordingStore, CLibraryUIStore, CLocalizationManager, CMainWindowBrowserManager, CNotificationStore, CPopupManager, CSecurityStore, CSettingsStore, CSteamUIStore, CURLStore } from './stores';
3
+ declare global {
4
+ interface Window {
5
+ App: CApp;
6
+ appStore: CAppStore;
7
+ appDetailsStore: CAppDetailsStore;
8
+ badgeStore: CBadgeStore;
9
+ collectionStore: CCollectionStore;
10
+ ConsoleStore: CConsoleStore;
11
+ FocusNavController: CFocusNavController;
12
+ friendStore: CFriendStore;
13
+ g_GRS: CGameRecordingStore;
14
+ g_PopupManager: CPopupManager;
15
+ LocalizationManager: CLocalizationManager;
16
+ MainWindowBrowserManager: CMainWindowBrowserManager;
17
+ NotificationStore: CNotificationStore;
18
+ securitystore: CSecurityStore;
19
+ settingsStore: CSettingsStore;
20
+ SteamClient: SteamClient;
21
+ SteamUIStore: CSteamUIStore;
22
+ uiStore: CLibraryUIStore;
23
+ urlStore: CURLStore;
24
+ }
25
+ }
@@ -1,2 +1 @@
1
- export * from './SteamClient';
2
- export * from './stores';
1
+ export {};
@@ -0,0 +1,112 @@
1
+ import type { JsPbMessageClass, OperationResponse } from '../steam-client/shared';
2
+ import type { CBaseProtoBufMsg, CCallbackList, Unsubscribable } from './interfaces';
3
+ import type { CSteamID } from './steamid';
4
+ type Callback_t = (msg: CBaseProtoBufMsg) => void;
5
+ export type EMsg_t = number;
6
+ interface ReportErrorOptions {
7
+ cCallsitesToIgnore: number;
8
+ bIncludeMessageInIdentifier: boolean;
9
+ error: Error;
10
+ strComponentStack: string;
11
+ }
12
+ interface ReportErrorResult {
13
+ identifier: string;
14
+ identifierHash: string;
15
+ message: string[];
16
+ }
17
+ interface ErrorReportingStore {
18
+ m_bEnabled: boolean;
19
+ m_bInitialized: boolean;
20
+ m_bReportingPaused: boolean;
21
+ m_fnGetReportingInterval: () => number;
22
+ m_rgErrorQueue: Error[];
23
+ m_sendTimer: number | null;
24
+ m_strProduct: string;
25
+ m_strVersion: string;
26
+ m_transport: ServiceTransport;
27
+ BIsBlacklisted(error: Error): boolean;
28
+ QueueSend(error: Error): void;
29
+ ReportError(error: Error, options?: Partial<ReportErrorOptions>): Promise<ReportErrorResult | null>;
30
+ SendErrorReport(error: Error): void;
31
+ SendErrorReports(errors: Error[]): void;
32
+ }
33
+ export interface ServiceTransport {
34
+ MakeReady(): Promise<OperationResponse>;
35
+ SendMsg(target_job_name: string, msg: CBaseProtoBufMsg, protoMsg: any): CBaseProtoBufMsg;
36
+ SendNotification(target_job_name: string, msg: CBaseProtoBufMsg): boolean;
37
+ }
38
+ interface ServiceHandler<T extends Callback_t> {
39
+ invoke: T;
40
+ msgClass: JsPbMessageClass;
41
+ }
42
+ interface ServiceMethod {
43
+ name: string;
44
+ request: any;
45
+ }
46
+ interface ServiceRegistrar<T extends Callback_t> {
47
+ invoke: T;
48
+ unregister(): void;
49
+ }
50
+ interface MessageHandlers {
51
+ m_mapCallbacks: Map<EMsg_t, ServiceHandler<any>[]>;
52
+ m_mapServiceMethodHandlers: Map<string, ServiceHandler<any>[]>;
53
+ m_rgRegisteredEMsgs: EMsg_t[];
54
+ m_rgRegisteredServiceMethodHandlers: string[];
55
+ AddCallback<T extends Callback_t>(msg: EMsg_t, msgClass: any | undefined, callback: T): ServiceRegistrar<T>;
56
+ AddServiceMethodHandler<T extends Callback_t>(method: ServiceMethod, callback: T): ServiceRegistrar<T>;
57
+ AddServiceNotificationHandler<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
58
+ DispatchMsgToHandlers(msg: CBaseProtoBufMsg, callback: (msg: CBaseProtoBufMsg) => void): boolean;
59
+ InstallErrorReportingStore(store: ErrorReportingStore): void;
60
+ RegisterBaseEMessageHandler<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
61
+ RegisterEMessageAction<T extends Callback_t>(msg: EMsg_t, msgClass: any | undefined, callback: T): ServiceRegistrar<T>;
62
+ RegisterEMessageHandler<T extends Callback_t>(msg: EMsg_t, msgClass: any | undefined, callback: T): ServiceRegistrar<T>;
63
+ RegisterServiceMethodHandler<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
64
+ RegisterServiceMethodHandlerAction<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
65
+ RegisterServiceNotificationHandler<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
66
+ RegisterServiceNotificationHandlerAction<T extends Callback_t>(msg: EMsg_t, callback: T): ServiceRegistrar<T>;
67
+ }
68
+ interface CMInterfaceCallbacks {
69
+ m_ClientConnectionCallbacks: CCallbackList;
70
+ m_bRunOnce: boolean;
71
+ m_mapServerTypeCallbacks: Map<number, CCallbackList>;
72
+ AddCallback(callback: () => void, t?: number): Unsubscribable;
73
+ RunAllCallbacks(e: number[], ...args: any[]): void;
74
+ RunCallbacks(e: number | undefined, ...args: any[]): void;
75
+ }
76
+ export interface CMInterface {
77
+ ClientServersAvailableHandler: ServiceRegistrar<any>;
78
+ m_ServiceTransport: ServiceTransport;
79
+ m_bCompletedInitialConnect: boolean;
80
+ m_bConnected: boolean;
81
+ m_bConnectionFailed: boolean;
82
+ m_bForceDisconnect: boolean;
83
+ m_bLoggedOn: boolean;
84
+ m_bPerformedInitialClockAdjustment: boolean;
85
+ m_bShouldChangePersonaStatusOnDisconnect: boolean;
86
+ m_callbacksOnConnect: CMInterfaceCallbacks;
87
+ m_callbacksOnConnectOneTime: CMInterfaceCallbacks;
88
+ m_callbacksOnDisconnect: CMInterfaceCallbacks;
89
+ m_hEMsgRegistrationObserver: () => void;
90
+ m_hSharedConnection: number;
91
+ m_messageHandlers: MessageHandlers;
92
+ m_nPerfClockServerMSOffset: number;
93
+ m_nWallClockDriftMS: number;
94
+ m_onConnect: Promise<void> | undefined;
95
+ m_rtReconnectThrottleExpiration: number;
96
+ m_rtReconnectThrottleStart: number;
97
+ m_setConnectedServers: Set<number>;
98
+ m_setEMsgHandlers: Set<EMsg_t>;
99
+ m_setServiceMethodHandlers: Set<string>;
100
+ m_steamid: CSteamID;
101
+ m_strIPCountry: string;
102
+ m_strPersonaName: string;
103
+ m_unAccountFlags: number;
104
+ ClearHeartbeatInterval(): void;
105
+ Connect(): Promise<void>;
106
+ Disconnect(): void;
107
+ ResetHeartbeatInterval(): void;
108
+ SendHeartbeat(): void;
109
+ SendInternal(msg: CBaseProtoBufMsg): boolean;
110
+ SendMsgAndAwaitResponse(param0: CBaseProtoBufMsg, param1: EMsg_t): CBaseProtoBufMsg;
111
+ }
112
+ export {};
@@ -0,0 +1,80 @@
1
+ export declare enum EBrowserType {
2
+ OffScreen = 0,
3
+ OpenVROverlay = 1,
4
+ OpenVROverlay_Dashboard = 2,
5
+ DirectHWND = 3,
6
+ DirectHWND_Borderless = 4,
7
+ DirectHWND_Hidden = 5,
8
+ ChildHWNDNative = 6,
9
+ Offscreen_SteamUI = 12,
10
+ OpenVROverlay_Subview = 13
11
+ }
12
+ export declare enum EPopupCreationFlags {
13
+ None = 0,
14
+ Minimized = 1,
15
+ Hidden = 2,
16
+ TooltipHint = 4,
17
+ NoTaskbarIcon = 8,
18
+ Resizable = 16,
19
+ ScalePosition = 32,
20
+ ScaleSize = 64,
21
+ Maximized = 128,
22
+ Composited = 256,
23
+ NotFocusable = 512,
24
+ FullScreen = 1024,
25
+ Fullscreen_Exclusive = 2048,
26
+ ApplyBrowserScaleToDimensions = 4096,
27
+ AlwaysOnTop = 8192,
28
+ NoWindowShadow = 16384,
29
+ NoMinimize = 32768,
30
+ PopUpMenuHint = 65536,
31
+ IgnoreSavedSize = 131072,
32
+ NoRoundedCorners = 262144,
33
+ ForceRoundedCorners = 524288,
34
+ OverrideRedirect = 1048576,
35
+ IgnoreSteamDisplayScale = 2097152,
36
+ TransparentParentWindow = 4194304,
37
+ DisableDPIScale = 8388608,
38
+ ForceBrowserVisible = 16777216
39
+ }
40
+ export declare enum ESteamRealm {
41
+ Unknown = 0,
42
+ Global = 1,
43
+ China = 2
44
+ }
45
+ export declare enum ESteamUISound {
46
+ LaunchGame = 0,
47
+ FriendMessage = 1,
48
+ ChatMention = 2,
49
+ ChatMessage = 3,
50
+ ToastMessage = 4,
51
+ ToastAchievement = 5,
52
+ ToastMisc = 6,
53
+ ToastMiscShort = 7,
54
+ FriendOnline = 8,
55
+ FriendInGame = 9,
56
+ VolSound = 10,
57
+ ShowModal = 11,
58
+ HideModal = 12,
59
+ IntoGameDetail = 13,
60
+ OutOfGameDetail = 14,
61
+ PagedNavigation = 15,
62
+ ToggleOn = 16,
63
+ ToggleOff = 17,
64
+ SliderUp = 18,
65
+ SliderDown = 19,
66
+ ChangeTabs = 20,
67
+ DefaultOk = 21,
68
+ OpenSideMenu = 22,
69
+ CloseSideMenu = 23,
70
+ BasicNav = 24,
71
+ FailedNav = 25,
72
+ Typing = 26,
73
+ TimerExpired = 27,
74
+ Screenshot = 28
75
+ }
76
+ export declare enum EUIMode {
77
+ Unknown = -1,
78
+ GamePad = 4,
79
+ Desktop = 7
80
+ }
@@ -0,0 +1,85 @@
1
+ export var EBrowserType;
2
+ (function (EBrowserType) {
3
+ EBrowserType[EBrowserType["OffScreen"] = 0] = "OffScreen";
4
+ EBrowserType[EBrowserType["OpenVROverlay"] = 1] = "OpenVROverlay";
5
+ EBrowserType[EBrowserType["OpenVROverlay_Dashboard"] = 2] = "OpenVROverlay_Dashboard";
6
+ EBrowserType[EBrowserType["DirectHWND"] = 3] = "DirectHWND";
7
+ EBrowserType[EBrowserType["DirectHWND_Borderless"] = 4] = "DirectHWND_Borderless";
8
+ EBrowserType[EBrowserType["DirectHWND_Hidden"] = 5] = "DirectHWND_Hidden";
9
+ EBrowserType[EBrowserType["ChildHWNDNative"] = 6] = "ChildHWNDNative";
10
+ EBrowserType[EBrowserType["Offscreen_SteamUI"] = 12] = "Offscreen_SteamUI";
11
+ EBrowserType[EBrowserType["OpenVROverlay_Subview"] = 13] = "OpenVROverlay_Subview";
12
+ })(EBrowserType || (EBrowserType = {}));
13
+ export var EPopupCreationFlags;
14
+ (function (EPopupCreationFlags) {
15
+ EPopupCreationFlags[EPopupCreationFlags["None"] = 0] = "None";
16
+ EPopupCreationFlags[EPopupCreationFlags["Minimized"] = 1] = "Minimized";
17
+ EPopupCreationFlags[EPopupCreationFlags["Hidden"] = 2] = "Hidden";
18
+ EPopupCreationFlags[EPopupCreationFlags["TooltipHint"] = 4] = "TooltipHint";
19
+ EPopupCreationFlags[EPopupCreationFlags["NoTaskbarIcon"] = 8] = "NoTaskbarIcon";
20
+ EPopupCreationFlags[EPopupCreationFlags["Resizable"] = 16] = "Resizable";
21
+ EPopupCreationFlags[EPopupCreationFlags["ScalePosition"] = 32] = "ScalePosition";
22
+ EPopupCreationFlags[EPopupCreationFlags["ScaleSize"] = 64] = "ScaleSize";
23
+ EPopupCreationFlags[EPopupCreationFlags["Maximized"] = 128] = "Maximized";
24
+ EPopupCreationFlags[EPopupCreationFlags["Composited"] = 256] = "Composited";
25
+ EPopupCreationFlags[EPopupCreationFlags["NotFocusable"] = 512] = "NotFocusable";
26
+ EPopupCreationFlags[EPopupCreationFlags["FullScreen"] = 1024] = "FullScreen";
27
+ EPopupCreationFlags[EPopupCreationFlags["Fullscreen_Exclusive"] = 2048] = "Fullscreen_Exclusive";
28
+ EPopupCreationFlags[EPopupCreationFlags["ApplyBrowserScaleToDimensions"] = 4096] = "ApplyBrowserScaleToDimensions";
29
+ EPopupCreationFlags[EPopupCreationFlags["AlwaysOnTop"] = 8192] = "AlwaysOnTop";
30
+ EPopupCreationFlags[EPopupCreationFlags["NoWindowShadow"] = 16384] = "NoWindowShadow";
31
+ EPopupCreationFlags[EPopupCreationFlags["NoMinimize"] = 32768] = "NoMinimize";
32
+ EPopupCreationFlags[EPopupCreationFlags["PopUpMenuHint"] = 65536] = "PopUpMenuHint";
33
+ EPopupCreationFlags[EPopupCreationFlags["IgnoreSavedSize"] = 131072] = "IgnoreSavedSize";
34
+ EPopupCreationFlags[EPopupCreationFlags["NoRoundedCorners"] = 262144] = "NoRoundedCorners";
35
+ EPopupCreationFlags[EPopupCreationFlags["ForceRoundedCorners"] = 524288] = "ForceRoundedCorners";
36
+ EPopupCreationFlags[EPopupCreationFlags["OverrideRedirect"] = 1048576] = "OverrideRedirect";
37
+ EPopupCreationFlags[EPopupCreationFlags["IgnoreSteamDisplayScale"] = 2097152] = "IgnoreSteamDisplayScale";
38
+ EPopupCreationFlags[EPopupCreationFlags["TransparentParentWindow"] = 4194304] = "TransparentParentWindow";
39
+ EPopupCreationFlags[EPopupCreationFlags["DisableDPIScale"] = 8388608] = "DisableDPIScale";
40
+ EPopupCreationFlags[EPopupCreationFlags["ForceBrowserVisible"] = 16777216] = "ForceBrowserVisible";
41
+ })(EPopupCreationFlags || (EPopupCreationFlags = {}));
42
+ export var ESteamRealm;
43
+ (function (ESteamRealm) {
44
+ ESteamRealm[ESteamRealm["Unknown"] = 0] = "Unknown";
45
+ ESteamRealm[ESteamRealm["Global"] = 1] = "Global";
46
+ ESteamRealm[ESteamRealm["China"] = 2] = "China";
47
+ })(ESteamRealm || (ESteamRealm = {}));
48
+ export var ESteamUISound;
49
+ (function (ESteamUISound) {
50
+ ESteamUISound[ESteamUISound["LaunchGame"] = 0] = "LaunchGame";
51
+ ESteamUISound[ESteamUISound["FriendMessage"] = 1] = "FriendMessage";
52
+ ESteamUISound[ESteamUISound["ChatMention"] = 2] = "ChatMention";
53
+ ESteamUISound[ESteamUISound["ChatMessage"] = 3] = "ChatMessage";
54
+ ESteamUISound[ESteamUISound["ToastMessage"] = 4] = "ToastMessage";
55
+ ESteamUISound[ESteamUISound["ToastAchievement"] = 5] = "ToastAchievement";
56
+ ESteamUISound[ESteamUISound["ToastMisc"] = 6] = "ToastMisc";
57
+ ESteamUISound[ESteamUISound["ToastMiscShort"] = 7] = "ToastMiscShort";
58
+ ESteamUISound[ESteamUISound["FriendOnline"] = 8] = "FriendOnline";
59
+ ESteamUISound[ESteamUISound["FriendInGame"] = 9] = "FriendInGame";
60
+ ESteamUISound[ESteamUISound["VolSound"] = 10] = "VolSound";
61
+ ESteamUISound[ESteamUISound["ShowModal"] = 11] = "ShowModal";
62
+ ESteamUISound[ESteamUISound["HideModal"] = 12] = "HideModal";
63
+ ESteamUISound[ESteamUISound["IntoGameDetail"] = 13] = "IntoGameDetail";
64
+ ESteamUISound[ESteamUISound["OutOfGameDetail"] = 14] = "OutOfGameDetail";
65
+ ESteamUISound[ESteamUISound["PagedNavigation"] = 15] = "PagedNavigation";
66
+ ESteamUISound[ESteamUISound["ToggleOn"] = 16] = "ToggleOn";
67
+ ESteamUISound[ESteamUISound["ToggleOff"] = 17] = "ToggleOff";
68
+ ESteamUISound[ESteamUISound["SliderUp"] = 18] = "SliderUp";
69
+ ESteamUISound[ESteamUISound["SliderDown"] = 19] = "SliderDown";
70
+ ESteamUISound[ESteamUISound["ChangeTabs"] = 20] = "ChangeTabs";
71
+ ESteamUISound[ESteamUISound["DefaultOk"] = 21] = "DefaultOk";
72
+ ESteamUISound[ESteamUISound["OpenSideMenu"] = 22] = "OpenSideMenu";
73
+ ESteamUISound[ESteamUISound["CloseSideMenu"] = 23] = "CloseSideMenu";
74
+ ESteamUISound[ESteamUISound["BasicNav"] = 24] = "BasicNav";
75
+ ESteamUISound[ESteamUISound["FailedNav"] = 25] = "FailedNav";
76
+ ESteamUISound[ESteamUISound["Typing"] = 26] = "Typing";
77
+ ESteamUISound[ESteamUISound["TimerExpired"] = 27] = "TimerExpired";
78
+ ESteamUISound[ESteamUISound["Screenshot"] = 28] = "Screenshot";
79
+ })(ESteamUISound || (ESteamUISound = {}));
80
+ export var EUIMode;
81
+ (function (EUIMode) {
82
+ EUIMode[EUIMode["Unknown"] = -1] = "Unknown";
83
+ EUIMode[EUIMode["GamePad"] = 4] = "GamePad";
84
+ EUIMode[EUIMode["Desktop"] = 7] = "Desktop";
85
+ })(EUIMode || (EUIMode = {}));
@@ -0,0 +1,12 @@
1
+ export declare enum Action {
2
+ Pop = "POP",
3
+ Push = "PUSH",
4
+ Replace = "REPLACE"
5
+ }
6
+ export interface Location<S extends object> {
7
+ key: string;
8
+ pathname: string;
9
+ search: string;
10
+ state: S;
11
+ hash: string;
12
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ export * from './cm';
2
+ export * from './enums';
3
+ export * from './interfaces';
4
+ export * from './navigation';
5
+ export * from './steamid';
@@ -0,0 +1,5 @@
1
+ export * from './cm';
2
+ export * from './enums';
3
+ export * from './interfaces';
4
+ export * from './navigation';
5
+ export * from './steamid';
@@ -0,0 +1,54 @@
1
+ import type { EResult } from '../steam-client/shared';
2
+ import type { EMsg_t } from './cm';
3
+ import type { EBrowserType, EUIMode } from './enums';
4
+ export interface BrowserContext {
5
+ m_eBrowserType?: EBrowserType;
6
+ m_eUIMode: EUIMode;
7
+ m_gameID?: string;
8
+ m_nBrowserID: number;
9
+ m_unAppID?: number;
10
+ m_unPID: number;
11
+ }
12
+ export interface Unsubscribable {
13
+ Unregister(): void;
14
+ }
15
+ export interface CBaseProtoBufMsg<T = any> {
16
+ BIsValid(): boolean;
17
+ Body(): T;
18
+ BSuccess(): boolean;
19
+ GetEMsg(): EMsg_t;
20
+ GetEResult(): EResult;
21
+ GetErrorMessage(): string;
22
+ }
23
+ export interface CCallbackList<T extends any[] = never> {
24
+ m_vecCallbacks: ((...args: [...T]) => void)[];
25
+ ClearAllCallbacks(): void;
26
+ CountRegistered(): number;
27
+ Dispatch(...args: [...T]): void;
28
+ Register(callback: (...args: [...T]) => void): Unsubscribable;
29
+ }
30
+ export interface SubscribableValue<T> {
31
+ m_callbacks: CCallbackList<[T]>;
32
+ m_currentValue: T;
33
+ m_fnEquals?: (currentValue: T, newValue: T) => boolean;
34
+ Set(value: T): void;
35
+ Subscribe(subscriber: (value: T) => void): Unsubscribable;
36
+ get SubscriberCount(): number;
37
+ get Value(): T;
38
+ }
39
+ export interface MappedSubscribableValue<T> {
40
+ m_bMappedValueStale: boolean;
41
+ m_fnMap: (value: T) => T;
42
+ m_originalSubscribableValue: SubscribableValue<T>;
43
+ m_mappedSubscribableValue: SubscribableValue<T>;
44
+ Subscribe(subscriber: (value: T) => void): Unsubscribable;
45
+ UpdateMappedValue(): void;
46
+ get Value(): T;
47
+ }
48
+ export interface CScheduledFunc {
49
+ m_fnCallback: () => void;
50
+ m_schTimer: number;
51
+ Cancel(): void;
52
+ IsScheduled(): boolean;
53
+ Schedule(timeout: number, fn: () => void): void;
54
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ export declare enum ENavigationSourceType {
2
+ UNKNOWN = 0,
3
+ GAMEPAD = 1,
4
+ KEYBOARD_SIMULATOR = 2,
5
+ MOUSE = 3,
6
+ TOUCH = 4,
7
+ LPAD = 5,
8
+ RPAD = 6
9
+ }
10
+ export interface NavigationSource {
11
+ eActivationSourceType: ENavigationSourceType;
12
+ nActiveGamepadIndex: number;
13
+ nLastActiveGamepadIndex: number;
14
+ }
@@ -0,0 +1,10 @@
1
+ export var ENavigationSourceType;
2
+ (function (ENavigationSourceType) {
3
+ ENavigationSourceType[ENavigationSourceType["UNKNOWN"] = 0] = "UNKNOWN";
4
+ ENavigationSourceType[ENavigationSourceType["GAMEPAD"] = 1] = "GAMEPAD";
5
+ ENavigationSourceType[ENavigationSourceType["KEYBOARD_SIMULATOR"] = 2] = "KEYBOARD_SIMULATOR";
6
+ ENavigationSourceType[ENavigationSourceType["MOUSE"] = 3] = "MOUSE";
7
+ ENavigationSourceType[ENavigationSourceType["TOUCH"] = 4] = "TOUCH";
8
+ ENavigationSourceType[ENavigationSourceType["LPAD"] = 5] = "LPAD";
9
+ ENavigationSourceType[ENavigationSourceType["RPAD"] = 6] = "RPAD";
10
+ })(ENavigationSourceType || (ENavigationSourceType = {}));
@@ -0,0 +1,36 @@
1
+ import type { ESteamRealm } from './enums';
2
+ export declare enum EAccountType {
3
+ Invalid = 0,
4
+ Individual = 1,
5
+ Multiseat = 2,
6
+ GameServer = 3,
7
+ AnonGameServer = 4,
8
+ Pending = 5,
9
+ ContentServer = 6,
10
+ Clan = 7,
11
+ Chat = 8,
12
+ ConsoleUser = 9,
13
+ AnonUser = 10,
14
+ Max = 11
15
+ }
16
+ export interface CSteamID {
17
+ m_ulSteamID: {
18
+ high: number;
19
+ low: number;
20
+ unsigned: boolean;
21
+ };
22
+ BIsClanAccount(): boolean;
23
+ BIsIndividualAccount(): boolean;
24
+ BIsValid(): boolean;
25
+ ConvertTo64BitString(): string;
26
+ GetAccountID(): number;
27
+ GetAccountType(): EAccountType;
28
+ GetInstance(): number;
29
+ GetUniverse(): ESteamRealm;
30
+ Render(): string;
31
+ SetAccountID(value: number): void;
32
+ SetAccountType(value: number): void;
33
+ SetFromComponents(accountId: number, instance: number, accountType: EAccountType, universe: ESteamRealm): void;
34
+ SetInstance(value: number): void;
35
+ SetUniverse(value: ESteamRealm): void;
36
+ }
@@ -0,0 +1,15 @@
1
+ export var EAccountType;
2
+ (function (EAccountType) {
3
+ EAccountType[EAccountType["Invalid"] = 0] = "Invalid";
4
+ EAccountType[EAccountType["Individual"] = 1] = "Individual";
5
+ EAccountType[EAccountType["Multiseat"] = 2] = "Multiseat";
6
+ EAccountType[EAccountType["GameServer"] = 3] = "GameServer";
7
+ EAccountType[EAccountType["AnonGameServer"] = 4] = "AnonGameServer";
8
+ EAccountType[EAccountType["Pending"] = 5] = "Pending";
9
+ EAccountType[EAccountType["ContentServer"] = 6] = "ContentServer";
10
+ EAccountType[EAccountType["Clan"] = 7] = "Clan";
11
+ EAccountType[EAccountType["Chat"] = 8] = "Chat";
12
+ EAccountType[EAccountType["ConsoleUser"] = 9] = "ConsoleUser";
13
+ EAccountType[EAccountType["AnonUser"] = 10] = "AnonUser";
14
+ EAccountType[EAccountType["Max"] = 11] = "Max";
15
+ })(EAccountType || (EAccountType = {}));
@@ -0,0 +1,27 @@
1
+ export declare enum EUserConfigStoreNamespace {
2
+ Invalid = 0,
3
+ Library = 1
4
+ }
5
+ export declare enum EConflictResolutionMethod {
6
+ LastWriteWins = "last-write",
7
+ CustomMethod = "custom",
8
+ InitializationOnly = "initial"
9
+ }
10
+ export declare class CUserLocalStorage {
11
+ GetObject<T extends object>(key: string): Promise<T | null>;
12
+ GetString(key: string): Promise<string | null>;
13
+ RemoveObject(key: string, resolutionMethod: EConflictResolutionMethod, resolutionMethodId?: string): Promise<void>;
14
+ StoreObject<T extends object>(key: string, value: T, resolutionMethod?: EConflictResolutionMethod, resolutionMethodId?: string): Promise<void>;
15
+ }
16
+ export declare class CCloudStorage extends CUserLocalStorage {
17
+ m_eNamespace: EUserConfigStoreNamespace;
18
+ Get(key: string): string | null;
19
+ GetByPrefix(prefix: string): Map<string, string>;
20
+ GetMapForPrefix(prefix: string): CCloudStorageMap;
21
+ StoreString(key: string, value: string, resolutionMethod?: EConflictResolutionMethod, resolutionMethodId?: string): Promise<void>;
22
+ }
23
+ export interface CCloudStorageMap extends Map<string, string>, Pick<CCloudStorage, 'GetObject' | 'StoreObject' | 'StoreString'> {
24
+ m_cloudStorage: CCloudStorage;
25
+ m_strKeyPrefix: string;
26
+ get mapInternal(): Map<string, string>;
27
+ }
@@ -0,0 +1,11 @@
1
+ export var EUserConfigStoreNamespace;
2
+ (function (EUserConfigStoreNamespace) {
3
+ EUserConfigStoreNamespace[EUserConfigStoreNamespace["Invalid"] = 0] = "Invalid";
4
+ EUserConfigStoreNamespace[EUserConfigStoreNamespace["Library"] = 1] = "Library";
5
+ })(EUserConfigStoreNamespace || (EUserConfigStoreNamespace = {}));
6
+ export var EConflictResolutionMethod;
7
+ (function (EConflictResolutionMethod) {
8
+ EConflictResolutionMethod["LastWriteWins"] = "last-write";
9
+ EConflictResolutionMethod["CustomMethod"] = "custom";
10
+ EConflictResolutionMethod["InitializationOnly"] = "initial";
11
+ })(EConflictResolutionMethod || (EConflictResolutionMethod = {}));
@@ -493,7 +493,7 @@ export interface Badge {
493
493
  strName: string;
494
494
  strNextLevelName: string;
495
495
  }
496
- interface AppDescription {
496
+ export interface AppDescription {
497
497
  strFullDescription: string;
498
498
  strSnippet: string;
499
499
  }
@@ -16,7 +16,7 @@ export interface Auth {
16
16
  ValidateCachedSignInPin(accountName: string, pin: string): Promise<boolean>;
17
17
  }
18
18
  export interface AuthRefreshInfo {
19
- reason: number;
19
+ reason: EResult;
20
20
  account_name: string;
21
21
  login_id_token: string;
22
22
  }
@@ -1,4 +1,4 @@
1
- import { BrowserContext } from "./shared";
1
+ import { BrowserContext } from '../shared/interfaces';
2
2
  export interface ClientNotifications {
3
3
  DisplayClientNotification(notification: EClientUINotificationType, options: string, callback: (context: BrowserContext) => void): void;
4
4
  OnRespondToClientNotification(notificationId: number, handleAction: boolean): void;
@@ -1,4 +1,5 @@
1
- import type { EBrowserType, ESteamRealm, EUIComposition, EUIMode, Unregisterable } from "./shared";
1
+ import type { EBrowserType, ESteamRealm, EUIMode } from '../shared/enums';
2
+ import type { EUIComposition, Unregisterable } from './shared';
2
3
  export interface Overlay {
3
4
  DestroyGamePadUIDesktopConfiguratorWindow(): void;
4
5
  GetOverlayBrowserInfo(): Promise<OverlayBrowserInfo[]>;