@tx5dr/contracts 1.7.12 → 2.5.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 (255) hide show
  1. package/dist/index.d.ts +7 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +6 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/schema/__tests__/android-operator-audio.schema.test.d.ts +2 -0
  6. package/dist/schema/__tests__/android-operator-audio.schema.test.d.ts.map +1 -0
  7. package/dist/schema/__tests__/android-operator-audio.schema.test.js +27 -0
  8. package/dist/schema/__tests__/android-operator-audio.schema.test.js.map +1 -0
  9. package/dist/schema/__tests__/assisted-queue.schema.test.d.ts +2 -0
  10. package/dist/schema/__tests__/assisted-queue.schema.test.d.ts.map +1 -0
  11. package/dist/schema/__tests__/assisted-queue.schema.test.js +114 -0
  12. package/dist/schema/__tests__/assisted-queue.schema.test.js.map +1 -0
  13. package/dist/schema/__tests__/audio-sidecar.schema.test.d.ts +2 -0
  14. package/dist/schema/__tests__/audio-sidecar.schema.test.d.ts.map +1 -0
  15. package/dist/schema/__tests__/audio-sidecar.schema.test.js +42 -0
  16. package/dist/schema/__tests__/audio-sidecar.schema.test.js.map +1 -0
  17. package/dist/schema/__tests__/audio.schema.test.js +92 -1
  18. package/dist/schema/__tests__/audio.schema.test.js.map +1 -1
  19. package/dist/schema/__tests__/diagnostics.schema.test.d.ts +2 -0
  20. package/dist/schema/__tests__/diagnostics.schema.test.d.ts.map +1 -0
  21. package/dist/schema/__tests__/diagnostics.schema.test.js +31 -0
  22. package/dist/schema/__tests__/diagnostics.schema.test.js.map +1 -0
  23. package/dist/schema/__tests__/logbook-health.schema.test.d.ts +2 -0
  24. package/dist/schema/__tests__/logbook-health.schema.test.d.ts.map +1 -0
  25. package/dist/schema/__tests__/logbook-health.schema.test.js +104 -0
  26. package/dist/schema/__tests__/logbook-health.schema.test.js.map +1 -0
  27. package/dist/schema/__tests__/meter.schema.test.d.ts +2 -0
  28. package/dist/schema/__tests__/meter.schema.test.d.ts.map +1 -0
  29. package/dist/schema/__tests__/meter.schema.test.js +27 -0
  30. package/dist/schema/__tests__/meter.schema.test.js.map +1 -0
  31. package/dist/schema/__tests__/observability.schema.test.d.ts +2 -0
  32. package/dist/schema/__tests__/observability.schema.test.d.ts.map +1 -0
  33. package/dist/schema/__tests__/observability.schema.test.js +12 -0
  34. package/dist/schema/__tests__/observability.schema.test.js.map +1 -0
  35. package/dist/schema/__tests__/operator-context-report.schema.test.d.ts +2 -0
  36. package/dist/schema/__tests__/operator-context-report.schema.test.d.ts.map +1 -0
  37. package/dist/schema/__tests__/operator-context-report.schema.test.js +70 -0
  38. package/dist/schema/__tests__/operator-context-report.schema.test.js.map +1 -0
  39. package/dist/schema/__tests__/operator.schema.test.js +9 -3
  40. package/dist/schema/__tests__/operator.schema.test.js.map +1 -1
  41. package/dist/schema/__tests__/plugin-market.schema.test.js +149 -3
  42. package/dist/schema/__tests__/plugin-market.schema.test.js.map +1 -1
  43. package/dist/schema/__tests__/qso.schema.test.d.ts +2 -0
  44. package/dist/schema/__tests__/qso.schema.test.d.ts.map +1 -0
  45. package/dist/schema/__tests__/qso.schema.test.js +70 -0
  46. package/dist/schema/__tests__/qso.schema.test.js.map +1 -0
  47. package/dist/schema/__tests__/radio-power-support.test.js +15 -0
  48. package/dist/schema/__tests__/radio-power-support.test.js.map +1 -1
  49. package/dist/schema/__tests__/radio-profile.schema.test.d.ts +2 -0
  50. package/dist/schema/__tests__/radio-profile.schema.test.d.ts.map +1 -0
  51. package/dist/schema/__tests__/radio-profile.schema.test.js +36 -0
  52. package/dist/schema/__tests__/radio-profile.schema.test.js.map +1 -0
  53. package/dist/schema/__tests__/radio.schema.test.js +92 -1
  54. package/dist/schema/__tests__/radio.schema.test.js.map +1 -1
  55. package/dist/schema/__tests__/realtime-settings.schema.test.js +2 -1
  56. package/dist/schema/__tests__/realtime-settings.schema.test.js.map +1 -1
  57. package/dist/schema/__tests__/remote-access.schema.test.d.ts +2 -0
  58. package/dist/schema/__tests__/remote-access.schema.test.d.ts.map +1 -0
  59. package/dist/schema/__tests__/remote-access.schema.test.js +18 -0
  60. package/dist/schema/__tests__/remote-access.schema.test.js.map +1 -0
  61. package/dist/schema/__tests__/spectrum.schema.test.d.ts +2 -0
  62. package/dist/schema/__tests__/spectrum.schema.test.d.ts.map +1 -0
  63. package/dist/schema/__tests__/spectrum.schema.test.js +107 -0
  64. package/dist/schema/__tests__/spectrum.schema.test.js.map +1 -0
  65. package/dist/schema/__tests__/strategy-transmission.schema.test.d.ts +2 -0
  66. package/dist/schema/__tests__/strategy-transmission.schema.test.d.ts.map +1 -0
  67. package/dist/schema/__tests__/strategy-transmission.schema.test.js +95 -0
  68. package/dist/schema/__tests__/strategy-transmission.schema.test.js.map +1 -0
  69. package/dist/schema/android-operator-audio.schema.d.ts +174 -0
  70. package/dist/schema/android-operator-audio.schema.d.ts.map +1 -0
  71. package/dist/schema/android-operator-audio.schema.js +38 -0
  72. package/dist/schema/android-operator-audio.schema.js.map +1 -0
  73. package/dist/schema/api-response.schema.d.ts +503 -44
  74. package/dist/schema/api-response.schema.d.ts.map +1 -1
  75. package/dist/schema/api-response.schema.js +9 -0
  76. package/dist/schema/api-response.schema.js.map +1 -1
  77. package/dist/schema/audio-sidecar.schema.d.ts +75 -0
  78. package/dist/schema/audio-sidecar.schema.d.ts.map +1 -1
  79. package/dist/schema/audio-sidecar.schema.js +32 -0
  80. package/dist/schema/audio-sidecar.schema.js.map +1 -1
  81. package/dist/schema/audio.schema.d.ts +4749 -3
  82. package/dist/schema/audio.schema.d.ts.map +1 -1
  83. package/dist/schema/audio.schema.js +101 -2
  84. package/dist/schema/audio.schema.js.map +1 -1
  85. package/dist/schema/auth.schema.d.ts +173 -14
  86. package/dist/schema/auth.schema.d.ts.map +1 -1
  87. package/dist/schema/auth.schema.js +65 -1
  88. package/dist/schema/auth.schema.js.map +1 -1
  89. package/dist/schema/cpu-profile.schema.d.ts +2 -2
  90. package/dist/schema/cw-decoder.schema.d.ts +74 -74
  91. package/dist/schema/cw-keyer.schema.d.ts +20 -14
  92. package/dist/schema/cw-keyer.schema.d.ts.map +1 -1
  93. package/dist/schema/cw-keyer.schema.js +3 -0
  94. package/dist/schema/cw-keyer.schema.js.map +1 -1
  95. package/dist/schema/desktop-https.schema.d.ts +6 -6
  96. package/dist/schema/device-ui.schema.d.ts +16 -16
  97. package/dist/schema/diagnostics.schema.d.ts +163 -0
  98. package/dist/schema/diagnostics.schema.d.ts.map +1 -0
  99. package/dist/schema/diagnostics.schema.js +46 -0
  100. package/dist/schema/diagnostics.schema.js.map +1 -0
  101. package/dist/schema/ft8.schema.d.ts +12 -2
  102. package/dist/schema/ft8.schema.d.ts.map +1 -1
  103. package/dist/schema/ft8.schema.js +8 -0
  104. package/dist/schema/ft8.schema.js.map +1 -1
  105. package/dist/schema/image-radio.schema.d.ts +2597 -0
  106. package/dist/schema/image-radio.schema.d.ts.map +1 -0
  107. package/dist/schema/image-radio.schema.js +283 -0
  108. package/dist/schema/image-radio.schema.js.map +1 -0
  109. package/dist/schema/logbook.schema.d.ts +2128 -18
  110. package/dist/schema/logbook.schema.d.ts.map +1 -1
  111. package/dist/schema/logbook.schema.js +159 -1
  112. package/dist/schema/logbook.schema.js.map +1 -1
  113. package/dist/schema/mode.schema.d.ts +4 -6
  114. package/dist/schema/mode.schema.d.ts.map +1 -1
  115. package/dist/schema/mode.schema.js +18 -6
  116. package/dist/schema/mode.schema.js.map +1 -1
  117. package/dist/schema/observability.schema.d.ts +66 -0
  118. package/dist/schema/observability.schema.d.ts.map +1 -0
  119. package/dist/schema/observability.schema.js +20 -0
  120. package/dist/schema/observability.schema.js.map +1 -0
  121. package/dist/schema/openwebrx.schema.d.ts +2 -2
  122. package/dist/schema/operator.schema.d.ts +2682 -6
  123. package/dist/schema/operator.schema.d.ts.map +1 -1
  124. package/dist/schema/operator.schema.js +10 -20
  125. package/dist/schema/operator.schema.js.map +1 -1
  126. package/dist/schema/plugin.schema.d.ts +1977 -492
  127. package/dist/schema/plugin.schema.d.ts.map +1 -1
  128. package/dist/schema/plugin.schema.js +165 -14
  129. package/dist/schema/plugin.schema.js.map +1 -1
  130. package/dist/schema/process-monitor.schema.d.ts +132 -132
  131. package/dist/schema/pskreporter.schema.d.ts +1 -3
  132. package/dist/schema/pskreporter.schema.d.ts.map +1 -1
  133. package/dist/schema/pskreporter.schema.js +1 -3
  134. package/dist/schema/pskreporter.schema.js.map +1 -1
  135. package/dist/schema/qso.schema.d.ts +246 -1
  136. package/dist/schema/qso.schema.d.ts.map +1 -1
  137. package/dist/schema/qso.schema.js +68 -0
  138. package/dist/schema/qso.schema.js.map +1 -1
  139. package/dist/schema/radio-capability.schema.d.ts +31 -40
  140. package/dist/schema/radio-capability.schema.d.ts.map +1 -1
  141. package/dist/schema/radio-capability.schema.js +8 -15
  142. package/dist/schema/radio-capability.schema.js.map +1 -1
  143. package/dist/schema/radio-power-support.d.ts.map +1 -1
  144. package/dist/schema/radio-power-support.js +3 -0
  145. package/dist/schema/radio-power-support.js.map +1 -1
  146. package/dist/schema/radio-power.schema.d.ts +102 -13
  147. package/dist/schema/radio-power.schema.d.ts.map +1 -1
  148. package/dist/schema/radio-power.schema.js +15 -8
  149. package/dist/schema/radio-power.schema.js.map +1 -1
  150. package/dist/schema/radio-profile.schema.d.ts +1491 -97
  151. package/dist/schema/radio-profile.schema.d.ts.map +1 -1
  152. package/dist/schema/radio-profile.schema.js +7 -0
  153. package/dist/schema/radio-profile.schema.js.map +1 -1
  154. package/dist/schema/radio.schema.d.ts +442 -48
  155. package/dist/schema/radio.schema.d.ts.map +1 -1
  156. package/dist/schema/radio.schema.js +75 -7
  157. package/dist/schema/radio.schema.js.map +1 -1
  158. package/dist/schema/realtime.schema.d.ts +60 -52
  159. package/dist/schema/realtime.schema.d.ts.map +1 -1
  160. package/dist/schema/realtime.schema.js +9 -1
  161. package/dist/schema/realtime.schema.js.map +1 -1
  162. package/dist/schema/rigctld.schema.d.ts +6 -6
  163. package/dist/schema/slot-info.schema.d.ts +28 -9
  164. package/dist/schema/slot-info.schema.d.ts.map +1 -1
  165. package/dist/schema/slot-info.schema.js +17 -10
  166. package/dist/schema/slot-info.schema.js.map +1 -1
  167. package/dist/schema/spectrum-config.schema.d.ts +638 -0
  168. package/dist/schema/spectrum-config.schema.d.ts.map +1 -0
  169. package/dist/schema/spectrum-config.schema.js +129 -0
  170. package/dist/schema/spectrum-config.schema.js.map +1 -0
  171. package/dist/schema/spectrum.schema.d.ts +1323 -30
  172. package/dist/schema/spectrum.schema.d.ts.map +1 -1
  173. package/dist/schema/spectrum.schema.js +72 -0
  174. package/dist/schema/spectrum.schema.js.map +1 -1
  175. package/dist/schema/station-info.schema.d.ts +5 -0
  176. package/dist/schema/station-info.schema.d.ts.map +1 -1
  177. package/dist/schema/station-info.schema.js +5 -0
  178. package/dist/schema/station-info.schema.js.map +1 -1
  179. package/dist/schema/system.schema.d.ts +56 -6
  180. package/dist/schema/system.schema.d.ts.map +1 -1
  181. package/dist/schema/system.schema.js +22 -0
  182. package/dist/schema/system.schema.js.map +1 -1
  183. package/dist/schema/transmission.schema.d.ts +8 -7
  184. package/dist/schema/transmission.schema.d.ts.map +1 -1
  185. package/dist/schema/transmission.schema.js +2 -7
  186. package/dist/schema/transmission.schema.js.map +1 -1
  187. package/dist/schema/tx-audio-input.schema.d.ts +8 -0
  188. package/dist/schema/tx-audio-input.schema.d.ts.map +1 -0
  189. package/dist/schema/tx-audio-input.schema.js +19 -0
  190. package/dist/schema/tx-audio-input.schema.js.map +1 -0
  191. package/dist/schema/voice-keyer.schema.d.ts +16 -16
  192. package/dist/schema/voice.schema.d.ts +1 -1
  193. package/dist/schema/voice.schema.d.ts.map +1 -1
  194. package/dist/schema/voice.schema.js +1 -1
  195. package/dist/schema/voice.schema.js.map +1 -1
  196. package/dist/schema/websocket.schema.d.ts +35811 -7829
  197. package/dist/schema/websocket.schema.d.ts.map +1 -1
  198. package/dist/schema/websocket.schema.js +453 -9
  199. package/dist/schema/websocket.schema.js.map +1 -1
  200. package/package.json +6 -1
  201. package/src/index.ts +7 -0
  202. package/src/schema/__tests__/android-operator-audio.schema.test.ts +31 -0
  203. package/src/schema/__tests__/assisted-queue.schema.test.ts +122 -0
  204. package/src/schema/__tests__/audio-sidecar.schema.test.ts +48 -0
  205. package/src/schema/__tests__/audio.schema.test.ts +102 -0
  206. package/src/schema/__tests__/diagnostics.schema.test.ts +32 -0
  207. package/src/schema/__tests__/logbook-health.schema.test.ts +117 -0
  208. package/src/schema/__tests__/meter.schema.test.ts +28 -0
  209. package/src/schema/__tests__/observability.schema.test.ts +15 -0
  210. package/src/schema/__tests__/operator-context-report.schema.test.ts +77 -0
  211. package/src/schema/__tests__/operator.schema.test.ts +11 -3
  212. package/src/schema/__tests__/plugin-market.schema.test.ts +165 -2
  213. package/src/schema/__tests__/qso.schema.test.ts +91 -0
  214. package/src/schema/__tests__/radio-power-support.test.ts +17 -0
  215. package/src/schema/__tests__/radio-profile.schema.test.ts +44 -0
  216. package/src/schema/__tests__/radio.schema.test.ts +108 -1
  217. package/src/schema/__tests__/realtime-settings.schema.test.ts +2 -1
  218. package/src/schema/__tests__/remote-access.schema.test.ts +22 -0
  219. package/src/schema/__tests__/spectrum.schema.test.ts +119 -0
  220. package/src/schema/__tests__/strategy-transmission.schema.test.ts +106 -0
  221. package/src/schema/android-operator-audio.schema.ts +49 -0
  222. package/src/schema/api-response.schema.ts +11 -0
  223. package/src/schema/audio-sidecar.schema.ts +35 -0
  224. package/src/schema/audio.schema.ts +115 -2
  225. package/src/schema/auth.schema.ts +79 -1
  226. package/src/schema/cw-keyer.schema.ts +5 -0
  227. package/src/schema/diagnostics.schema.ts +55 -0
  228. package/src/schema/ft8.schema.ts +8 -0
  229. package/src/schema/image-radio.schema.ts +342 -0
  230. package/src/schema/logbook.schema.ts +205 -1
  231. package/src/schema/mode.schema.ts +18 -6
  232. package/src/schema/observability.schema.ts +26 -0
  233. package/src/schema/operator.schema.ts +11 -20
  234. package/src/schema/plugin.schema.ts +186 -15
  235. package/src/schema/pskreporter.schema.ts +1 -3
  236. package/src/schema/qso.schema.ts +78 -0
  237. package/src/schema/radio-capability.schema.ts +8 -15
  238. package/src/schema/radio-power-support.ts +3 -0
  239. package/src/schema/radio-power.schema.ts +15 -8
  240. package/src/schema/radio-profile.schema.ts +7 -0
  241. package/src/schema/radio.schema.ts +90 -7
  242. package/src/schema/realtime.schema.ts +9 -1
  243. package/src/schema/slot-info.schema.ts +18 -11
  244. package/src/schema/spectrum-config.schema.ts +156 -0
  245. package/src/schema/spectrum.schema.ts +89 -0
  246. package/src/schema/station-info.schema.ts +5 -0
  247. package/src/schema/system.schema.ts +29 -0
  248. package/src/schema/transmission.schema.ts +2 -7
  249. package/src/schema/tx-audio-input.schema.ts +22 -0
  250. package/src/schema/voice.schema.ts +1 -1
  251. package/src/schema/websocket.schema.ts +601 -13
  252. package/test/image-radio-schema.test.ts +107 -0
  253. package/test/plugin-slot-schema.test.ts +31 -0
  254. package/test/radio-capability-schema.test.ts +44 -0
  255. package/CLAUDE.md +0 -41
@@ -0,0 +1,638 @@
1
+ import { z } from 'zod';
2
+ export declare const SpectrumPresetIdSchema: z.ZodEnum<["responsive", "balanced", "fine"]>;
3
+ export declare const SpectrumPresetSchema: z.ZodEnum<["responsive", "balanced", "fine", "custom"]>;
4
+ export type SpectrumPreset = z.infer<typeof SpectrumPresetSchema>;
5
+ export type SpectrumPresetId = z.infer<typeof SpectrumPresetIdSchema>;
6
+ export declare const SpectrumWindowFunctionSchema: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
7
+ export type SpectrumWindowFunction = z.infer<typeof SpectrumWindowFunctionSchema>;
8
+ export declare const SpectrumFftSizeSchema: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
9
+ export declare const SpectrumTargetSampleRateSchema: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
10
+ export declare const SpectrumCustomSettingsSchema: z.ZodObject<{
11
+ analysisIntervalMs: z.ZodNumber;
12
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
13
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
14
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
15
+ haloReduce: z.ZodBoolean;
16
+ }, "strip", z.ZodTypeAny, {
17
+ analysisIntervalMs: number;
18
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
19
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
20
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
21
+ haloReduce: boolean;
22
+ }, {
23
+ analysisIntervalMs: number;
24
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
25
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
26
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
27
+ haloReduce: boolean;
28
+ }>;
29
+ export type SpectrumCustomSettings = z.infer<typeof SpectrumCustomSettingsSchema>;
30
+ export declare const SpectrumRenderFrequencyRangeSchema: z.ZodEffects<z.ZodObject<{
31
+ min: z.ZodNumber;
32
+ max: z.ZodNumber;
33
+ }, "strip", z.ZodTypeAny, {
34
+ min: number;
35
+ max: number;
36
+ }, {
37
+ min: number;
38
+ max: number;
39
+ }>, {
40
+ min: number;
41
+ max: number;
42
+ }, {
43
+ min: number;
44
+ max: number;
45
+ }>;
46
+ export declare const SpectrumRenderConfigSchema: z.ZodObject<{
47
+ preset: z.ZodEnum<["responsive", "balanced", "fine", "custom"]>;
48
+ revision: z.ZodNumber;
49
+ analysisIntervalMs: z.ZodNumber;
50
+ frameRateHz: z.ZodNumber;
51
+ fftSize: z.ZodNumber;
52
+ targetSampleRate: z.ZodNumber;
53
+ fftWindowDurationMs: z.ZodNumber;
54
+ frequencyResolutionHz: z.ZodNumber;
55
+ frequencyRange: z.ZodEffects<z.ZodObject<{
56
+ min: z.ZodNumber;
57
+ max: z.ZodNumber;
58
+ }, "strip", z.ZodTypeAny, {
59
+ min: number;
60
+ max: number;
61
+ }, {
62
+ min: number;
63
+ max: number;
64
+ }>, {
65
+ min: number;
66
+ max: number;
67
+ }, {
68
+ min: number;
69
+ max: number;
70
+ }>;
71
+ displayBinCount: z.ZodNumber;
72
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
73
+ haloReduce: z.ZodBoolean;
74
+ customSettings: z.ZodOptional<z.ZodObject<{
75
+ analysisIntervalMs: z.ZodNumber;
76
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
77
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
78
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
79
+ haloReduce: z.ZodBoolean;
80
+ }, "strip", z.ZodTypeAny, {
81
+ analysisIntervalMs: number;
82
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
83
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
84
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
85
+ haloReduce: boolean;
86
+ }, {
87
+ analysisIntervalMs: number;
88
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
89
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
90
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
91
+ haloReduce: boolean;
92
+ }>>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ preset: "custom" | "balanced" | "responsive" | "fine";
95
+ frequencyRange: {
96
+ min: number;
97
+ max: number;
98
+ };
99
+ analysisIntervalMs: number;
100
+ fftSize: number;
101
+ targetSampleRate: number;
102
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
103
+ haloReduce: boolean;
104
+ revision: number;
105
+ frameRateHz: number;
106
+ fftWindowDurationMs: number;
107
+ frequencyResolutionHz: number;
108
+ displayBinCount: number;
109
+ customSettings?: {
110
+ analysisIntervalMs: number;
111
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
112
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
113
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
114
+ haloReduce: boolean;
115
+ } | undefined;
116
+ }, {
117
+ preset: "custom" | "balanced" | "responsive" | "fine";
118
+ frequencyRange: {
119
+ min: number;
120
+ max: number;
121
+ };
122
+ analysisIntervalMs: number;
123
+ fftSize: number;
124
+ targetSampleRate: number;
125
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
126
+ haloReduce: boolean;
127
+ revision: number;
128
+ frameRateHz: number;
129
+ fftWindowDurationMs: number;
130
+ frequencyResolutionHz: number;
131
+ displayBinCount: number;
132
+ customSettings?: {
133
+ analysisIntervalMs: number;
134
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
135
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
136
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
137
+ haloReduce: boolean;
138
+ } | undefined;
139
+ }>;
140
+ export type SpectrumRenderConfig = z.infer<typeof SpectrumRenderConfigSchema>;
141
+ export declare const TciIqSampleRateSchema: z.ZodNumber;
142
+ export type TciIqSampleRate = z.infer<typeof TciIqSampleRateSchema>;
143
+ export declare const TciSpectrumSettingsSchema: z.ZodObject<{
144
+ fftSize: z.ZodUnion<[z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>, z.ZodLiteral<32768>, z.ZodLiteral<65536>]>;
145
+ displayBinCount: z.ZodNumber;
146
+ analysisIntervalMs: z.ZodNumber;
147
+ }, "strip", z.ZodTypeAny, {
148
+ analysisIntervalMs: number;
149
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
150
+ displayBinCount: number;
151
+ }, {
152
+ analysisIntervalMs: number;
153
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
154
+ displayBinCount: number;
155
+ }>;
156
+ export type TciSpectrumSettings = z.infer<typeof TciSpectrumSettingsSchema>;
157
+ export declare const TciSpectrumSettingsResponseSchema: z.ZodObject<{
158
+ success: z.ZodBoolean;
159
+ settings: z.ZodObject<{
160
+ fftSize: z.ZodUnion<[z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>, z.ZodLiteral<32768>, z.ZodLiteral<65536>]>;
161
+ displayBinCount: z.ZodNumber;
162
+ analysisIntervalMs: z.ZodNumber;
163
+ }, "strip", z.ZodTypeAny, {
164
+ analysisIntervalMs: number;
165
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
166
+ displayBinCount: number;
167
+ }, {
168
+ analysisIntervalMs: number;
169
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
170
+ displayBinCount: number;
171
+ }>;
172
+ }, "strip", z.ZodTypeAny, {
173
+ success: boolean;
174
+ settings: {
175
+ analysisIntervalMs: number;
176
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
177
+ displayBinCount: number;
178
+ };
179
+ }, {
180
+ success: boolean;
181
+ settings: {
182
+ analysisIntervalMs: number;
183
+ fftSize: 4096 | 8192 | 16384 | 32768 | 65536;
184
+ displayBinCount: number;
185
+ };
186
+ }>;
187
+ export type TciSpectrumSettingsResponse = z.infer<typeof TciSpectrumSettingsResponseSchema>;
188
+ export declare const TciIqSpectrumSettingsResponseSchema: z.ZodObject<{
189
+ success: z.ZodBoolean;
190
+ configuredSampleRate: z.ZodNullable<z.ZodNumber>;
191
+ appliedSampleRate: z.ZodNullable<z.ZodNumber>;
192
+ supportedSampleRates: z.ZodArray<z.ZodNumber, "many">;
193
+ }, "strip", z.ZodTypeAny, {
194
+ success: boolean;
195
+ configuredSampleRate: number | null;
196
+ appliedSampleRate: number | null;
197
+ supportedSampleRates: number[];
198
+ }, {
199
+ success: boolean;
200
+ configuredSampleRate: number | null;
201
+ appliedSampleRate: number | null;
202
+ supportedSampleRates: number[];
203
+ }>;
204
+ export type TciIqSpectrumSettingsResponse = z.infer<typeof TciIqSpectrumSettingsResponseSchema>;
205
+ export declare const SpectrumPresetDefinitionSchema: z.ZodObject<Omit<{
206
+ preset: z.ZodEnum<["responsive", "balanced", "fine", "custom"]>;
207
+ revision: z.ZodNumber;
208
+ analysisIntervalMs: z.ZodNumber;
209
+ frameRateHz: z.ZodNumber;
210
+ fftSize: z.ZodNumber;
211
+ targetSampleRate: z.ZodNumber;
212
+ fftWindowDurationMs: z.ZodNumber;
213
+ frequencyResolutionHz: z.ZodNumber;
214
+ frequencyRange: z.ZodEffects<z.ZodObject<{
215
+ min: z.ZodNumber;
216
+ max: z.ZodNumber;
217
+ }, "strip", z.ZodTypeAny, {
218
+ min: number;
219
+ max: number;
220
+ }, {
221
+ min: number;
222
+ max: number;
223
+ }>, {
224
+ min: number;
225
+ max: number;
226
+ }, {
227
+ min: number;
228
+ max: number;
229
+ }>;
230
+ displayBinCount: z.ZodNumber;
231
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
232
+ haloReduce: z.ZodBoolean;
233
+ customSettings: z.ZodOptional<z.ZodObject<{
234
+ analysisIntervalMs: z.ZodNumber;
235
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
236
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
237
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
238
+ haloReduce: z.ZodBoolean;
239
+ }, "strip", z.ZodTypeAny, {
240
+ analysisIntervalMs: number;
241
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
242
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
243
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
244
+ haloReduce: boolean;
245
+ }, {
246
+ analysisIntervalMs: number;
247
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
248
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
249
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
250
+ haloReduce: boolean;
251
+ }>>;
252
+ }, "revision">, "strip", z.ZodTypeAny, {
253
+ preset: "custom" | "balanced" | "responsive" | "fine";
254
+ frequencyRange: {
255
+ min: number;
256
+ max: number;
257
+ };
258
+ analysisIntervalMs: number;
259
+ fftSize: number;
260
+ targetSampleRate: number;
261
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
262
+ haloReduce: boolean;
263
+ frameRateHz: number;
264
+ fftWindowDurationMs: number;
265
+ frequencyResolutionHz: number;
266
+ displayBinCount: number;
267
+ customSettings?: {
268
+ analysisIntervalMs: number;
269
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
270
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
271
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
272
+ haloReduce: boolean;
273
+ } | undefined;
274
+ }, {
275
+ preset: "custom" | "balanced" | "responsive" | "fine";
276
+ frequencyRange: {
277
+ min: number;
278
+ max: number;
279
+ };
280
+ analysisIntervalMs: number;
281
+ fftSize: number;
282
+ targetSampleRate: number;
283
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
284
+ haloReduce: boolean;
285
+ frameRateHz: number;
286
+ fftWindowDurationMs: number;
287
+ frequencyResolutionHz: number;
288
+ displayBinCount: number;
289
+ customSettings?: {
290
+ analysisIntervalMs: number;
291
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
292
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
293
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
294
+ haloReduce: boolean;
295
+ } | undefined;
296
+ }>;
297
+ export type SpectrumPresetDefinition = z.infer<typeof SpectrumPresetDefinitionSchema>;
298
+ export declare const SPECTRUM_PRESET_DEFINITIONS: Record<SpectrumPresetId, SpectrumPresetDefinition>;
299
+ export declare function getSpectrumPresetDefinition(preset: SpectrumPresetId): SpectrumPresetDefinition;
300
+ export declare const SpectrumSettingsUpdateRequestSchema: z.ZodDiscriminatedUnion<"preset", [z.ZodObject<{
301
+ preset: z.ZodEnum<["responsive", "balanced", "fine"]>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ preset: "balanced" | "responsive" | "fine";
304
+ }, {
305
+ preset: "balanced" | "responsive" | "fine";
306
+ }>, z.ZodObject<{
307
+ preset: z.ZodLiteral<"custom">;
308
+ settings: z.ZodObject<{
309
+ analysisIntervalMs: z.ZodNumber;
310
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
311
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
312
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
313
+ haloReduce: z.ZodBoolean;
314
+ }, "strip", z.ZodTypeAny, {
315
+ analysisIntervalMs: number;
316
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
317
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
318
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
319
+ haloReduce: boolean;
320
+ }, {
321
+ analysisIntervalMs: number;
322
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
323
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
324
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
325
+ haloReduce: boolean;
326
+ }>;
327
+ }, "strip", z.ZodTypeAny, {
328
+ preset: "custom";
329
+ settings: {
330
+ analysisIntervalMs: number;
331
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
332
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
333
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
334
+ haloReduce: boolean;
335
+ };
336
+ }, {
337
+ preset: "custom";
338
+ settings: {
339
+ analysisIntervalMs: number;
340
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
341
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
342
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
343
+ haloReduce: boolean;
344
+ };
345
+ }>]>;
346
+ export type SpectrumSettingsUpdateRequest = z.infer<typeof SpectrumSettingsUpdateRequestSchema>;
347
+ export declare const SpectrumSettingsResponseSchema: z.ZodObject<{
348
+ success: z.ZodBoolean;
349
+ message: z.ZodOptional<z.ZodString>;
350
+ currentSettings: z.ZodObject<{
351
+ preset: z.ZodEnum<["responsive", "balanced", "fine", "custom"]>;
352
+ revision: z.ZodNumber;
353
+ analysisIntervalMs: z.ZodNumber;
354
+ frameRateHz: z.ZodNumber;
355
+ fftSize: z.ZodNumber;
356
+ targetSampleRate: z.ZodNumber;
357
+ fftWindowDurationMs: z.ZodNumber;
358
+ frequencyResolutionHz: z.ZodNumber;
359
+ frequencyRange: z.ZodEffects<z.ZodObject<{
360
+ min: z.ZodNumber;
361
+ max: z.ZodNumber;
362
+ }, "strip", z.ZodTypeAny, {
363
+ min: number;
364
+ max: number;
365
+ }, {
366
+ min: number;
367
+ max: number;
368
+ }>, {
369
+ min: number;
370
+ max: number;
371
+ }, {
372
+ min: number;
373
+ max: number;
374
+ }>;
375
+ displayBinCount: z.ZodNumber;
376
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
377
+ haloReduce: z.ZodBoolean;
378
+ customSettings: z.ZodOptional<z.ZodObject<{
379
+ analysisIntervalMs: z.ZodNumber;
380
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
381
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
382
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
383
+ haloReduce: z.ZodBoolean;
384
+ }, "strip", z.ZodTypeAny, {
385
+ analysisIntervalMs: number;
386
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
387
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
388
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
389
+ haloReduce: boolean;
390
+ }, {
391
+ analysisIntervalMs: number;
392
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
393
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
394
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
395
+ haloReduce: boolean;
396
+ }>>;
397
+ }, "strip", z.ZodTypeAny, {
398
+ preset: "custom" | "balanced" | "responsive" | "fine";
399
+ frequencyRange: {
400
+ min: number;
401
+ max: number;
402
+ };
403
+ analysisIntervalMs: number;
404
+ fftSize: number;
405
+ targetSampleRate: number;
406
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
407
+ haloReduce: boolean;
408
+ revision: number;
409
+ frameRateHz: number;
410
+ fftWindowDurationMs: number;
411
+ frequencyResolutionHz: number;
412
+ displayBinCount: number;
413
+ customSettings?: {
414
+ analysisIntervalMs: number;
415
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
416
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
417
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
418
+ haloReduce: boolean;
419
+ } | undefined;
420
+ }, {
421
+ preset: "custom" | "balanced" | "responsive" | "fine";
422
+ frequencyRange: {
423
+ min: number;
424
+ max: number;
425
+ };
426
+ analysisIntervalMs: number;
427
+ fftSize: number;
428
+ targetSampleRate: number;
429
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
430
+ haloReduce: boolean;
431
+ revision: number;
432
+ frameRateHz: number;
433
+ fftWindowDurationMs: number;
434
+ frequencyResolutionHz: number;
435
+ displayBinCount: number;
436
+ customSettings?: {
437
+ analysisIntervalMs: number;
438
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
439
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
440
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
441
+ haloReduce: boolean;
442
+ } | undefined;
443
+ }>;
444
+ presets: z.ZodArray<z.ZodObject<Omit<{
445
+ preset: z.ZodEnum<["responsive", "balanced", "fine", "custom"]>;
446
+ revision: z.ZodNumber;
447
+ analysisIntervalMs: z.ZodNumber;
448
+ frameRateHz: z.ZodNumber;
449
+ fftSize: z.ZodNumber;
450
+ targetSampleRate: z.ZodNumber;
451
+ fftWindowDurationMs: z.ZodNumber;
452
+ frequencyResolutionHz: z.ZodNumber;
453
+ frequencyRange: z.ZodEffects<z.ZodObject<{
454
+ min: z.ZodNumber;
455
+ max: z.ZodNumber;
456
+ }, "strip", z.ZodTypeAny, {
457
+ min: number;
458
+ max: number;
459
+ }, {
460
+ min: number;
461
+ max: number;
462
+ }>, {
463
+ min: number;
464
+ max: number;
465
+ }, {
466
+ min: number;
467
+ max: number;
468
+ }>;
469
+ displayBinCount: z.ZodNumber;
470
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
471
+ haloReduce: z.ZodBoolean;
472
+ customSettings: z.ZodOptional<z.ZodObject<{
473
+ analysisIntervalMs: z.ZodNumber;
474
+ fftSize: z.ZodUnion<[z.ZodLiteral<1024>, z.ZodLiteral<2048>, z.ZodLiteral<4096>, z.ZodLiteral<8192>, z.ZodLiteral<16384>]>;
475
+ targetSampleRate: z.ZodUnion<[z.ZodLiteral<3000>, z.ZodLiteral<4000>, z.ZodLiteral<6000>, z.ZodLiteral<8000>, z.ZodLiteral<12000>]>;
476
+ windowFunction: z.ZodEnum<["hann", "hamming", "blackman", "blackmanHarris", "none"]>;
477
+ haloReduce: z.ZodBoolean;
478
+ }, "strip", z.ZodTypeAny, {
479
+ analysisIntervalMs: number;
480
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
481
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
482
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
483
+ haloReduce: boolean;
484
+ }, {
485
+ analysisIntervalMs: number;
486
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
487
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
488
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
489
+ haloReduce: boolean;
490
+ }>>;
491
+ }, "revision">, "strip", z.ZodTypeAny, {
492
+ preset: "custom" | "balanced" | "responsive" | "fine";
493
+ frequencyRange: {
494
+ min: number;
495
+ max: number;
496
+ };
497
+ analysisIntervalMs: number;
498
+ fftSize: number;
499
+ targetSampleRate: number;
500
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
501
+ haloReduce: boolean;
502
+ frameRateHz: number;
503
+ fftWindowDurationMs: number;
504
+ frequencyResolutionHz: number;
505
+ displayBinCount: number;
506
+ customSettings?: {
507
+ analysisIntervalMs: number;
508
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
509
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
510
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
511
+ haloReduce: boolean;
512
+ } | undefined;
513
+ }, {
514
+ preset: "custom" | "balanced" | "responsive" | "fine";
515
+ frequencyRange: {
516
+ min: number;
517
+ max: number;
518
+ };
519
+ analysisIntervalMs: number;
520
+ fftSize: number;
521
+ targetSampleRate: number;
522
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
523
+ haloReduce: boolean;
524
+ frameRateHz: number;
525
+ fftWindowDurationMs: number;
526
+ frequencyResolutionHz: number;
527
+ displayBinCount: number;
528
+ customSettings?: {
529
+ analysisIntervalMs: number;
530
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
531
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
532
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
533
+ haloReduce: boolean;
534
+ } | undefined;
535
+ }>, "many">;
536
+ }, "strip", z.ZodTypeAny, {
537
+ success: boolean;
538
+ currentSettings: {
539
+ preset: "custom" | "balanced" | "responsive" | "fine";
540
+ frequencyRange: {
541
+ min: number;
542
+ max: number;
543
+ };
544
+ analysisIntervalMs: number;
545
+ fftSize: number;
546
+ targetSampleRate: number;
547
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
548
+ haloReduce: boolean;
549
+ revision: number;
550
+ frameRateHz: number;
551
+ fftWindowDurationMs: number;
552
+ frequencyResolutionHz: number;
553
+ displayBinCount: number;
554
+ customSettings?: {
555
+ analysisIntervalMs: number;
556
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
557
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
558
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
559
+ haloReduce: boolean;
560
+ } | undefined;
561
+ };
562
+ presets: {
563
+ preset: "custom" | "balanced" | "responsive" | "fine";
564
+ frequencyRange: {
565
+ min: number;
566
+ max: number;
567
+ };
568
+ analysisIntervalMs: number;
569
+ fftSize: number;
570
+ targetSampleRate: number;
571
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
572
+ haloReduce: boolean;
573
+ frameRateHz: number;
574
+ fftWindowDurationMs: number;
575
+ frequencyResolutionHz: number;
576
+ displayBinCount: number;
577
+ customSettings?: {
578
+ analysisIntervalMs: number;
579
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
580
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
581
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
582
+ haloReduce: boolean;
583
+ } | undefined;
584
+ }[];
585
+ message?: string | undefined;
586
+ }, {
587
+ success: boolean;
588
+ currentSettings: {
589
+ preset: "custom" | "balanced" | "responsive" | "fine";
590
+ frequencyRange: {
591
+ min: number;
592
+ max: number;
593
+ };
594
+ analysisIntervalMs: number;
595
+ fftSize: number;
596
+ targetSampleRate: number;
597
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
598
+ haloReduce: boolean;
599
+ revision: number;
600
+ frameRateHz: number;
601
+ fftWindowDurationMs: number;
602
+ frequencyResolutionHz: number;
603
+ displayBinCount: number;
604
+ customSettings?: {
605
+ analysisIntervalMs: number;
606
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
607
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
608
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
609
+ haloReduce: boolean;
610
+ } | undefined;
611
+ };
612
+ presets: {
613
+ preset: "custom" | "balanced" | "responsive" | "fine";
614
+ frequencyRange: {
615
+ min: number;
616
+ max: number;
617
+ };
618
+ analysisIntervalMs: number;
619
+ fftSize: number;
620
+ targetSampleRate: number;
621
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
622
+ haloReduce: boolean;
623
+ frameRateHz: number;
624
+ fftWindowDurationMs: number;
625
+ frequencyResolutionHz: number;
626
+ displayBinCount: number;
627
+ customSettings?: {
628
+ analysisIntervalMs: number;
629
+ fftSize: 1024 | 2048 | 4096 | 8192 | 16384;
630
+ targetSampleRate: 8000 | 12000 | 3000 | 4000 | 6000;
631
+ windowFunction: "none" | "hann" | "hamming" | "blackman" | "blackmanHarris";
632
+ haloReduce: boolean;
633
+ } | undefined;
634
+ }[];
635
+ message?: string | undefined;
636
+ }>;
637
+ export type SpectrumSettingsResponse = z.infer<typeof SpectrumSettingsResponseSchema>;
638
+ //# sourceMappingURL=spectrum-config.schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spectrum-config.schema.d.ts","sourceRoot":"","sources":["../../src/schema/spectrum-config.schema.ts"],"names":[],"mappings":"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"}