steelseries-sonar-sdk 0.1.1 → 0.2.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.
Files changed (185) hide show
  1. package/dist/consts/fetch-options-put.d.ts +3 -0
  2. package/{src/enums.ts → dist/enums.d.ts} +34 -41
  3. package/dist/exceptions.d.ts +32 -0
  4. package/dist/functions/audio/get-audio-data-classic.d.ts +7 -0
  5. package/dist/functions/audio/get-audio-data-stream.d.ts +7 -0
  6. package/dist/functions/audio/get-audio-mode.d.ts +7 -0
  7. package/dist/functions/audio/set-audio-mode.d.ts +8 -0
  8. package/dist/functions/audio/set-channel-mute-classic.d.ts +9 -0
  9. package/dist/functions/audio/set-channel-mute-streamer.d.ts +10 -0
  10. package/dist/functions/audio/set-channel-volume-classic.d.ts +9 -0
  11. package/dist/functions/audio/set-channel-volume-streamer.d.ts +10 -0
  12. package/dist/functions/chatmix/get-chat-mix-state.d.ts +7 -0
  13. package/dist/functions/chatmix/set-chat-mix-balance.d.ts +7 -0
  14. package/dist/functions/converters/convert-channel-to-api.d.ts +3 -0
  15. package/dist/functions/converters/convert-chat-mix-balance-to-api.d.ts +2 -0
  16. package/dist/functions/converters/convert-chat-mix-balance-to-user.d.ts +2 -0
  17. package/dist/functions/converters/convert-profile-channel-to-api.d.ts +3 -0
  18. package/dist/functions/converters/convert-profile-channel-to-user.d.ts +3 -0
  19. package/dist/functions/converters/convert-volume-to-api.d.ts +1 -0
  20. package/dist/functions/converters/convert-volume-to-user.d.ts +1 -0
  21. package/dist/functions/devices/get-audio-devices.d.ts +3 -0
  22. package/dist/functions/devices/set-audio-device.d.ts +3 -0
  23. package/dist/functions/endpoint/get-app-endpoint.d.ts +14 -0
  24. package/dist/functions/endpoint/get-sonar-endpoint-cached.d.ts +1 -0
  25. package/dist/functions/endpoint/get-sonar-endpoint.d.ts +14 -0
  26. package/dist/functions/profile/get-channel-profiles.d.ts +3 -0
  27. package/dist/functions/profile/get-selected-profiles.d.ts +2 -0
  28. package/dist/functions/profile/set-selected-profile.d.ts +2 -0
  29. package/dist/index.d.ts +29 -0
  30. package/dist/index.js +874 -0
  31. package/{src/sonar/models/audio-settings/chatmix-data.ts → dist/sonar/models/audio-settings/chatmix-data.d.ts} +4 -5
  32. package/dist/sonar/models/audio-settings/enums/audio-mode.d.ts +4 -0
  33. package/dist/sonar/models/audio-settings/enums/chat-mix-state.d.ts +6 -0
  34. package/dist/sonar/models/audio-settings/enums/device-data-flow.d.ts +5 -0
  35. package/dist/sonar/models/audio-settings/enums/device-default-roles.d.ts +6 -0
  36. package/dist/sonar/models/audio-settings/enums/device-role.d.ts +9 -0
  37. package/dist/sonar/models/audio-settings/enums/device-state.d.ts +8 -0
  38. package/dist/sonar/models/audio-settings/enums/sonar-channel.d.ts +8 -0
  39. package/dist/sonar/models/audio-settings/enums/streaming-path.d.ts +4 -0
  40. package/dist/sonar/models/audio-settings/volume-info-classic.d.ts +4 -0
  41. package/dist/sonar/models/audio-settings/volume-info-streamer.d.ts +10 -0
  42. package/dist/sonar/models/audio-settings/volume-settings-classic.d.ts +9 -0
  43. package/dist/sonar/models/audio-settings/volume-settings-streamer.d.ts +9 -0
  44. package/dist/sonar/models/config/config.d.ts +8 -0
  45. package/dist/sonar/models/config/enums/VirtualAudioDevice.d.ts +7 -0
  46. package/dist/sonar/models/devices/audio-device.d.ts +16 -0
  47. package/dist/sonar/models/devices/changed-device.d.ts +6 -0
  48. package/dist/sonar/requests/audio-devices/change-audio-device.d.ts +3 -0
  49. package/dist/sonar/requests/audio-devices/request-audio-devices.d.ts +9 -0
  50. package/dist/sonar/requests/chatmix/change-chat-mix-balance.d.ts +2 -0
  51. package/dist/sonar/requests/chatmix/request-chat-mix-state.d.ts +2 -0
  52. package/dist/sonar/requests/mode/change-audio-mode.d.ts +2 -0
  53. package/dist/sonar/requests/mode/request-audio-mode.d.ts +2 -0
  54. package/dist/sonar/requests/profiles/change-selected-config.d.ts +2 -0
  55. package/dist/sonar/requests/profiles/request-configs.d.ts +3 -0
  56. package/dist/sonar/requests/profiles/request-selected-configs.d.ts +2 -0
  57. package/dist/sonar/requests/volume-settings/change-volume-level-classic.d.ts +3 -0
  58. package/dist/sonar/requests/volume-settings/change-volume-level-streamer.d.ts +4 -0
  59. package/dist/sonar/requests/volume-settings/change-volume-mute-classic.d.ts +3 -0
  60. package/dist/sonar/requests/volume-settings/change-volume-mute-streamer.d.ts +4 -0
  61. package/dist/sonar/requests/volume-settings/request-volume-settings-classic.d.ts +2 -0
  62. package/dist/sonar/requests/volume-settings/request-volume-settings-streamer.d.ts +2 -0
  63. package/dist/types/audio-device.d.ts +6 -0
  64. package/dist/types/changed-device.d.ts +6 -0
  65. package/dist/types/channel-volume-classic.d.ts +4 -0
  66. package/dist/types/channel-volume-streamer-path.d.ts +4 -0
  67. package/dist/types/channel-volume-streamer.d.ts +5 -0
  68. package/dist/types/channel-volumes-classic.d.ts +7 -0
  69. package/dist/types/channel-volumes-streamer.d.ts +7 -0
  70. package/dist/types/chat-mix-data.d.ts +6 -0
  71. package/dist/types/profile-option.d.ts +8 -0
  72. package/package.json +7 -3
  73. package/.gitattributes +0 -8
  74. package/.github/workflows/tests.yml +0 -18
  75. package/.vscode/extensions.json +0 -8
  76. package/.vscode/settings.json +0 -33
  77. package/_.todo +0 -4
  78. package/biome.json +0 -62
  79. package/http/sonar.http +0 -104
  80. package/src/consts/fetch-options-put.ts +0 -3
  81. package/src/exceptions.ts +0 -45
  82. package/src/functions/audio/get-audio-data-classic.ts +0 -31
  83. package/src/functions/audio/get-audio-data-stream.ts +0 -37
  84. package/src/functions/audio/get-audio-mode.ts +0 -11
  85. package/src/functions/audio/set-audio-mode.ts +0 -12
  86. package/src/functions/audio/set-channel-mute-classic.ts +0 -35
  87. package/src/functions/audio/set-channel-mute-streamer.ts +0 -41
  88. package/src/functions/audio/set-channel-volume-classic.ts +0 -37
  89. package/src/functions/audio/set-channel-volume-streamer.ts +0 -43
  90. package/src/functions/chatmix/get-chat-mix-state.ts +0 -20
  91. package/src/functions/chatmix/set-chat-mix-balance.ts +0 -22
  92. package/src/functions/converters/convert-channel-to-api.ts +0 -19
  93. package/src/functions/converters/convert-chat-mix-balance-to-api.ts +0 -6
  94. package/src/functions/converters/convert-chat-mix-balance-to-user.ts +0 -7
  95. package/src/functions/converters/convert-profile-channel-to-api.ts +0 -19
  96. package/src/functions/converters/convert-profile-channel-to-user.ts +0 -19
  97. package/src/functions/converters/convert-volume-to-api.ts +0 -5
  98. package/src/functions/converters/convert-volume-to-user.ts +0 -6
  99. package/src/functions/devices/get-audio-devices.ts +0 -40
  100. package/src/functions/devices/set-audio-device.ts +0 -19
  101. package/src/functions/endpoint/get-app-endpoint.ts +0 -73
  102. package/src/functions/endpoint/get-sonar-endpoint-cached.ts +0 -28
  103. package/src/functions/endpoint/get-sonar-endpoint.ts +0 -88
  104. package/src/functions/profile/get-channel-profiles.ts +0 -26
  105. package/src/functions/profile/get-selected-profiles.ts +0 -17
  106. package/src/functions/profile/set-selected-profile.ts +0 -17
  107. package/src/index.ts +0 -41
  108. package/src/sonar/models/audio-settings/enums/audio-mode.ts +0 -4
  109. package/src/sonar/models/audio-settings/enums/chat-mix-state.ts +0 -6
  110. package/src/sonar/models/audio-settings/enums/device-data-flow.ts +0 -5
  111. package/src/sonar/models/audio-settings/enums/device-default-roles.ts +0 -6
  112. package/src/sonar/models/audio-settings/enums/device-role.ts +0 -9
  113. package/src/sonar/models/audio-settings/enums/device-state.ts +0 -8
  114. package/src/sonar/models/audio-settings/enums/sonar-channel.ts +0 -8
  115. package/src/sonar/models/audio-settings/enums/streaming-path.ts +0 -4
  116. package/src/sonar/models/audio-settings/volume-info-classic.ts +0 -4
  117. package/src/sonar/models/audio-settings/volume-info-streamer.ts +0 -10
  118. package/src/sonar/models/audio-settings/volume-settings-classic.ts +0 -13
  119. package/src/sonar/models/audio-settings/volume-settings-streamer.ts +0 -13
  120. package/src/sonar/models/config/config.ts +0 -9
  121. package/src/sonar/models/config/enums/VirtualAudioDevice.ts +0 -7
  122. package/src/sonar/models/devices/audio-device.ts +0 -17
  123. package/src/sonar/models/devices/changed-device.ts +0 -7
  124. package/src/sonar/requests/audio-devices/change-audio-device.ts +0 -37
  125. package/src/sonar/requests/audio-devices/request-audio-devices.ts +0 -42
  126. package/src/sonar/requests/chatmix/change-chat-mix-balance.ts +0 -25
  127. package/src/sonar/requests/chatmix/request-chat-mix-state.ts +0 -24
  128. package/src/sonar/requests/mode/change-audio-mode.ts +0 -24
  129. package/src/sonar/requests/mode/request-audio-mode.ts +0 -24
  130. package/src/sonar/requests/profiles/change-selected-config.ts +0 -25
  131. package/src/sonar/requests/profiles/request-configs.ts +0 -24
  132. package/src/sonar/requests/profiles/request-selected-configs.ts +0 -22
  133. package/src/sonar/requests/volume-settings/change-volume-level-classic.ts +0 -27
  134. package/src/sonar/requests/volume-settings/change-volume-level-streamer.ts +0 -29
  135. package/src/sonar/requests/volume-settings/change-volume-mute-classic.ts +0 -27
  136. package/src/sonar/requests/volume-settings/change-volume-mute-streamer.ts +0 -29
  137. package/src/sonar/requests/volume-settings/request-volume-settings-classic.ts +0 -22
  138. package/src/sonar/requests/volume-settings/request-volume-settings-streamer.ts +0 -22
  139. package/src/types/audio-device.ts +0 -7
  140. package/src/types/changed-device.ts +0 -7
  141. package/src/types/channel-volume-classic.ts +0 -4
  142. package/src/types/channel-volume-streamer-path.ts +0 -4
  143. package/src/types/channel-volume-streamer.ts +0 -6
  144. package/src/types/channel-volumes-classic.ts +0 -8
  145. package/src/types/channel-volumes-streamer.ts +0 -8
  146. package/src/types/chat-mix-data.ts +0 -7
  147. package/src/types/profile-option.ts +0 -9
  148. package/tests/e2e/audio/get-audio-data-classic.real.test.ts +0 -11
  149. package/tests/e2e/audio/get-audio-data-stream.real.test.ts +0 -11
  150. package/tests/e2e/audio/get-audio-mode.real.test.ts +0 -12
  151. package/tests/e2e/audio/set-audio-mode.real.test.ts +0 -20
  152. package/tests/e2e/audio/set-channel-mute-classic.real.test.ts +0 -18
  153. package/tests/e2e/audio/set-channel-mute-streamer.real.test.ts +0 -18
  154. package/tests/e2e/audio/set-channel-volume-classic.real.test.ts +0 -17
  155. package/tests/e2e/audio/set-channel-volume-streamer.real.test.ts +0 -22
  156. package/tests/e2e/chatmix/get-chat-mix-state.real.test.ts +0 -25
  157. package/tests/e2e/chatmix/set-chat-mix-balance.real.test.ts +0 -25
  158. package/tests/e2e/devices/get-audio-devices.real.test.ts +0 -29
  159. package/tests/e2e/devices/set-audio-device.real.test.ts +0 -32
  160. package/tests/e2e/enpoint/get-app-endpoint.real.test.ts +0 -19
  161. package/tests/e2e/enpoint/get-sonar-endpoint-cached.real.test.ts +0 -32
  162. package/tests/e2e/enpoint/get-sonar-endpoint.real.test.ts +0 -21
  163. package/tests/e2e/profiles/get-channel-profiles.real.test.ts +0 -21
  164. package/tests/e2e/profiles/get-selected-profiles.real.test.ts +0 -11
  165. package/tests/e2e/profiles/set-selected-profile.real.test.ts +0 -17
  166. package/tests/helpers/get-endpoint-e2e.ts +0 -8
  167. package/tests/unit/audio/get-audio-data-classic.test.ts +0 -57
  168. package/tests/unit/audio/get-audio-data-stream.test.ts +0 -65
  169. package/tests/unit/audio/get-audio-mode.test.ts +0 -58
  170. package/tests/unit/audio/set-audio-mode.test.ts +0 -66
  171. package/tests/unit/audio/set-channel-mute-classic.test.ts +0 -58
  172. package/tests/unit/audio/set-channel-mute-streamer.test.ts +0 -64
  173. package/tests/unit/audio/set-channel-volume-classic.test.ts +0 -58
  174. package/tests/unit/audio/set-channel-volume-streamer.test.ts +0 -64
  175. package/tests/unit/chatmix/get-chat-mix-state.test.ts +0 -70
  176. package/tests/unit/chatmix/set-chat-mix-balance.test.ts +0 -58
  177. package/tests/unit/devices/get-audio-devices.test.ts +0 -59
  178. package/tests/unit/devices/set-audio-devices.test.ts +0 -62
  179. package/tests/unit/endpoint/get-app-endpoint.test.ts +0 -72
  180. package/tests/unit/endpoint/get-sonar-endpoint-cached.test.ts +0 -93
  181. package/tests/unit/endpoint/get-sonar-endpoint.test.ts +0 -140
  182. package/tests/unit/profiles/get-channel-profiles.test.ts +0 -91
  183. package/tests/unit/profiles/get-selected-profiles.test.ts +0 -64
  184. package/tests/unit/profiles/set-selected-profile.test.ts +0 -55
  185. package/tsconfig.json +0 -36
@@ -0,0 +1,3 @@
1
+ export declare const FETCH_OPTIONS_PUT: {
2
+ readonly method: "PUT";
3
+ };
@@ -7,24 +7,21 @@
7
7
  * @property {@link AudioChannel.Aux} - Auxiliary audio channel.
8
8
  * @property {@link AudioChannel.Mic} - Microphone audio channel.
9
9
  */
10
- export enum AudioChannel {
11
- Master = 'master',
12
- Game = 'game',
13
- Chat = 'chat',
14
- Media = 'media',
15
- Aux = 'aux',
16
- Mic = 'mic'
10
+ export declare enum AudioChannel {
11
+ Master = "master",
12
+ Game = "game",
13
+ Chat = "chat",
14
+ Media = "media",
15
+ Aux = "aux",
16
+ Mic = "mic"
17
17
  }
18
-
19
- // TODO: Sort this channel duplication nonsense out.
20
- export enum ProfileChannel {
21
- Game = 'game',
22
- Chat = 'chat',
23
- Media = 'media',
24
- Aux = 'aux',
25
- Mic = 'mic'
18
+ export declare enum ProfileChannel {
19
+ Game = "game",
20
+ Chat = "chat",
21
+ Media = "media",
22
+ Aux = "aux",
23
+ Mic = "mic"
26
24
  }
27
-
28
25
  /**
29
26
  * Sonar device channels.
30
27
  * @property {@link DeviceChannel.Output} - All output channels.
@@ -34,35 +31,32 @@ export enum ProfileChannel {
34
31
  * @property {@link DeviceChannel.Aux} - Auxiliary output channel.
35
32
  * @property {@link DeviceChannel.Mic} - Microphone input channel.
36
33
  */
37
- export enum DeviceChannel {
38
- Output = 'render',
39
- Game = 'game',
40
- Chat = 'chat',
41
- Media = 'media',
42
- Aux = 'aux',
43
- Mic = 'mic'
34
+ export declare enum DeviceChannel {
35
+ Output = "render",
36
+ Game = "game",
37
+ Chat = "chat",
38
+ Media = "media",
39
+ Aux = "aux",
40
+ Mic = "mic"
44
41
  }
45
-
46
42
  /**
47
43
  * Sonar Streamer Mode path.
48
44
  * @property {@link StreamerPath.Streaming} - What the audience will hear.
49
45
  * @property {@link StreamerPath.Monitoring} - What the owner will hear.
50
46
  */
51
- export enum StreamerPath {
52
- Streaming = 'streaming',
53
- Monitoring = 'monitoring'
47
+ export declare enum StreamerPath {
48
+ Streaming = "streaming",
49
+ Monitoring = "monitoring"
54
50
  }
55
-
56
51
  /**
57
52
  * Sonar mixing state.
58
53
  * @property {@link AudioMode.Classic} - Basic mixing.
59
54
  * @property {@link AudioMode.Streamer} - Advanced mixing - has stream/monitor path each channel.
60
55
  */
61
- export enum AudioMode {
62
- Classic = 'classic',
63
- Streamer = 'stream'
56
+ export declare enum AudioMode {
57
+ Classic = "classic",
58
+ Streamer = "stream"
64
59
  }
65
-
66
60
  /**
67
61
  * The state of CHATMIX availability.
68
62
  * @property {@link ChatMixState.Enabled} - CHATMIX is enabled and available.
@@ -70,19 +64,18 @@ export enum AudioMode {
70
64
  * @property {@link ChatMixState.DifferentDeviceSelected} - CHATMIX is unavailable because a different output device is selected.
71
65
  * @property {@link ChatMixState.NoDeviceSelected} - CHATMIX is unavailable because no output device is selected.
72
66
  */
73
- export enum ChatMixState {
74
- Enabled = 'enabled',
75
- FiniteWheel = 'finiteWheel',
76
- DifferentDeviceSelected = 'differentDeviceSelected',
77
- NoDeviceSelected = 'noDeviceSelected'
67
+ export declare enum ChatMixState {
68
+ Enabled = "enabled",
69
+ FiniteWheel = "finiteWheel",
70
+ DifferentDeviceSelected = "differentDeviceSelected",
71
+ NoDeviceSelected = "noDeviceSelected"
78
72
  }
79
-
80
73
  /**
81
74
  * Type of audio device.
82
75
  * @property {@link DeviceFlow.Output} - Device used to render audio (e.g. speakers, headphones).
83
76
  * @property {@link DeviceFlow.Input} - Device used to capture audio (e.g. microphones).
84
77
  */
85
- export enum DeviceFlow {
86
- Output = 'output',
87
- Input = 'input'
78
+ export declare enum DeviceFlow {
79
+ Output = "output",
80
+ Input = "input"
88
81
  }
@@ -0,0 +1,32 @@
1
+ type RequestErrorProps = {
2
+ message?: string;
3
+ innerException?: Error;
4
+ };
5
+ export declare enum InitializeErrorReason {
6
+ BadConfig = "Bad Config",
7
+ OSUnsupported = "OS Unsupported",
8
+ NotEnabled = "Not Enabled",
9
+ NotRunning = "Not Running",
10
+ NotReady = "Not Ready",
11
+ NotResponding = "Not Responding",
12
+ NotAvailable = "Not Available"
13
+ }
14
+ type InitializeErrorProps = {
15
+ message?: string;
16
+ innerException?: Error;
17
+ reason: InitializeErrorReason;
18
+ };
19
+ /** Base exception for all handled Sonar related exception. */
20
+ export declare abstract class SonarException extends Error {
21
+ constructor(message: string, cause?: Error);
22
+ }
23
+ /** Thrown when the server responds in an unexpected way. */
24
+ export declare class SonarRequestException extends SonarException {
25
+ constructor(error?: RequestErrorProps);
26
+ }
27
+ /** Thrown when the server cannot be determined. */
28
+ export declare class SonarInitializationException extends SonarException {
29
+ reason: InitializeErrorReason;
30
+ constructor(error: InitializeErrorProps);
31
+ }
32
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ChannelVolumesClassic } from '@/types/channel-volumes-classic';
2
+ /**
3
+ * Gets audio data for all channels.
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @returns volume in the range of 0 to 100,
6
+ */
7
+ export declare function getAudioDataClassic(sonarEndpoint: string): Promise<ChannelVolumesClassic>;
@@ -0,0 +1,7 @@
1
+ import type { ChannelVolumesStreamer } from '@/types/channel-volumes-streamer';
2
+ /**
3
+ * Gets audio data for all channels.
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @returns volume in the range of 0 to 100,
6
+ */
7
+ export declare function getAudioDataStream(sonarEndpoint: string): Promise<ChannelVolumesStreamer>;
@@ -0,0 +1,7 @@
1
+ import type { AudioMode } from '@/enums';
2
+ /**
3
+ * Gets audio data for all channels.
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @returns classic or streamer mode
6
+ */
7
+ export declare function getAudioMode(sonarEndpoint: string): Promise<AudioMode>;
@@ -0,0 +1,8 @@
1
+ import type { AudioMode } from '@/enums';
2
+ /**
3
+ * Gets audio data for all channels.
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @param audioMode Target audio mode
6
+ * @returns classic or streamer mode
7
+ */
8
+ export declare function setAudioMode(sonarEndpoint: string, audioMode: AudioMode): Promise<AudioMode>;
@@ -0,0 +1,9 @@
1
+ import type { AudioChannel } from '@/enums';
2
+ import type { ChannelVolumeClassic } from '@/types/channel-volume-classic';
3
+ /**
4
+ * Sets audio data for target channel.
5
+ * @param sonarEndpoint Sonar endpoint URL
6
+ * @param isMuted Will mute if true.
7
+ * @param channel Target audio channel
8
+ */
9
+ export declare function setChannelMuteClassic(sonarEndpoint: string, isMuted: boolean, channel: AudioChannel): Promise<ChannelVolumeClassic>;
@@ -0,0 +1,10 @@
1
+ import { type AudioChannel, StreamerPath } from '@/enums';
2
+ import type { ChannelVolumeStreamerPath } from '@/types/channel-volume-streamer-path';
3
+ /**
4
+ * Sets audio data for target channel.
5
+ * @param sonarEndpoint Sonar endpoint URL
6
+ * @param isMuted Will mute if true.
7
+ * @param channel Target audio channel
8
+ * @param path Target streamer path
9
+ */
10
+ export declare function setChannelMuteStreamer(sonarEndpoint: string, isMuted: boolean, channel: AudioChannel, path: StreamerPath): Promise<ChannelVolumeStreamerPath>;
@@ -0,0 +1,9 @@
1
+ import type { AudioChannel } from '@/enums';
2
+ import type { ChannelVolumeClassic } from '@/types/channel-volume-classic';
3
+ /**
4
+ * Sets audio data for target channel.
5
+ * @param sonarEndpoint Sonar endpoint URL
6
+ * @param volumePercent Volume in the range of 0 to 100
7
+ * @param channel Target audio channel
8
+ */
9
+ export declare function setChannelVolumeClassic(sonarEndpoint: string, volumePercent: number, channel: AudioChannel): Promise<ChannelVolumeClassic>;
@@ -0,0 +1,10 @@
1
+ import { type AudioChannel, StreamerPath } from '@/enums';
2
+ import type { ChannelVolumeStreamerPath } from '@/types/channel-volume-streamer-path';
3
+ /**
4
+ * Sets audio data for target channel.
5
+ * @param sonarEndpoint Sonar endpoint URL
6
+ * @param volumePercent Volume in the range of 0 to 100
7
+ * @param channel Target audio channel
8
+ * @param path Target streamer path
9
+ */
10
+ export declare function setChannelVolumeStreamer(sonarEndpoint: string, volumePercent: number, channel: AudioChannel, path: StreamerPath): Promise<ChannelVolumeStreamerPath>;
@@ -0,0 +1,7 @@
1
+ import type { ChatMixData } from '@/types/chat-mix-data';
2
+ /**
3
+ * Gets CHATMIX state and data.
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @returns balance as 0 - 100,
6
+ */
7
+ export declare function getChatMixState(sonarEndpoint: string): Promise<ChatMixData>;
@@ -0,0 +1,7 @@
1
+ import type { ChatMixData } from '@/types/chat-mix-data';
2
+ /**
3
+ * Set CHATMIX balance between audio(0%) and chat(100%).
4
+ * @param sonarEndpoint Sonar endpoint URL
5
+ * @param chatBalance Balance as 0 - 100,
6
+ */
7
+ export declare function setChatMixBalance(sonarEndpoint: string, chatBalance: number): Promise<ChatMixData>;
@@ -0,0 +1,3 @@
1
+ import { AudioChannel } from '@/enums';
2
+ import { SonarChannel } from '@/sonar/models/audio-settings/enums/sonar-channel';
3
+ export declare function convertChannelToApi(channel: AudioChannel): SonarChannel;
@@ -0,0 +1,2 @@
1
+ /** convert [0 to 100] to [-1 to 1] */
2
+ export declare function convertChatMixBalanceToApi(balance: number): number;
@@ -0,0 +1,2 @@
1
+ /** convert [-1 to 1] to [0 to 100] */
2
+ export declare function convertChatMixBalanceToUser(balance: number): number;
@@ -0,0 +1,3 @@
1
+ import { ProfileChannel } from '@/enums';
2
+ import { VirtualAudioDevice } from '@/sonar/models/config/enums/VirtualAudioDevice';
3
+ export declare function convertProfileChannelToApi(channel: ProfileChannel): VirtualAudioDevice;
@@ -0,0 +1,3 @@
1
+ import { ProfileChannel } from '@/enums';
2
+ import { VirtualAudioDevice } from '@/sonar/models/config/enums/VirtualAudioDevice';
3
+ export declare function convertProfileChannelToUser(channel: VirtualAudioDevice): ProfileChannel;
@@ -0,0 +1 @@
1
+ export declare function convertVolumeToApi(value: number): number;
@@ -0,0 +1 @@
1
+ export declare function convertVolumeToUser(value: number): number;
@@ -0,0 +1,3 @@
1
+ import { DeviceFlow } from '@/enums';
2
+ import type { AudioDevice } from '@/types/audio-device';
3
+ export declare function getAudioDevices(sonarEndpoint: string, deviceType?: DeviceFlow): Promise<AudioDevice[]>;
@@ -0,0 +1,3 @@
1
+ import type { DeviceChannel } from '@/enums';
2
+ import type { ChangedDevice } from '@/types/changed-device';
3
+ export declare function setAudioDevice(sonarEndpoint: string, deviceChannel: DeviceChannel, deviceId: string): Promise<ChangedDevice[]>;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Retrieves the SteelSeries GG application's encrypted address from the coreProps.json file.
3
+ *
4
+ * @returns A promise that resolves to the GG application's secure address string (e.g., "https://..."),
5
+ * as found in the ggEncryptedAddress property of coreProps.json.
6
+ *
7
+ * @throws {SonarInitializationException} If the GG server cannot be determined.
8
+ *
9
+ * @remarks
10
+ * - Only supports Windows OS; throws on other platforms.
11
+ * - Locates coreProps.json in the ProgramData directory under SteelSeries folders.
12
+ * - Reads and parses the file, returning the encrypted address as a secure URL.
13
+ */
14
+ export declare function getAppEndpoint(): Promise<string>;
@@ -0,0 +1 @@
1
+ export declare function getSonarEndpointCached(appAddress: string, seconds?: number): Promise<string>;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Retrieves the Sonar web server address from an application server's /subApps endpoint.
3
+ *
4
+ * @param appEndpoint - The base URL of the application server (e.g. "https://localhost:1234").
5
+ * @returns A promise that resolves to the Sonar web server address.
6
+ *
7
+ * @throws {SonarInitializationException} If the sonar server cannot be determined.
8
+ *
9
+ * @remarks
10
+ * - Performs a GET request to `${appAddress}/subApps`.
11
+ * - The response body is expected to conform to the SubAppsResponse shape and contain `subApps.sonar`.
12
+ * - Uses a fetch TLS option that disables certificate verification (rejectUnauthorized: false).
13
+ */
14
+ export declare function getSonarEndpoint(appEndpoint: string): Promise<string>;
@@ -0,0 +1,3 @@
1
+ import type { ProfileChannel } from '@/enums';
2
+ import type { ProfileOption } from '@/types/profile-option';
3
+ export declare function getChannelProfiles(sonarAddress: string, channel: ProfileChannel, favoritesOnly?: boolean): Promise<ProfileOption[]>;
@@ -0,0 +1,2 @@
1
+ import type { ProfileOption } from '@/types/profile-option';
2
+ export declare function getSelectedProfiles(sonarAddress: string): Promise<ProfileOption[]>;
@@ -0,0 +1,2 @@
1
+ import type { ProfileOption } from '@/types/profile-option';
2
+ export declare function setSelectedProfile(sonarAddress: string, profileId: string): Promise<ProfileOption>;
@@ -0,0 +1,29 @@
1
+ export * from '@/enums';
2
+ export * from '@/exceptions';
3
+ export * from '@/functions/audio/get-audio-data-classic';
4
+ export * from '@/functions/audio/get-audio-data-stream';
5
+ export * from '@/functions/audio/get-audio-mode';
6
+ export * from '@/functions/audio/set-audio-mode';
7
+ export * from '@/functions/audio/set-channel-mute-classic';
8
+ export * from '@/functions/audio/set-channel-mute-streamer';
9
+ export * from '@/functions/audio/set-channel-volume-classic';
10
+ export * from '@/functions/audio/set-channel-volume-streamer';
11
+ export * from '@/functions/chatmix/get-chat-mix-state';
12
+ export * from '@/functions/chatmix/set-chat-mix-balance';
13
+ export * from '@/functions/devices/get-audio-devices';
14
+ export * from '@/functions/devices/set-audio-device';
15
+ export * from '@/functions/endpoint/get-app-endpoint';
16
+ export * from '@/functions/endpoint/get-sonar-endpoint';
17
+ export * from '@/functions/endpoint/get-sonar-endpoint-cached';
18
+ export * from '@/functions/profile/get-channel-profiles';
19
+ export * from '@/functions/profile/get-selected-profiles';
20
+ export * from '@/functions/profile/set-selected-profile';
21
+ export * from '@/types/audio-device';
22
+ export * from '@/types/changed-device';
23
+ export * from '@/types/channel-volume-classic';
24
+ export * from '@/types/channel-volume-streamer';
25
+ export * from '@/types/channel-volume-streamer-path';
26
+ export * from '@/types/channel-volumes-classic';
27
+ export * from '@/types/channel-volumes-streamer';
28
+ export * from '@/types/chat-mix-data';
29
+ export * from '@/types/profile-option';