@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
@@ -12,6 +12,29 @@ export declare const PluginTypeSchema: z.ZodEnum<["strategy", "utility"]>;
12
12
  * High-level plugin category used by manifests and runtime status objects.
13
13
  */
14
14
  export type PluginType = z.infer<typeof PluginTypeSchema>;
15
+ export declare const StrategyFeaturesSchema: z.ZodOptional<z.ZodObject<{
16
+ targetQueue: z.ZodOptional<z.ZodLiteral<1>>;
17
+ parallelTargetQueue: z.ZodOptional<z.ZodLiteral<1>>;
18
+ queueActivation: z.ZodOptional<z.ZodEnum<["immediate", "operator-toggle"]>>;
19
+ manualInitiation: z.ZodOptional<z.ZodLiteral<1>>;
20
+ maxConcurrentStreams: z.ZodOptional<z.ZodNumber>;
21
+ maxSimultaneousSignals: z.ZodOptional<z.ZodNumber>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ maxConcurrentStreams?: number | undefined;
24
+ targetQueue?: 1 | undefined;
25
+ parallelTargetQueue?: 1 | undefined;
26
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
27
+ manualInitiation?: 1 | undefined;
28
+ maxSimultaneousSignals?: number | undefined;
29
+ }, {
30
+ maxConcurrentStreams?: number | undefined;
31
+ targetQueue?: 1 | undefined;
32
+ parallelTargetQueue?: 1 | undefined;
33
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
34
+ manualInitiation?: 1 | undefined;
35
+ maxSimultaneousSignals?: number | undefined;
36
+ }>>;
37
+ export type StrategyFeatures = z.infer<typeof StrategyFeaturesSchema>;
15
38
  /**
16
39
  * Runtime instance scope for a plugin.
17
40
  *
@@ -29,7 +52,7 @@ export type PluginInstanceScope = z.infer<typeof PluginInstanceScopeSchema>;
29
52
  * Permissions let the host gate sensitive capabilities behind manifest-level
30
53
  * intent. Plugins should request the smallest possible set.
31
54
  */
32
- export declare const PluginPermissionSchema: z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>;
55
+ export declare const PluginPermissionSchema: z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>;
33
56
  /**
34
57
  * Explicit permission declarations requested by a plugin.
35
58
  */
@@ -48,7 +71,7 @@ export type PluginPanelComponent = z.infer<typeof PluginPanelComponentSchema>;
48
71
  * These values control both validation expectations and default frontend
49
72
  * rendering in plugin settings UIs.
50
73
  */
51
- export declare const PluginSettingTypeSchema: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "info"]>;
74
+ export declare const PluginSettingTypeSchema: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "keyedObjectArrays", "keyedObjects", "info"]>;
52
75
  /**
53
76
  * Supported generated-form field types for plugin settings.
54
77
  */
@@ -70,6 +93,11 @@ export declare const PluginSettingOptionSchema: z.ZodObject<{
70
93
  * Label/value pair used by select-like plugin settings.
71
94
  */
72
95
  export type PluginSettingOption = z.infer<typeof PluginSettingOptionSchema>;
96
+ /**
97
+ * Field descriptor used for each item in an `object[]` or `keyedObjectArrays`
98
+ * setting editor. `key` becomes the object property; `type` controls the Host
99
+ * input; `required` and `default` are applied per item.
100
+ */
73
101
  export declare const PluginObjectArrayFieldSchema: z.ZodObject<{
74
102
  key: z.ZodString;
75
103
  type: z.ZodDefault<z.ZodOptional<z.ZodEnum<["string", "number", "boolean"]>>>;
@@ -77,10 +105,12 @@ export declare const PluginObjectArrayFieldSchema: z.ZodObject<{
77
105
  description: z.ZodOptional<z.ZodString>;
78
106
  placeholder: z.ZodOptional<z.ZodString>;
79
107
  required: z.ZodOptional<z.ZodBoolean>;
108
+ default: z.ZodOptional<z.ZodUnknown>;
80
109
  }, "strip", z.ZodTypeAny, {
81
110
  type: "string" | "number" | "boolean";
82
111
  label: string;
83
112
  key: string;
113
+ default?: unknown;
84
114
  description?: string | undefined;
85
115
  placeholder?: string | undefined;
86
116
  required?: boolean | undefined;
@@ -88,11 +118,16 @@ export declare const PluginObjectArrayFieldSchema: z.ZodObject<{
88
118
  label: string;
89
119
  key: string;
90
120
  type?: "string" | "number" | "boolean" | undefined;
121
+ default?: unknown;
91
122
  description?: string | undefined;
92
123
  placeholder?: string | undefined;
93
124
  required?: boolean | undefined;
94
125
  }>;
95
126
  export type PluginObjectArrayField = z.infer<typeof PluginObjectArrayFieldSchema>;
127
+ /**
128
+ * Fixed key exposed by keyed setting editors. `key` is persisted in the value;
129
+ * `label` and `description` are literal text or plugin locale keys.
130
+ */
96
131
  export declare const PluginKeyedStringArrayKeySchema: z.ZodObject<{
97
132
  key: z.ZodString;
98
133
  label: z.ZodString;
@@ -107,10 +142,18 @@ export declare const PluginKeyedStringArrayKeySchema: z.ZodObject<{
107
142
  description?: string | undefined;
108
143
  }>;
109
144
  export type PluginKeyedStringArrayKey = z.infer<typeof PluginKeyedStringArrayKeySchema>;
145
+ /**
146
+ * Declarative condition evaluated against values in the same settings form.
147
+ * A leaf compares one `setting` with `equals` or `notEquals`; `allOf` requires
148
+ * every nested condition and `anyOf` requires at least one. Nested groups may
149
+ * be combined recursively.
150
+ */
110
151
  export interface PluginSettingCondition {
111
152
  /** Single setting key to compare. Preserves the original condition shape. */
112
153
  setting?: string;
154
+ /** Match when the referenced value is strictly equal to this value. */
113
155
  equals?: unknown;
156
+ /** Match when the referenced value is not strictly equal to this value. */
114
157
  notEquals?: unknown;
115
158
  /** All nested conditions must match. */
116
159
  allOf?: PluginSettingCondition[];
@@ -118,6 +161,7 @@ export interface PluginSettingCondition {
118
161
  anyOf?: PluginSettingCondition[];
119
162
  }
120
163
  export declare const PluginSettingConditionSchema: z.ZodType<PluginSettingCondition>;
164
+ /** Description override selected when its condition matches. */
121
165
  export declare const PluginSettingConditionalDescriptionSchema: z.ZodObject<{
122
166
  when: z.ZodType<PluginSettingCondition, z.ZodTypeDef, PluginSettingCondition>;
123
167
  description: z.ZodString;
@@ -147,9 +191,20 @@ export type PluginSettingScope = z.infer<typeof PluginSettingScopeSchema>;
147
191
  *
148
192
  * The host uses this schema to generate configuration forms, validate updates
149
193
  * and resolve default values before injecting them into `ctx.config`.
194
+ *
195
+ * Collection defaults must match the selected renderer:
196
+ * - `string[]` -> `string[]`
197
+ * - `object[]` -> `Array<Record<string, unknown>>` described by `itemFields`
198
+ * - `keyedStringArrays` -> `Record<string, string[]>`
199
+ * - `keyedObjectArrays` -> `Record<string, Array<Record<string, unknown>>>`
200
+ * - `keyedObjects` -> `Record<string, Record<string, unknown>>`
201
+ *
202
+ * Keyed editors use `keys` for their fixed outer keys; object-based editors use
203
+ * `itemFields` for the nested shape. `info` is display-only and cannot be used
204
+ * by `quickSettings`.
150
205
  */
151
206
  export declare const PluginSettingDescriptorSchema: z.ZodObject<{
152
- type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "info"]>;
207
+ type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "keyedObjectArrays", "keyedObjects", "info"]>;
153
208
  default: z.ZodUnknown;
154
209
  label: z.ZodString;
155
210
  description: z.ZodOptional<z.ZodString>;
@@ -173,10 +228,12 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
173
228
  description: z.ZodOptional<z.ZodString>;
174
229
  placeholder: z.ZodOptional<z.ZodString>;
175
230
  required: z.ZodOptional<z.ZodBoolean>;
231
+ default: z.ZodOptional<z.ZodUnknown>;
176
232
  }, "strip", z.ZodTypeAny, {
177
233
  type: "string" | "number" | "boolean";
178
234
  label: string;
179
235
  key: string;
236
+ default?: unknown;
180
237
  description?: string | undefined;
181
238
  placeholder?: string | undefined;
182
239
  required?: boolean | undefined;
@@ -184,11 +241,12 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
184
241
  label: string;
185
242
  key: string;
186
243
  type?: "string" | "number" | "boolean" | undefined;
244
+ default?: unknown;
187
245
  description?: string | undefined;
188
246
  placeholder?: string | undefined;
189
247
  required?: boolean | undefined;
190
248
  }>, "many">>;
191
- /** Fixed key list used by generated editors for `keyedStringArrays` settings. */
249
+ /** Fixed key list used by generated keyed setting editors. */
192
250
  keys: z.ZodOptional<z.ZodArray<z.ZodObject<{
193
251
  key: z.ZodString;
194
252
  label: z.ZodString;
@@ -220,7 +278,7 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
220
278
  /** 设置作用域:global(所有操作员共享)或 operator(每操作员独立),默认 global */
221
279
  scope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["global", "operator"]>>>;
222
280
  }, "strip", z.ZodTypeAny, {
223
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
281
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
224
282
  label: string;
225
283
  scope: "operator" | "global";
226
284
  keys?: {
@@ -233,13 +291,14 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
233
291
  label: string;
234
292
  }[] | undefined;
235
293
  default?: unknown;
236
- description?: string | undefined;
237
294
  min?: number | undefined;
238
295
  max?: number | undefined;
296
+ description?: string | undefined;
239
297
  itemFields?: {
240
298
  type: "string" | "number" | "boolean";
241
299
  label: string;
242
300
  key: string;
301
+ default?: unknown;
243
302
  description?: string | undefined;
244
303
  placeholder?: string | undefined;
245
304
  required?: boolean | undefined;
@@ -251,7 +310,7 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
251
310
  }[] | undefined;
252
311
  hidden?: boolean | undefined;
253
312
  }, {
254
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
313
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
255
314
  label: string;
256
315
  keys?: {
257
316
  label: string;
@@ -263,13 +322,14 @@ export declare const PluginSettingDescriptorSchema: z.ZodObject<{
263
322
  label: string;
264
323
  }[] | undefined;
265
324
  default?: unknown;
266
- description?: string | undefined;
267
325
  min?: number | undefined;
268
326
  max?: number | undefined;
327
+ description?: string | undefined;
269
328
  itemFields?: {
270
329
  label: string;
271
330
  key: string;
272
331
  type?: "string" | "number" | "boolean" | undefined;
332
+ default?: unknown;
273
333
  description?: string | undefined;
274
334
  placeholder?: string | undefined;
275
335
  required?: boolean | undefined;
@@ -336,7 +396,7 @@ export type PluginQuickSetting = z.infer<typeof PluginQuickSettingSchema>;
336
396
  * These tags are computed from the plugin definition so the UI can reason
337
397
  * about plugin roles without hard-coding specific plugin names.
338
398
  */
339
- export declare const PluginCapabilitySchema: z.ZodEnum<["auto_call_candidate", "auto_call_execution"]>;
399
+ export declare const PluginCapabilitySchema: z.ZodEnum<["auto_call_control", "auto_call_candidate", "auto_call_execution"]>;
340
400
  /**
341
401
  * Host-derived capability tags exposed to the frontend.
342
402
  */
@@ -346,13 +406,14 @@ export type PluginCapability = z.infer<typeof PluginCapabilitySchema>;
346
406
  *
347
407
  * - `operator`: shown in the expanded operator card's live-panel area (default).
348
408
  * - `automation`: shown inside the top-right automation quick-action popover.
409
+ * - `operator-action`: shown beside the built-in logbook action on an operator card.
349
410
  * - `main-right`: shown in the optional main layout plugin pane on the far right.
350
411
  * - `voice-left-top`: shown above the voice frequency control card.
351
412
  * - `voice-right-top`: shown in the tabbed top area of the voice right panel.
352
413
  * - `cw-left-top`: shown above the CW frequency control card.
353
414
  * - `cw-right-top`: shown in the tabbed top area of the CW right panel.
354
415
  */
355
- export declare const PluginPanelSlotSchema: z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>;
416
+ export declare const PluginPanelSlotSchema: z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>;
356
417
  /**
357
418
  * Rendering slot that determines where a panel appears in the UI.
358
419
  */
@@ -370,11 +431,14 @@ export declare const PluginPanelWidthSchema: z.ZodEnum<["half", "full"]>;
370
431
  */
371
432
  export type PluginPanelWidth = z.infer<typeof PluginPanelWidthSchema>;
372
433
  /**
373
- * How an iframe panel is opened when rendered as a toolbar entry.
434
+ * How an iframe panel is opened when rendered as an action entry.
435
+ *
436
+ * `page` opens the referenced custom UI in the host's standalone plugin-page
437
+ * route instead of embedding it in the radio workspace.
374
438
  */
375
- export declare const PluginPanelOpenModeSchema: z.ZodEnum<["popover", "modal"]>;
439
+ export declare const PluginPanelOpenModeSchema: z.ZodEnum<["popover", "modal", "page"]>;
376
440
  /**
377
- * How an iframe panel is opened when rendered as a toolbar entry.
441
+ * How an iframe panel is opened when rendered as an action entry.
378
442
  */
379
443
  export type PluginPanelOpenMode = z.infer<typeof PluginPanelOpenModeSchema>;
380
444
  /**
@@ -402,13 +466,13 @@ export declare const PluginPanelDescriptorSchema: z.ZodEffects<z.ZodObject<{
402
466
  /** Optional string params forwarded to iframe panels as URL/init params. */
403
467
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
404
468
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
405
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
469
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
406
470
  /** Preferred width hint. Defaults to `'half'`. */
407
471
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
408
472
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
409
473
  icon: z.ZodOptional<z.ZodString>;
410
474
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
411
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
475
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
412
476
  /** Optional controlled UI size hint for toolbar popovers/modals. */
413
477
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
414
478
  }, "strip", z.ZodTypeAny, {
@@ -418,9 +482,9 @@ export declare const PluginPanelDescriptorSchema: z.ZodEffects<z.ZodObject<{
418
482
  params?: Record<string, string> | undefined;
419
483
  icon?: string | undefined;
420
484
  pageId?: string | undefined;
421
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
485
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
422
486
  width?: "full" | "half" | undefined;
423
- openMode?: "popover" | "modal" | undefined;
487
+ openMode?: "popover" | "modal" | "page" | undefined;
424
488
  uiSize?: "sm" | "md" | "lg" | undefined;
425
489
  }, {
426
490
  id: string;
@@ -429,9 +493,9 @@ export declare const PluginPanelDescriptorSchema: z.ZodEffects<z.ZodObject<{
429
493
  params?: Record<string, string> | undefined;
430
494
  icon?: string | undefined;
431
495
  pageId?: string | undefined;
432
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
496
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
433
497
  width?: "full" | "half" | undefined;
434
- openMode?: "popover" | "modal" | undefined;
498
+ openMode?: "popover" | "modal" | "page" | undefined;
435
499
  uiSize?: "sm" | "md" | "lg" | undefined;
436
500
  }>, {
437
501
  id: string;
@@ -440,9 +504,9 @@ export declare const PluginPanelDescriptorSchema: z.ZodEffects<z.ZodObject<{
440
504
  params?: Record<string, string> | undefined;
441
505
  icon?: string | undefined;
442
506
  pageId?: string | undefined;
443
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
507
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
444
508
  width?: "full" | "half" | undefined;
445
- openMode?: "popover" | "modal" | undefined;
509
+ openMode?: "popover" | "modal" | "page" | undefined;
446
510
  uiSize?: "sm" | "md" | "lg" | undefined;
447
511
  }, {
448
512
  id: string;
@@ -451,15 +515,19 @@ export declare const PluginPanelDescriptorSchema: z.ZodEffects<z.ZodObject<{
451
515
  params?: Record<string, string> | undefined;
452
516
  icon?: string | undefined;
453
517
  pageId?: string | undefined;
454
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
518
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
455
519
  width?: "full" | "half" | undefined;
456
- openMode?: "popover" | "modal" | undefined;
520
+ openMode?: "popover" | "modal" | "page" | undefined;
457
521
  uiSize?: "sm" | "md" | "lg" | undefined;
458
522
  }>;
459
523
  /**
460
524
  * Declarative definition of a plugin-owned panel in the frontend.
461
525
  */
462
526
  export type PluginPanelDescriptor = z.infer<typeof PluginPanelDescriptorSchema>;
527
+ /**
528
+ * Plugin instance that owns a runtime panel contribution: the single global
529
+ * instance or one explicitly identified operator instance.
530
+ */
463
531
  export declare const PluginUIPanelContributionTargetSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
464
532
  kind: z.ZodLiteral<"global">;
465
533
  }, "strip", z.ZodTypeAny, {
@@ -470,11 +538,11 @@ export declare const PluginUIPanelContributionTargetSchema: z.ZodDiscriminatedUn
470
538
  kind: z.ZodLiteral<"operator">;
471
539
  operatorId: z.ZodString;
472
540
  }, "strip", z.ZodTypeAny, {
473
- operatorId: string;
474
541
  kind: "operator";
475
- }, {
476
542
  operatorId: string;
543
+ }, {
477
544
  kind: "operator";
545
+ operatorId: string;
478
546
  }>]>;
479
547
  export type PluginUIPanelContributionTarget = z.infer<typeof PluginUIPanelContributionTargetSchema>;
480
548
  /**
@@ -499,11 +567,11 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
499
567
  kind: z.ZodLiteral<"operator">;
500
568
  operatorId: z.ZodString;
501
569
  }, "strip", z.ZodTypeAny, {
502
- operatorId: string;
503
570
  kind: "operator";
504
- }, {
505
571
  operatorId: string;
572
+ }, {
506
573
  kind: "operator";
574
+ operatorId: string;
507
575
  }>]>>;
508
576
  panels: z.ZodArray<z.ZodEffects<z.ZodObject<{
509
577
  id: z.ZodString;
@@ -514,13 +582,13 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
514
582
  /** Optional string params forwarded to iframe panels as URL/init params. */
515
583
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
516
584
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
517
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
585
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
518
586
  /** Preferred width hint. Defaults to `'half'`. */
519
587
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
520
588
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
521
589
  icon: z.ZodOptional<z.ZodString>;
522
590
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
523
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
591
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
524
592
  /** Optional controlled UI size hint for toolbar popovers/modals. */
525
593
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
526
594
  }, "strip", z.ZodTypeAny, {
@@ -530,9 +598,9 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
530
598
  params?: Record<string, string> | undefined;
531
599
  icon?: string | undefined;
532
600
  pageId?: string | undefined;
533
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
601
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
534
602
  width?: "full" | "half" | undefined;
535
- openMode?: "popover" | "modal" | undefined;
603
+ openMode?: "popover" | "modal" | "page" | undefined;
536
604
  uiSize?: "sm" | "md" | "lg" | undefined;
537
605
  }, {
538
606
  id: string;
@@ -541,9 +609,9 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
541
609
  params?: Record<string, string> | undefined;
542
610
  icon?: string | undefined;
543
611
  pageId?: string | undefined;
544
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
612
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
545
613
  width?: "full" | "half" | undefined;
546
- openMode?: "popover" | "modal" | undefined;
614
+ openMode?: "popover" | "modal" | "page" | undefined;
547
615
  uiSize?: "sm" | "md" | "lg" | undefined;
548
616
  }>, {
549
617
  id: string;
@@ -552,9 +620,9 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
552
620
  params?: Record<string, string> | undefined;
553
621
  icon?: string | undefined;
554
622
  pageId?: string | undefined;
555
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
623
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
556
624
  width?: "full" | "half" | undefined;
557
- openMode?: "popover" | "modal" | undefined;
625
+ openMode?: "popover" | "modal" | "page" | undefined;
558
626
  uiSize?: "sm" | "md" | "lg" | undefined;
559
627
  }, {
560
628
  id: string;
@@ -563,9 +631,9 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
563
631
  params?: Record<string, string> | undefined;
564
632
  icon?: string | undefined;
565
633
  pageId?: string | undefined;
566
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
634
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
567
635
  width?: "full" | "half" | undefined;
568
- openMode?: "popover" | "modal" | undefined;
636
+ openMode?: "popover" | "modal" | "page" | undefined;
569
637
  uiSize?: "sm" | "md" | "lg" | undefined;
570
638
  }>, "many">;
571
639
  }, "strip", z.ZodTypeAny, {
@@ -579,16 +647,16 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
579
647
  params?: Record<string, string> | undefined;
580
648
  icon?: string | undefined;
581
649
  pageId?: string | undefined;
582
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
650
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
583
651
  width?: "full" | "half" | undefined;
584
- openMode?: "popover" | "modal" | undefined;
652
+ openMode?: "popover" | "modal" | "page" | undefined;
585
653
  uiSize?: "sm" | "md" | "lg" | undefined;
586
654
  }[];
587
655
  instanceTarget?: {
588
656
  kind: "global";
589
657
  } | {
590
- operatorId: string;
591
658
  kind: "operator";
659
+ operatorId: string;
592
660
  } | undefined;
593
661
  }, {
594
662
  pluginName: string;
@@ -601,16 +669,16 @@ export declare const PluginUIPanelContributionGroupSchema: z.ZodObject<{
601
669
  params?: Record<string, string> | undefined;
602
670
  icon?: string | undefined;
603
671
  pageId?: string | undefined;
604
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
672
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
605
673
  width?: "full" | "half" | undefined;
606
- openMode?: "popover" | "modal" | undefined;
674
+ openMode?: "popover" | "modal" | "page" | undefined;
607
675
  uiSize?: "sm" | "md" | "lg" | undefined;
608
676
  }[];
609
677
  instanceTarget?: {
610
678
  kind: "global";
611
679
  } | {
612
- operatorId: string;
613
680
  kind: "operator";
681
+ operatorId: string;
614
682
  } | undefined;
615
683
  }>;
616
684
  export type PluginUIPanelContributionGroup = z.infer<typeof PluginUIPanelContributionGroupSchema>;
@@ -743,14 +811,38 @@ export type PluginStorageConfig = z.infer<typeof PluginStorageConfigSchema>;
743
811
  * host can expose to management UI and diagnostics.
744
812
  */
745
813
  export declare const PluginManifestSchema: z.ZodObject<{
814
+ apiVersion: z.ZodOptional<z.ZodLiteral<2>>;
746
815
  name: z.ZodString;
747
816
  version: z.ZodString;
817
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
748
818
  type: z.ZodEnum<["strategy", "utility"]>;
819
+ strategyFeatures: z.ZodOptional<z.ZodObject<{
820
+ targetQueue: z.ZodOptional<z.ZodLiteral<1>>;
821
+ parallelTargetQueue: z.ZodOptional<z.ZodLiteral<1>>;
822
+ queueActivation: z.ZodOptional<z.ZodEnum<["immediate", "operator-toggle"]>>;
823
+ manualInitiation: z.ZodOptional<z.ZodLiteral<1>>;
824
+ maxConcurrentStreams: z.ZodOptional<z.ZodNumber>;
825
+ maxSimultaneousSignals: z.ZodOptional<z.ZodNumber>;
826
+ }, "strip", z.ZodTypeAny, {
827
+ maxConcurrentStreams?: number | undefined;
828
+ targetQueue?: 1 | undefined;
829
+ parallelTargetQueue?: 1 | undefined;
830
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
831
+ manualInitiation?: 1 | undefined;
832
+ maxSimultaneousSignals?: number | undefined;
833
+ }, {
834
+ maxConcurrentStreams?: number | undefined;
835
+ targetQueue?: 1 | undefined;
836
+ parallelTargetQueue?: 1 | undefined;
837
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
838
+ manualInitiation?: 1 | undefined;
839
+ maxSimultaneousSignals?: number | undefined;
840
+ }>>;
749
841
  instanceScope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["operator", "global"]>>>;
750
842
  description: z.ZodOptional<z.ZodString>;
751
- permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
843
+ permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
752
844
  settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
753
- type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "info"]>;
845
+ type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "keyedObjectArrays", "keyedObjects", "info"]>;
754
846
  default: z.ZodUnknown;
755
847
  label: z.ZodString;
756
848
  description: z.ZodOptional<z.ZodString>;
@@ -774,10 +866,12 @@ export declare const PluginManifestSchema: z.ZodObject<{
774
866
  description: z.ZodOptional<z.ZodString>;
775
867
  placeholder: z.ZodOptional<z.ZodString>;
776
868
  required: z.ZodOptional<z.ZodBoolean>;
869
+ default: z.ZodOptional<z.ZodUnknown>;
777
870
  }, "strip", z.ZodTypeAny, {
778
871
  type: "string" | "number" | "boolean";
779
872
  label: string;
780
873
  key: string;
874
+ default?: unknown;
781
875
  description?: string | undefined;
782
876
  placeholder?: string | undefined;
783
877
  required?: boolean | undefined;
@@ -785,11 +879,12 @@ export declare const PluginManifestSchema: z.ZodObject<{
785
879
  label: string;
786
880
  key: string;
787
881
  type?: "string" | "number" | "boolean" | undefined;
882
+ default?: unknown;
788
883
  description?: string | undefined;
789
884
  placeholder?: string | undefined;
790
885
  required?: boolean | undefined;
791
886
  }>, "many">>;
792
- /** Fixed key list used by generated editors for `keyedStringArrays` settings. */
887
+ /** Fixed key list used by generated keyed setting editors. */
793
888
  keys: z.ZodOptional<z.ZodArray<z.ZodObject<{
794
889
  key: z.ZodString;
795
890
  label: z.ZodString;
@@ -821,7 +916,7 @@ export declare const PluginManifestSchema: z.ZodObject<{
821
916
  /** 设置作用域:global(所有操作员共享)或 operator(每操作员独立),默认 global */
822
917
  scope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["global", "operator"]>>>;
823
918
  }, "strip", z.ZodTypeAny, {
824
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
919
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
825
920
  label: string;
826
921
  scope: "operator" | "global";
827
922
  keys?: {
@@ -834,13 +929,14 @@ export declare const PluginManifestSchema: z.ZodObject<{
834
929
  label: string;
835
930
  }[] | undefined;
836
931
  default?: unknown;
837
- description?: string | undefined;
838
932
  min?: number | undefined;
839
933
  max?: number | undefined;
934
+ description?: string | undefined;
840
935
  itemFields?: {
841
936
  type: "string" | "number" | "boolean";
842
937
  label: string;
843
938
  key: string;
939
+ default?: unknown;
844
940
  description?: string | undefined;
845
941
  placeholder?: string | undefined;
846
942
  required?: boolean | undefined;
@@ -852,7 +948,7 @@ export declare const PluginManifestSchema: z.ZodObject<{
852
948
  }[] | undefined;
853
949
  hidden?: boolean | undefined;
854
950
  }, {
855
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
951
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
856
952
  label: string;
857
953
  keys?: {
858
954
  label: string;
@@ -864,13 +960,14 @@ export declare const PluginManifestSchema: z.ZodObject<{
864
960
  label: string;
865
961
  }[] | undefined;
866
962
  default?: unknown;
867
- description?: string | undefined;
868
963
  min?: number | undefined;
869
964
  max?: number | undefined;
965
+ description?: string | undefined;
870
966
  itemFields?: {
871
967
  label: string;
872
968
  key: string;
873
969
  type?: "string" | "number" | "boolean" | undefined;
970
+ default?: unknown;
874
971
  description?: string | undefined;
875
972
  placeholder?: string | undefined;
876
973
  required?: boolean | undefined;
@@ -912,13 +1009,13 @@ export declare const PluginManifestSchema: z.ZodObject<{
912
1009
  /** Optional string params forwarded to iframe panels as URL/init params. */
913
1010
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
914
1011
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
915
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
1012
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
916
1013
  /** Preferred width hint. Defaults to `'half'`. */
917
1014
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
918
1015
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
919
1016
  icon: z.ZodOptional<z.ZodString>;
920
1017
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
921
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
1018
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
922
1019
  /** Optional controlled UI size hint for toolbar popovers/modals. */
923
1020
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
924
1021
  }, "strip", z.ZodTypeAny, {
@@ -928,9 +1025,9 @@ export declare const PluginManifestSchema: z.ZodObject<{
928
1025
  params?: Record<string, string> | undefined;
929
1026
  icon?: string | undefined;
930
1027
  pageId?: string | undefined;
931
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1028
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
932
1029
  width?: "full" | "half" | undefined;
933
- openMode?: "popover" | "modal" | undefined;
1030
+ openMode?: "popover" | "modal" | "page" | undefined;
934
1031
  uiSize?: "sm" | "md" | "lg" | undefined;
935
1032
  }, {
936
1033
  id: string;
@@ -939,9 +1036,9 @@ export declare const PluginManifestSchema: z.ZodObject<{
939
1036
  params?: Record<string, string> | undefined;
940
1037
  icon?: string | undefined;
941
1038
  pageId?: string | undefined;
942
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1039
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
943
1040
  width?: "full" | "half" | undefined;
944
- openMode?: "popover" | "modal" | undefined;
1041
+ openMode?: "popover" | "modal" | "page" | undefined;
945
1042
  uiSize?: "sm" | "md" | "lg" | undefined;
946
1043
  }>, {
947
1044
  id: string;
@@ -950,9 +1047,9 @@ export declare const PluginManifestSchema: z.ZodObject<{
950
1047
  params?: Record<string, string> | undefined;
951
1048
  icon?: string | undefined;
952
1049
  pageId?: string | undefined;
953
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1050
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
954
1051
  width?: "full" | "half" | undefined;
955
- openMode?: "popover" | "modal" | undefined;
1052
+ openMode?: "popover" | "modal" | "page" | undefined;
956
1053
  uiSize?: "sm" | "md" | "lg" | undefined;
957
1054
  }, {
958
1055
  id: string;
@@ -961,9 +1058,9 @@ export declare const PluginManifestSchema: z.ZodObject<{
961
1058
  params?: Record<string, string> | undefined;
962
1059
  icon?: string | undefined;
963
1060
  pageId?: string | undefined;
964
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1061
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
965
1062
  width?: "full" | "half" | undefined;
966
- openMode?: "popover" | "modal" | undefined;
1063
+ openMode?: "popover" | "modal" | "page" | undefined;
967
1064
  uiSize?: "sm" | "md" | "lg" | undefined;
968
1065
  }>, "many">>;
969
1066
  storage: z.ZodOptional<z.ZodObject<{
@@ -1032,32 +1129,8 @@ export declare const PluginManifestSchema: z.ZodObject<{
1032
1129
  version: string;
1033
1130
  instanceScope: "operator" | "global";
1034
1131
  description?: string | undefined;
1035
- panels?: {
1036
- id: string;
1037
- title: string;
1038
- component: "table" | "key-value" | "chart" | "log" | "iframe";
1039
- params?: Record<string, string> | undefined;
1040
- icon?: string | undefined;
1041
- pageId?: string | undefined;
1042
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1043
- width?: "full" | "half" | undefined;
1044
- openMode?: "popover" | "modal" | undefined;
1045
- uiSize?: "sm" | "md" | "lg" | undefined;
1046
- }[] | undefined;
1047
- ui?: {
1048
- dir: string;
1049
- pages: {
1050
- id: string;
1051
- title: string;
1052
- entry: string;
1053
- accessScope: "operator" | "admin";
1054
- resourceBinding: "none" | "callsign" | "operator";
1055
- icon?: string | undefined;
1056
- }[];
1057
- } | undefined;
1058
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1059
1132
  settings?: Record<string, {
1060
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1133
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1061
1134
  label: string;
1062
1135
  scope: "operator" | "global";
1063
1136
  keys?: {
@@ -1070,13 +1143,14 @@ export declare const PluginManifestSchema: z.ZodObject<{
1070
1143
  label: string;
1071
1144
  }[] | undefined;
1072
1145
  default?: unknown;
1073
- description?: string | undefined;
1074
1146
  min?: number | undefined;
1075
1147
  max?: number | undefined;
1148
+ description?: string | undefined;
1076
1149
  itemFields?: {
1077
1150
  type: "string" | "number" | "boolean";
1078
1151
  label: string;
1079
1152
  key: string;
1153
+ default?: unknown;
1080
1154
  description?: string | undefined;
1081
1155
  placeholder?: string | undefined;
1082
1156
  required?: boolean | undefined;
@@ -1088,22 +1162,6 @@ export declare const PluginManifestSchema: z.ZodObject<{
1088
1162
  }[] | undefined;
1089
1163
  hidden?: boolean | undefined;
1090
1164
  }> | undefined;
1091
- quickActions?: {
1092
- id: string;
1093
- label: string;
1094
- icon?: string | undefined;
1095
- }[] | undefined;
1096
- quickSettings?: {
1097
- settingKey: string;
1098
- }[] | undefined;
1099
- storage?: {
1100
- scopes: ("operator" | "global")[];
1101
- } | undefined;
1102
- }, {
1103
- type: "strategy" | "utility";
1104
- name: string;
1105
- version: string;
1106
- description?: string | undefined;
1107
1165
  panels?: {
1108
1166
  id: string;
1109
1167
  title: string;
@@ -1111,26 +1169,51 @@ export declare const PluginManifestSchema: z.ZodObject<{
1111
1169
  params?: Record<string, string> | undefined;
1112
1170
  icon?: string | undefined;
1113
1171
  pageId?: string | undefined;
1114
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1172
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1115
1173
  width?: "full" | "half" | undefined;
1116
- openMode?: "popover" | "modal" | undefined;
1174
+ openMode?: "popover" | "modal" | "page" | undefined;
1117
1175
  uiSize?: "sm" | "md" | "lg" | undefined;
1118
1176
  }[] | undefined;
1119
1177
  ui?: {
1120
- dir?: string | undefined;
1121
- pages?: {
1178
+ dir: string;
1179
+ pages: {
1122
1180
  id: string;
1123
1181
  title: string;
1124
1182
  entry: string;
1183
+ accessScope: "operator" | "admin";
1184
+ resourceBinding: "none" | "callsign" | "operator";
1125
1185
  icon?: string | undefined;
1126
- accessScope?: "operator" | "admin" | undefined;
1127
- resourceBinding?: "none" | "callsign" | "operator" | undefined;
1128
- }[] | undefined;
1186
+ }[];
1129
1187
  } | undefined;
1130
- instanceScope?: "operator" | "global" | undefined;
1131
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1188
+ apiVersion?: 2 | undefined;
1189
+ minPluginApiVersion?: string | undefined;
1190
+ strategyFeatures?: {
1191
+ maxConcurrentStreams?: number | undefined;
1192
+ targetQueue?: 1 | undefined;
1193
+ parallelTargetQueue?: 1 | undefined;
1194
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1195
+ manualInitiation?: 1 | undefined;
1196
+ maxSimultaneousSignals?: number | undefined;
1197
+ } | undefined;
1198
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1199
+ quickActions?: {
1200
+ id: string;
1201
+ label: string;
1202
+ icon?: string | undefined;
1203
+ }[] | undefined;
1204
+ quickSettings?: {
1205
+ settingKey: string;
1206
+ }[] | undefined;
1207
+ storage?: {
1208
+ scopes: ("operator" | "global")[];
1209
+ } | undefined;
1210
+ }, {
1211
+ type: "strategy" | "utility";
1212
+ name: string;
1213
+ version: string;
1214
+ description?: string | undefined;
1132
1215
  settings?: Record<string, {
1133
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1216
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1134
1217
  label: string;
1135
1218
  keys?: {
1136
1219
  label: string;
@@ -1142,13 +1225,14 @@ export declare const PluginManifestSchema: z.ZodObject<{
1142
1225
  label: string;
1143
1226
  }[] | undefined;
1144
1227
  default?: unknown;
1145
- description?: string | undefined;
1146
1228
  min?: number | undefined;
1147
1229
  max?: number | undefined;
1230
+ description?: string | undefined;
1148
1231
  itemFields?: {
1149
1232
  label: string;
1150
1233
  key: string;
1151
1234
  type?: "string" | "number" | "boolean" | undefined;
1235
+ default?: unknown;
1152
1236
  description?: string | undefined;
1153
1237
  placeholder?: string | undefined;
1154
1238
  required?: boolean | undefined;
@@ -1161,6 +1245,41 @@ export declare const PluginManifestSchema: z.ZodObject<{
1161
1245
  hidden?: boolean | undefined;
1162
1246
  scope?: "operator" | "global" | undefined;
1163
1247
  }> | undefined;
1248
+ panels?: {
1249
+ id: string;
1250
+ title: string;
1251
+ component: "table" | "key-value" | "chart" | "log" | "iframe";
1252
+ params?: Record<string, string> | undefined;
1253
+ icon?: string | undefined;
1254
+ pageId?: string | undefined;
1255
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1256
+ width?: "full" | "half" | undefined;
1257
+ openMode?: "popover" | "modal" | "page" | undefined;
1258
+ uiSize?: "sm" | "md" | "lg" | undefined;
1259
+ }[] | undefined;
1260
+ ui?: {
1261
+ dir?: string | undefined;
1262
+ pages?: {
1263
+ id: string;
1264
+ title: string;
1265
+ entry: string;
1266
+ icon?: string | undefined;
1267
+ accessScope?: "operator" | "admin" | undefined;
1268
+ resourceBinding?: "none" | "callsign" | "operator" | undefined;
1269
+ }[] | undefined;
1270
+ } | undefined;
1271
+ apiVersion?: 2 | undefined;
1272
+ minPluginApiVersion?: string | undefined;
1273
+ strategyFeatures?: {
1274
+ maxConcurrentStreams?: number | undefined;
1275
+ targetQueue?: 1 | undefined;
1276
+ parallelTargetQueue?: 1 | undefined;
1277
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1278
+ manualInitiation?: 1 | undefined;
1279
+ maxSimultaneousSignals?: number | undefined;
1280
+ } | undefined;
1281
+ instanceScope?: "operator" | "global" | undefined;
1282
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1164
1283
  quickActions?: {
1165
1284
  id: string;
1166
1285
  label: string;
@@ -1213,6 +1332,28 @@ export type PluginLocales = z.infer<typeof PluginLocalesSchema>;
1213
1332
  export declare const PluginStatusSchema: z.ZodObject<{
1214
1333
  name: z.ZodString;
1215
1334
  type: z.ZodEnum<["strategy", "utility"]>;
1335
+ strategyFeatures: z.ZodOptional<z.ZodObject<{
1336
+ targetQueue: z.ZodOptional<z.ZodLiteral<1>>;
1337
+ parallelTargetQueue: z.ZodOptional<z.ZodLiteral<1>>;
1338
+ queueActivation: z.ZodOptional<z.ZodEnum<["immediate", "operator-toggle"]>>;
1339
+ manualInitiation: z.ZodOptional<z.ZodLiteral<1>>;
1340
+ maxConcurrentStreams: z.ZodOptional<z.ZodNumber>;
1341
+ maxSimultaneousSignals: z.ZodOptional<z.ZodNumber>;
1342
+ }, "strip", z.ZodTypeAny, {
1343
+ maxConcurrentStreams?: number | undefined;
1344
+ targetQueue?: 1 | undefined;
1345
+ parallelTargetQueue?: 1 | undefined;
1346
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1347
+ manualInitiation?: 1 | undefined;
1348
+ maxSimultaneousSignals?: number | undefined;
1349
+ }, {
1350
+ maxConcurrentStreams?: number | undefined;
1351
+ targetQueue?: 1 | undefined;
1352
+ parallelTargetQueue?: 1 | undefined;
1353
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1354
+ manualInitiation?: 1 | undefined;
1355
+ maxSimultaneousSignals?: number | undefined;
1356
+ }>>;
1216
1357
  instanceScope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["operator", "global"]>>>;
1217
1358
  version: z.ZodString;
1218
1359
  description: z.ZodOptional<z.ZodString>;
@@ -1226,7 +1367,7 @@ export declare const PluginStatusSchema: z.ZodObject<{
1226
1367
  /** 仅对 strategy 插件有意义:当前被哪些 operator 选中 */
1227
1368
  assignedOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1228
1369
  settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1229
- type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "info"]>;
1370
+ type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "keyedObjectArrays", "keyedObjects", "info"]>;
1230
1371
  default: z.ZodUnknown;
1231
1372
  label: z.ZodString;
1232
1373
  description: z.ZodOptional<z.ZodString>;
@@ -1250,10 +1391,12 @@ export declare const PluginStatusSchema: z.ZodObject<{
1250
1391
  description: z.ZodOptional<z.ZodString>;
1251
1392
  placeholder: z.ZodOptional<z.ZodString>;
1252
1393
  required: z.ZodOptional<z.ZodBoolean>;
1394
+ default: z.ZodOptional<z.ZodUnknown>;
1253
1395
  }, "strip", z.ZodTypeAny, {
1254
1396
  type: "string" | "number" | "boolean";
1255
1397
  label: string;
1256
1398
  key: string;
1399
+ default?: unknown;
1257
1400
  description?: string | undefined;
1258
1401
  placeholder?: string | undefined;
1259
1402
  required?: boolean | undefined;
@@ -1261,11 +1404,12 @@ export declare const PluginStatusSchema: z.ZodObject<{
1261
1404
  label: string;
1262
1405
  key: string;
1263
1406
  type?: "string" | "number" | "boolean" | undefined;
1407
+ default?: unknown;
1264
1408
  description?: string | undefined;
1265
1409
  placeholder?: string | undefined;
1266
1410
  required?: boolean | undefined;
1267
1411
  }>, "many">>;
1268
- /** Fixed key list used by generated editors for `keyedStringArrays` settings. */
1412
+ /** Fixed key list used by generated keyed setting editors. */
1269
1413
  keys: z.ZodOptional<z.ZodArray<z.ZodObject<{
1270
1414
  key: z.ZodString;
1271
1415
  label: z.ZodString;
@@ -1297,7 +1441,7 @@ export declare const PluginStatusSchema: z.ZodObject<{
1297
1441
  /** 设置作用域:global(所有操作员共享)或 operator(每操作员独立),默认 global */
1298
1442
  scope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["global", "operator"]>>>;
1299
1443
  }, "strip", z.ZodTypeAny, {
1300
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1444
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1301
1445
  label: string;
1302
1446
  scope: "operator" | "global";
1303
1447
  keys?: {
@@ -1310,13 +1454,14 @@ export declare const PluginStatusSchema: z.ZodObject<{
1310
1454
  label: string;
1311
1455
  }[] | undefined;
1312
1456
  default?: unknown;
1313
- description?: string | undefined;
1314
1457
  min?: number | undefined;
1315
1458
  max?: number | undefined;
1459
+ description?: string | undefined;
1316
1460
  itemFields?: {
1317
1461
  type: "string" | "number" | "boolean";
1318
1462
  label: string;
1319
1463
  key: string;
1464
+ default?: unknown;
1320
1465
  description?: string | undefined;
1321
1466
  placeholder?: string | undefined;
1322
1467
  required?: boolean | undefined;
@@ -1328,7 +1473,7 @@ export declare const PluginStatusSchema: z.ZodObject<{
1328
1473
  }[] | undefined;
1329
1474
  hidden?: boolean | undefined;
1330
1475
  }, {
1331
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1476
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1332
1477
  label: string;
1333
1478
  keys?: {
1334
1479
  label: string;
@@ -1340,13 +1485,14 @@ export declare const PluginStatusSchema: z.ZodObject<{
1340
1485
  label: string;
1341
1486
  }[] | undefined;
1342
1487
  default?: unknown;
1343
- description?: string | undefined;
1344
1488
  min?: number | undefined;
1345
1489
  max?: number | undefined;
1490
+ description?: string | undefined;
1346
1491
  itemFields?: {
1347
1492
  label: string;
1348
1493
  key: string;
1349
1494
  type?: "string" | "number" | "boolean" | undefined;
1495
+ default?: unknown;
1350
1496
  description?: string | undefined;
1351
1497
  placeholder?: string | undefined;
1352
1498
  required?: boolean | undefined;
@@ -1388,13 +1534,13 @@ export declare const PluginStatusSchema: z.ZodObject<{
1388
1534
  /** Optional string params forwarded to iframe panels as URL/init params. */
1389
1535
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1390
1536
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
1391
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
1537
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
1392
1538
  /** Preferred width hint. Defaults to `'half'`. */
1393
1539
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
1394
1540
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
1395
1541
  icon: z.ZodOptional<z.ZodString>;
1396
1542
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
1397
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
1543
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
1398
1544
  /** Optional controlled UI size hint for toolbar popovers/modals. */
1399
1545
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
1400
1546
  }, "strip", z.ZodTypeAny, {
@@ -1404,9 +1550,9 @@ export declare const PluginStatusSchema: z.ZodObject<{
1404
1550
  params?: Record<string, string> | undefined;
1405
1551
  icon?: string | undefined;
1406
1552
  pageId?: string | undefined;
1407
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1553
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1408
1554
  width?: "full" | "half" | undefined;
1409
- openMode?: "popover" | "modal" | undefined;
1555
+ openMode?: "popover" | "modal" | "page" | undefined;
1410
1556
  uiSize?: "sm" | "md" | "lg" | undefined;
1411
1557
  }, {
1412
1558
  id: string;
@@ -1415,9 +1561,9 @@ export declare const PluginStatusSchema: z.ZodObject<{
1415
1561
  params?: Record<string, string> | undefined;
1416
1562
  icon?: string | undefined;
1417
1563
  pageId?: string | undefined;
1418
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1564
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1419
1565
  width?: "full" | "half" | undefined;
1420
- openMode?: "popover" | "modal" | undefined;
1566
+ openMode?: "popover" | "modal" | "page" | undefined;
1421
1567
  uiSize?: "sm" | "md" | "lg" | undefined;
1422
1568
  }>, {
1423
1569
  id: string;
@@ -1426,9 +1572,9 @@ export declare const PluginStatusSchema: z.ZodObject<{
1426
1572
  params?: Record<string, string> | undefined;
1427
1573
  icon?: string | undefined;
1428
1574
  pageId?: string | undefined;
1429
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1575
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1430
1576
  width?: "full" | "half" | undefined;
1431
- openMode?: "popover" | "modal" | undefined;
1577
+ openMode?: "popover" | "modal" | "page" | undefined;
1432
1578
  uiSize?: "sm" | "md" | "lg" | undefined;
1433
1579
  }, {
1434
1580
  id: string;
@@ -1437,13 +1583,15 @@ export declare const PluginStatusSchema: z.ZodObject<{
1437
1583
  params?: Record<string, string> | undefined;
1438
1584
  icon?: string | undefined;
1439
1585
  pageId?: string | undefined;
1440
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1586
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1441
1587
  width?: "full" | "half" | undefined;
1442
- openMode?: "popover" | "modal" | undefined;
1588
+ openMode?: "popover" | "modal" | "page" | undefined;
1443
1589
  uiSize?: "sm" | "md" | "lg" | undefined;
1444
1590
  }>, "many">>;
1445
- permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
1446
- capabilities: z.ZodOptional<z.ZodArray<z.ZodEnum<["auto_call_candidate", "auto_call_execution"]>, "many">>;
1591
+ permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
1592
+ capabilities: z.ZodOptional<z.ZodArray<z.ZodEnum<["auto_call_control", "auto_call_candidate", "auto_call_execution"]>, "many">>;
1593
+ autoCallEnabledOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1594
+ pausedOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1447
1595
  ui: z.ZodOptional<z.ZodObject<{
1448
1596
  /** Static file directory relative to the plugin root (default: 'ui'). */
1449
1597
  dir: z.ZodDefault<z.ZodOptional<z.ZodString>>;
@@ -1530,7 +1678,41 @@ export declare const PluginStatusSchema: z.ZodObject<{
1530
1678
  loaded: boolean;
1531
1679
  autoDisabled: boolean;
1532
1680
  errorCount: number;
1681
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
1533
1682
  description?: string | undefined;
1683
+ settings?: Record<string, {
1684
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1685
+ label: string;
1686
+ scope: "operator" | "global";
1687
+ keys?: {
1688
+ label: string;
1689
+ key: string;
1690
+ description?: string | undefined;
1691
+ }[] | undefined;
1692
+ options?: {
1693
+ value: string;
1694
+ label: string;
1695
+ }[] | undefined;
1696
+ default?: unknown;
1697
+ min?: number | undefined;
1698
+ max?: number | undefined;
1699
+ description?: string | undefined;
1700
+ itemFields?: {
1701
+ type: "string" | "number" | "boolean";
1702
+ label: string;
1703
+ key: string;
1704
+ default?: unknown;
1705
+ description?: string | undefined;
1706
+ placeholder?: string | undefined;
1707
+ required?: boolean | undefined;
1708
+ }[] | undefined;
1709
+ visibleWhen?: PluginSettingCondition | undefined;
1710
+ descriptionWhen?: {
1711
+ description: string;
1712
+ when: PluginSettingCondition;
1713
+ }[] | undefined;
1714
+ hidden?: boolean | undefined;
1715
+ }> | undefined;
1534
1716
  source?: {
1535
1717
  kind: "marketplace";
1536
1718
  version: string;
@@ -1546,9 +1728,9 @@ export declare const PluginStatusSchema: z.ZodObject<{
1546
1728
  params?: Record<string, string> | undefined;
1547
1729
  icon?: string | undefined;
1548
1730
  pageId?: string | undefined;
1549
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1731
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1550
1732
  width?: "full" | "half" | undefined;
1551
- openMode?: "popover" | "modal" | undefined;
1733
+ openMode?: "popover" | "modal" | "page" | undefined;
1552
1734
  uiSize?: "sm" | "md" | "lg" | undefined;
1553
1735
  }[] | undefined;
1554
1736
  ui?: {
@@ -1562,11 +1744,40 @@ export declare const PluginStatusSchema: z.ZodObject<{
1562
1744
  icon?: string | undefined;
1563
1745
  }[];
1564
1746
  } | undefined;
1565
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1747
+ strategyFeatures?: {
1748
+ maxConcurrentStreams?: number | undefined;
1749
+ targetQueue?: 1 | undefined;
1750
+ parallelTargetQueue?: 1 | undefined;
1751
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1752
+ manualInitiation?: 1 | undefined;
1753
+ maxSimultaneousSignals?: number | undefined;
1754
+ } | undefined;
1755
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1756
+ quickActions?: {
1757
+ id: string;
1758
+ label: string;
1759
+ icon?: string | undefined;
1760
+ }[] | undefined;
1761
+ quickSettings?: {
1762
+ settingKey: string;
1763
+ }[] | undefined;
1764
+ lastError?: string | undefined;
1765
+ assignedOperatorIds?: string[] | undefined;
1766
+ autoCallEnabledOperatorIds?: string[] | undefined;
1767
+ pausedOperatorIds?: string[] | undefined;
1768
+ locales?: Record<string, Record<string, string>> | undefined;
1769
+ }, {
1770
+ type: "strategy" | "utility";
1771
+ name: string;
1772
+ enabled: boolean;
1773
+ version: string;
1774
+ isBuiltIn: boolean;
1775
+ errorCount: number;
1776
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
1777
+ description?: string | undefined;
1566
1778
  settings?: Record<string, {
1567
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1779
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1568
1780
  label: string;
1569
- scope: "operator" | "global";
1570
1781
  keys?: {
1571
1782
  label: string;
1572
1783
  key: string;
@@ -1577,13 +1788,14 @@ export declare const PluginStatusSchema: z.ZodObject<{
1577
1788
  label: string;
1578
1789
  }[] | undefined;
1579
1790
  default?: unknown;
1580
- description?: string | undefined;
1581
1791
  min?: number | undefined;
1582
1792
  max?: number | undefined;
1793
+ description?: string | undefined;
1583
1794
  itemFields?: {
1584
- type: "string" | "number" | "boolean";
1585
1795
  label: string;
1586
1796
  key: string;
1797
+ type?: "string" | "number" | "boolean" | undefined;
1798
+ default?: unknown;
1587
1799
  description?: string | undefined;
1588
1800
  placeholder?: string | undefined;
1589
1801
  required?: boolean | undefined;
@@ -1594,27 +1806,8 @@ export declare const PluginStatusSchema: z.ZodObject<{
1594
1806
  when: PluginSettingCondition;
1595
1807
  }[] | undefined;
1596
1808
  hidden?: boolean | undefined;
1809
+ scope?: "operator" | "global" | undefined;
1597
1810
  }> | undefined;
1598
- quickActions?: {
1599
- id: string;
1600
- label: string;
1601
- icon?: string | undefined;
1602
- }[] | undefined;
1603
- quickSettings?: {
1604
- settingKey: string;
1605
- }[] | undefined;
1606
- lastError?: string | undefined;
1607
- assignedOperatorIds?: string[] | undefined;
1608
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
1609
- locales?: Record<string, Record<string, string>> | undefined;
1610
- }, {
1611
- type: "strategy" | "utility";
1612
- name: string;
1613
- enabled: boolean;
1614
- version: string;
1615
- isBuiltIn: boolean;
1616
- errorCount: number;
1617
- description?: string | undefined;
1618
1811
  source?: {
1619
1812
  kind: "marketplace";
1620
1813
  version: string;
@@ -1630,9 +1823,9 @@ export declare const PluginStatusSchema: z.ZodObject<{
1630
1823
  params?: Record<string, string> | undefined;
1631
1824
  icon?: string | undefined;
1632
1825
  pageId?: string | undefined;
1633
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1826
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1634
1827
  width?: "full" | "half" | undefined;
1635
- openMode?: "popover" | "modal" | undefined;
1828
+ openMode?: "popover" | "modal" | "page" | undefined;
1636
1829
  uiSize?: "sm" | "md" | "lg" | undefined;
1637
1830
  }[] | undefined;
1638
1831
  ui?: {
@@ -1646,42 +1839,18 @@ export declare const PluginStatusSchema: z.ZodObject<{
1646
1839
  resourceBinding?: "none" | "callsign" | "operator" | undefined;
1647
1840
  }[] | undefined;
1648
1841
  } | undefined;
1842
+ strategyFeatures?: {
1843
+ maxConcurrentStreams?: number | undefined;
1844
+ targetQueue?: 1 | undefined;
1845
+ parallelTargetQueue?: 1 | undefined;
1846
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1847
+ manualInitiation?: 1 | undefined;
1848
+ maxSimultaneousSignals?: number | undefined;
1849
+ } | undefined;
1649
1850
  instanceScope?: "operator" | "global" | undefined;
1650
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1651
- settings?: Record<string, {
1652
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
1653
- label: string;
1654
- keys?: {
1655
- label: string;
1656
- key: string;
1657
- description?: string | undefined;
1658
- }[] | undefined;
1659
- options?: {
1660
- value: string;
1661
- label: string;
1662
- }[] | undefined;
1663
- default?: unknown;
1664
- description?: string | undefined;
1665
- min?: number | undefined;
1666
- max?: number | undefined;
1667
- itemFields?: {
1668
- label: string;
1669
- key: string;
1670
- type?: "string" | "number" | "boolean" | undefined;
1671
- description?: string | undefined;
1672
- placeholder?: string | undefined;
1673
- required?: boolean | undefined;
1674
- }[] | undefined;
1675
- visibleWhen?: PluginSettingCondition | undefined;
1676
- descriptionWhen?: {
1677
- description: string;
1678
- when: PluginSettingCondition;
1679
- }[] | undefined;
1680
- hidden?: boolean | undefined;
1681
- scope?: "operator" | "global" | undefined;
1682
- }> | undefined;
1683
- quickActions?: {
1684
- id: string;
1851
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
1852
+ quickActions?: {
1853
+ id: string;
1685
1854
  label: string;
1686
1855
  icon?: string | undefined;
1687
1856
  }[] | undefined;
@@ -1692,7 +1861,8 @@ export declare const PluginStatusSchema: z.ZodObject<{
1692
1861
  autoDisabled?: boolean | undefined;
1693
1862
  lastError?: string | undefined;
1694
1863
  assignedOperatorIds?: string[] | undefined;
1695
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
1864
+ autoCallEnabledOperatorIds?: string[] | undefined;
1865
+ pausedOperatorIds?: string[] | undefined;
1696
1866
  locales?: Record<string, Record<string, string>> | undefined;
1697
1867
  }>;
1698
1868
  /**
@@ -1764,6 +1934,28 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1764
1934
  plugins: z.ZodArray<z.ZodObject<{
1765
1935
  name: z.ZodString;
1766
1936
  type: z.ZodEnum<["strategy", "utility"]>;
1937
+ strategyFeatures: z.ZodOptional<z.ZodObject<{
1938
+ targetQueue: z.ZodOptional<z.ZodLiteral<1>>;
1939
+ parallelTargetQueue: z.ZodOptional<z.ZodLiteral<1>>;
1940
+ queueActivation: z.ZodOptional<z.ZodEnum<["immediate", "operator-toggle"]>>;
1941
+ manualInitiation: z.ZodOptional<z.ZodLiteral<1>>;
1942
+ maxConcurrentStreams: z.ZodOptional<z.ZodNumber>;
1943
+ maxSimultaneousSignals: z.ZodOptional<z.ZodNumber>;
1944
+ }, "strip", z.ZodTypeAny, {
1945
+ maxConcurrentStreams?: number | undefined;
1946
+ targetQueue?: 1 | undefined;
1947
+ parallelTargetQueue?: 1 | undefined;
1948
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1949
+ manualInitiation?: 1 | undefined;
1950
+ maxSimultaneousSignals?: number | undefined;
1951
+ }, {
1952
+ maxConcurrentStreams?: number | undefined;
1953
+ targetQueue?: 1 | undefined;
1954
+ parallelTargetQueue?: 1 | undefined;
1955
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
1956
+ manualInitiation?: 1 | undefined;
1957
+ maxSimultaneousSignals?: number | undefined;
1958
+ }>>;
1767
1959
  instanceScope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["operator", "global"]>>>;
1768
1960
  version: z.ZodString;
1769
1961
  description: z.ZodOptional<z.ZodString>;
@@ -1777,7 +1969,7 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1777
1969
  /** 仅对 strategy 插件有意义:当前被哪些 operator 选中 */
1778
1970
  assignedOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1779
1971
  settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1780
- type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "info"]>;
1972
+ type: z.ZodEnum<["boolean", "number", "string", "string[]", "object[]", "keyedStringArrays", "keyedObjectArrays", "keyedObjects", "info"]>;
1781
1973
  default: z.ZodUnknown;
1782
1974
  label: z.ZodString;
1783
1975
  description: z.ZodOptional<z.ZodString>;
@@ -1801,10 +1993,12 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1801
1993
  description: z.ZodOptional<z.ZodString>;
1802
1994
  placeholder: z.ZodOptional<z.ZodString>;
1803
1995
  required: z.ZodOptional<z.ZodBoolean>;
1996
+ default: z.ZodOptional<z.ZodUnknown>;
1804
1997
  }, "strip", z.ZodTypeAny, {
1805
1998
  type: "string" | "number" | "boolean";
1806
1999
  label: string;
1807
2000
  key: string;
2001
+ default?: unknown;
1808
2002
  description?: string | undefined;
1809
2003
  placeholder?: string | undefined;
1810
2004
  required?: boolean | undefined;
@@ -1812,11 +2006,12 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1812
2006
  label: string;
1813
2007
  key: string;
1814
2008
  type?: "string" | "number" | "boolean" | undefined;
2009
+ default?: unknown;
1815
2010
  description?: string | undefined;
1816
2011
  placeholder?: string | undefined;
1817
2012
  required?: boolean | undefined;
1818
2013
  }>, "many">>;
1819
- /** Fixed key list used by generated editors for `keyedStringArrays` settings. */
2014
+ /** Fixed key list used by generated keyed setting editors. */
1820
2015
  keys: z.ZodOptional<z.ZodArray<z.ZodObject<{
1821
2016
  key: z.ZodString;
1822
2017
  label: z.ZodString;
@@ -1848,7 +2043,7 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1848
2043
  /** 设置作用域:global(所有操作员共享)或 operator(每操作员独立),默认 global */
1849
2044
  scope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["global", "operator"]>>>;
1850
2045
  }, "strip", z.ZodTypeAny, {
1851
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2046
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1852
2047
  label: string;
1853
2048
  scope: "operator" | "global";
1854
2049
  keys?: {
@@ -1861,13 +2056,14 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1861
2056
  label: string;
1862
2057
  }[] | undefined;
1863
2058
  default?: unknown;
1864
- description?: string | undefined;
1865
2059
  min?: number | undefined;
1866
2060
  max?: number | undefined;
2061
+ description?: string | undefined;
1867
2062
  itemFields?: {
1868
2063
  type: "string" | "number" | "boolean";
1869
2064
  label: string;
1870
2065
  key: string;
2066
+ default?: unknown;
1871
2067
  description?: string | undefined;
1872
2068
  placeholder?: string | undefined;
1873
2069
  required?: boolean | undefined;
@@ -1879,7 +2075,7 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1879
2075
  }[] | undefined;
1880
2076
  hidden?: boolean | undefined;
1881
2077
  }, {
1882
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2078
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
1883
2079
  label: string;
1884
2080
  keys?: {
1885
2081
  label: string;
@@ -1891,13 +2087,14 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1891
2087
  label: string;
1892
2088
  }[] | undefined;
1893
2089
  default?: unknown;
1894
- description?: string | undefined;
1895
2090
  min?: number | undefined;
1896
2091
  max?: number | undefined;
2092
+ description?: string | undefined;
1897
2093
  itemFields?: {
1898
2094
  label: string;
1899
2095
  key: string;
1900
2096
  type?: "string" | "number" | "boolean" | undefined;
2097
+ default?: unknown;
1901
2098
  description?: string | undefined;
1902
2099
  placeholder?: string | undefined;
1903
2100
  required?: boolean | undefined;
@@ -1939,13 +2136,13 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1939
2136
  /** Optional string params forwarded to iframe panels as URL/init params. */
1940
2137
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1941
2138
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
1942
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
2139
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
1943
2140
  /** Preferred width hint. Defaults to `'half'`. */
1944
2141
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
1945
2142
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
1946
2143
  icon: z.ZodOptional<z.ZodString>;
1947
2144
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
1948
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
2145
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
1949
2146
  /** Optional controlled UI size hint for toolbar popovers/modals. */
1950
2147
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
1951
2148
  }, "strip", z.ZodTypeAny, {
@@ -1955,9 +2152,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1955
2152
  params?: Record<string, string> | undefined;
1956
2153
  icon?: string | undefined;
1957
2154
  pageId?: string | undefined;
1958
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2155
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1959
2156
  width?: "full" | "half" | undefined;
1960
- openMode?: "popover" | "modal" | undefined;
2157
+ openMode?: "popover" | "modal" | "page" | undefined;
1961
2158
  uiSize?: "sm" | "md" | "lg" | undefined;
1962
2159
  }, {
1963
2160
  id: string;
@@ -1966,9 +2163,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1966
2163
  params?: Record<string, string> | undefined;
1967
2164
  icon?: string | undefined;
1968
2165
  pageId?: string | undefined;
1969
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2166
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1970
2167
  width?: "full" | "half" | undefined;
1971
- openMode?: "popover" | "modal" | undefined;
2168
+ openMode?: "popover" | "modal" | "page" | undefined;
1972
2169
  uiSize?: "sm" | "md" | "lg" | undefined;
1973
2170
  }>, {
1974
2171
  id: string;
@@ -1977,9 +2174,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1977
2174
  params?: Record<string, string> | undefined;
1978
2175
  icon?: string | undefined;
1979
2176
  pageId?: string | undefined;
1980
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2177
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1981
2178
  width?: "full" | "half" | undefined;
1982
- openMode?: "popover" | "modal" | undefined;
2179
+ openMode?: "popover" | "modal" | "page" | undefined;
1983
2180
  uiSize?: "sm" | "md" | "lg" | undefined;
1984
2181
  }, {
1985
2182
  id: string;
@@ -1988,13 +2185,15 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
1988
2185
  params?: Record<string, string> | undefined;
1989
2186
  icon?: string | undefined;
1990
2187
  pageId?: string | undefined;
1991
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2188
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
1992
2189
  width?: "full" | "half" | undefined;
1993
- openMode?: "popover" | "modal" | undefined;
2190
+ openMode?: "popover" | "modal" | "page" | undefined;
1994
2191
  uiSize?: "sm" | "md" | "lg" | undefined;
1995
2192
  }>, "many">>;
1996
- permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
1997
- capabilities: z.ZodOptional<z.ZodArray<z.ZodEnum<["auto_call_candidate", "auto_call_execution"]>, "many">>;
2193
+ permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>;
2194
+ capabilities: z.ZodOptional<z.ZodArray<z.ZodEnum<["auto_call_control", "auto_call_candidate", "auto_call_execution"]>, "many">>;
2195
+ autoCallEnabledOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2196
+ pausedOperatorIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1998
2197
  ui: z.ZodOptional<z.ZodObject<{
1999
2198
  /** Static file directory relative to the plugin root (default: 'ui'). */
2000
2199
  dir: z.ZodDefault<z.ZodOptional<z.ZodString>>;
@@ -2081,7 +2280,41 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2081
2280
  loaded: boolean;
2082
2281
  autoDisabled: boolean;
2083
2282
  errorCount: number;
2283
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
2084
2284
  description?: string | undefined;
2285
+ settings?: Record<string, {
2286
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
2287
+ label: string;
2288
+ scope: "operator" | "global";
2289
+ keys?: {
2290
+ label: string;
2291
+ key: string;
2292
+ description?: string | undefined;
2293
+ }[] | undefined;
2294
+ options?: {
2295
+ value: string;
2296
+ label: string;
2297
+ }[] | undefined;
2298
+ default?: unknown;
2299
+ min?: number | undefined;
2300
+ max?: number | undefined;
2301
+ description?: string | undefined;
2302
+ itemFields?: {
2303
+ type: "string" | "number" | "boolean";
2304
+ label: string;
2305
+ key: string;
2306
+ default?: unknown;
2307
+ description?: string | undefined;
2308
+ placeholder?: string | undefined;
2309
+ required?: boolean | undefined;
2310
+ }[] | undefined;
2311
+ visibleWhen?: PluginSettingCondition | undefined;
2312
+ descriptionWhen?: {
2313
+ description: string;
2314
+ when: PluginSettingCondition;
2315
+ }[] | undefined;
2316
+ hidden?: boolean | undefined;
2317
+ }> | undefined;
2085
2318
  source?: {
2086
2319
  kind: "marketplace";
2087
2320
  version: string;
@@ -2097,9 +2330,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2097
2330
  params?: Record<string, string> | undefined;
2098
2331
  icon?: string | undefined;
2099
2332
  pageId?: string | undefined;
2100
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2333
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2101
2334
  width?: "full" | "half" | undefined;
2102
- openMode?: "popover" | "modal" | undefined;
2335
+ openMode?: "popover" | "modal" | "page" | undefined;
2103
2336
  uiSize?: "sm" | "md" | "lg" | undefined;
2104
2337
  }[] | undefined;
2105
2338
  ui?: {
@@ -2113,11 +2346,40 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2113
2346
  icon?: string | undefined;
2114
2347
  }[];
2115
2348
  } | undefined;
2116
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2349
+ strategyFeatures?: {
2350
+ maxConcurrentStreams?: number | undefined;
2351
+ targetQueue?: 1 | undefined;
2352
+ parallelTargetQueue?: 1 | undefined;
2353
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
2354
+ manualInitiation?: 1 | undefined;
2355
+ maxSimultaneousSignals?: number | undefined;
2356
+ } | undefined;
2357
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2358
+ quickActions?: {
2359
+ id: string;
2360
+ label: string;
2361
+ icon?: string | undefined;
2362
+ }[] | undefined;
2363
+ quickSettings?: {
2364
+ settingKey: string;
2365
+ }[] | undefined;
2366
+ lastError?: string | undefined;
2367
+ assignedOperatorIds?: string[] | undefined;
2368
+ autoCallEnabledOperatorIds?: string[] | undefined;
2369
+ pausedOperatorIds?: string[] | undefined;
2370
+ locales?: Record<string, Record<string, string>> | undefined;
2371
+ }, {
2372
+ type: "strategy" | "utility";
2373
+ name: string;
2374
+ enabled: boolean;
2375
+ version: string;
2376
+ isBuiltIn: boolean;
2377
+ errorCount: number;
2378
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
2379
+ description?: string | undefined;
2117
2380
  settings?: Record<string, {
2118
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2381
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
2119
2382
  label: string;
2120
- scope: "operator" | "global";
2121
2383
  keys?: {
2122
2384
  label: string;
2123
2385
  key: string;
@@ -2128,13 +2390,14 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2128
2390
  label: string;
2129
2391
  }[] | undefined;
2130
2392
  default?: unknown;
2131
- description?: string | undefined;
2132
2393
  min?: number | undefined;
2133
2394
  max?: number | undefined;
2395
+ description?: string | undefined;
2134
2396
  itemFields?: {
2135
- type: "string" | "number" | "boolean";
2136
2397
  label: string;
2137
2398
  key: string;
2399
+ type?: "string" | "number" | "boolean" | undefined;
2400
+ default?: unknown;
2138
2401
  description?: string | undefined;
2139
2402
  placeholder?: string | undefined;
2140
2403
  required?: boolean | undefined;
@@ -2145,27 +2408,8 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2145
2408
  when: PluginSettingCondition;
2146
2409
  }[] | undefined;
2147
2410
  hidden?: boolean | undefined;
2411
+ scope?: "operator" | "global" | undefined;
2148
2412
  }> | undefined;
2149
- quickActions?: {
2150
- id: string;
2151
- label: string;
2152
- icon?: string | undefined;
2153
- }[] | undefined;
2154
- quickSettings?: {
2155
- settingKey: string;
2156
- }[] | undefined;
2157
- lastError?: string | undefined;
2158
- assignedOperatorIds?: string[] | undefined;
2159
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
2160
- locales?: Record<string, Record<string, string>> | undefined;
2161
- }, {
2162
- type: "strategy" | "utility";
2163
- name: string;
2164
- enabled: boolean;
2165
- version: string;
2166
- isBuiltIn: boolean;
2167
- errorCount: number;
2168
- description?: string | undefined;
2169
2413
  source?: {
2170
2414
  kind: "marketplace";
2171
2415
  version: string;
@@ -2181,9 +2425,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2181
2425
  params?: Record<string, string> | undefined;
2182
2426
  icon?: string | undefined;
2183
2427
  pageId?: string | undefined;
2184
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2428
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2185
2429
  width?: "full" | "half" | undefined;
2186
- openMode?: "popover" | "modal" | undefined;
2430
+ openMode?: "popover" | "modal" | "page" | undefined;
2187
2431
  uiSize?: "sm" | "md" | "lg" | undefined;
2188
2432
  }[] | undefined;
2189
2433
  ui?: {
@@ -2197,40 +2441,16 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2197
2441
  resourceBinding?: "none" | "callsign" | "operator" | undefined;
2198
2442
  }[] | undefined;
2199
2443
  } | undefined;
2444
+ strategyFeatures?: {
2445
+ maxConcurrentStreams?: number | undefined;
2446
+ targetQueue?: 1 | undefined;
2447
+ parallelTargetQueue?: 1 | undefined;
2448
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
2449
+ manualInitiation?: 1 | undefined;
2450
+ maxSimultaneousSignals?: number | undefined;
2451
+ } | undefined;
2200
2452
  instanceScope?: "operator" | "global" | undefined;
2201
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2202
- settings?: Record<string, {
2203
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2204
- label: string;
2205
- keys?: {
2206
- label: string;
2207
- key: string;
2208
- description?: string | undefined;
2209
- }[] | undefined;
2210
- options?: {
2211
- value: string;
2212
- label: string;
2213
- }[] | undefined;
2214
- default?: unknown;
2215
- description?: string | undefined;
2216
- min?: number | undefined;
2217
- max?: number | undefined;
2218
- itemFields?: {
2219
- label: string;
2220
- key: string;
2221
- type?: "string" | "number" | "boolean" | undefined;
2222
- description?: string | undefined;
2223
- placeholder?: string | undefined;
2224
- required?: boolean | undefined;
2225
- }[] | undefined;
2226
- visibleWhen?: PluginSettingCondition | undefined;
2227
- descriptionWhen?: {
2228
- description: string;
2229
- when: PluginSettingCondition;
2230
- }[] | undefined;
2231
- hidden?: boolean | undefined;
2232
- scope?: "operator" | "global" | undefined;
2233
- }> | undefined;
2453
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2234
2454
  quickActions?: {
2235
2455
  id: string;
2236
2456
  label: string;
@@ -2243,7 +2463,8 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2243
2463
  autoDisabled?: boolean | undefined;
2244
2464
  lastError?: string | undefined;
2245
2465
  assignedOperatorIds?: string[] | undefined;
2246
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
2466
+ autoCallEnabledOperatorIds?: string[] | undefined;
2467
+ pausedOperatorIds?: string[] | undefined;
2247
2468
  locales?: Record<string, Record<string, string>> | undefined;
2248
2469
  }>, "many">;
2249
2470
  panelMeta: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -2296,11 +2517,11 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2296
2517
  kind: z.ZodLiteral<"operator">;
2297
2518
  operatorId: z.ZodString;
2298
2519
  }, "strip", z.ZodTypeAny, {
2299
- operatorId: string;
2300
2520
  kind: "operator";
2301
- }, {
2302
2521
  operatorId: string;
2522
+ }, {
2303
2523
  kind: "operator";
2524
+ operatorId: string;
2304
2525
  }>]>>;
2305
2526
  panels: z.ZodArray<z.ZodEffects<z.ZodObject<{
2306
2527
  id: z.ZodString;
@@ -2311,13 +2532,13 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2311
2532
  /** Optional string params forwarded to iframe panels as URL/init params. */
2312
2533
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2313
2534
  /** Where the panel renders. Defaults to `'operator'` (operator card live-panel area). */
2314
- slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
2535
+ slot: z.ZodOptional<z.ZodEnum<["operator", "automation", "operator-action", "main-right", "voice-left-top", "voice-right-top", "cw-left-top", "cw-right-top", "radio-control-toolbar"]>>;
2315
2536
  /** Preferred width hint. Defaults to `'half'`. */
2316
2537
  width: z.ZodOptional<z.ZodEnum<["half", "full"]>>;
2317
2538
  /** Optional FontAwesome Free icon name used by toolbar-style hosts. */
2318
2539
  icon: z.ZodOptional<z.ZodString>;
2319
2540
  /** Optional toolbar opening mode. Defaults to host-specific behavior, typically `'popover'`. */
2320
- openMode: z.ZodOptional<z.ZodEnum<["popover", "modal"]>>;
2541
+ openMode: z.ZodOptional<z.ZodEnum<["popover", "modal", "page"]>>;
2321
2542
  /** Optional controlled UI size hint for toolbar popovers/modals. */
2322
2543
  uiSize: z.ZodOptional<z.ZodEnum<["sm", "md", "lg"]>>;
2323
2544
  }, "strip", z.ZodTypeAny, {
@@ -2327,9 +2548,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2327
2548
  params?: Record<string, string> | undefined;
2328
2549
  icon?: string | undefined;
2329
2550
  pageId?: string | undefined;
2330
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2551
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2331
2552
  width?: "full" | "half" | undefined;
2332
- openMode?: "popover" | "modal" | undefined;
2553
+ openMode?: "popover" | "modal" | "page" | undefined;
2333
2554
  uiSize?: "sm" | "md" | "lg" | undefined;
2334
2555
  }, {
2335
2556
  id: string;
@@ -2338,9 +2559,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2338
2559
  params?: Record<string, string> | undefined;
2339
2560
  icon?: string | undefined;
2340
2561
  pageId?: string | undefined;
2341
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2562
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2342
2563
  width?: "full" | "half" | undefined;
2343
- openMode?: "popover" | "modal" | undefined;
2564
+ openMode?: "popover" | "modal" | "page" | undefined;
2344
2565
  uiSize?: "sm" | "md" | "lg" | undefined;
2345
2566
  }>, {
2346
2567
  id: string;
@@ -2349,9 +2570,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2349
2570
  params?: Record<string, string> | undefined;
2350
2571
  icon?: string | undefined;
2351
2572
  pageId?: string | undefined;
2352
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2573
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2353
2574
  width?: "full" | "half" | undefined;
2354
- openMode?: "popover" | "modal" | undefined;
2575
+ openMode?: "popover" | "modal" | "page" | undefined;
2355
2576
  uiSize?: "sm" | "md" | "lg" | undefined;
2356
2577
  }, {
2357
2578
  id: string;
@@ -2360,9 +2581,9 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2360
2581
  params?: Record<string, string> | undefined;
2361
2582
  icon?: string | undefined;
2362
2583
  pageId?: string | undefined;
2363
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2584
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2364
2585
  width?: "full" | "half" | undefined;
2365
- openMode?: "popover" | "modal" | undefined;
2586
+ openMode?: "popover" | "modal" | "page" | undefined;
2366
2587
  uiSize?: "sm" | "md" | "lg" | undefined;
2367
2588
  }>, "many">;
2368
2589
  }, "strip", z.ZodTypeAny, {
@@ -2376,16 +2597,16 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2376
2597
  params?: Record<string, string> | undefined;
2377
2598
  icon?: string | undefined;
2378
2599
  pageId?: string | undefined;
2379
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2600
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2380
2601
  width?: "full" | "half" | undefined;
2381
- openMode?: "popover" | "modal" | undefined;
2602
+ openMode?: "popover" | "modal" | "page" | undefined;
2382
2603
  uiSize?: "sm" | "md" | "lg" | undefined;
2383
2604
  }[];
2384
2605
  instanceTarget?: {
2385
2606
  kind: "global";
2386
2607
  } | {
2387
- operatorId: string;
2388
2608
  kind: "operator";
2609
+ operatorId: string;
2389
2610
  } | undefined;
2390
2611
  }, {
2391
2612
  pluginName: string;
@@ -2398,16 +2619,16 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2398
2619
  params?: Record<string, string> | undefined;
2399
2620
  icon?: string | undefined;
2400
2621
  pageId?: string | undefined;
2401
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2622
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2402
2623
  width?: "full" | "half" | undefined;
2403
- openMode?: "popover" | "modal" | undefined;
2624
+ openMode?: "popover" | "modal" | "page" | undefined;
2404
2625
  uiSize?: "sm" | "md" | "lg" | undefined;
2405
2626
  }[];
2406
2627
  instanceTarget?: {
2407
2628
  kind: "global";
2408
2629
  } | {
2409
- operatorId: string;
2410
2630
  kind: "operator";
2631
+ operatorId: string;
2411
2632
  } | undefined;
2412
2633
  }>, "many">>>;
2413
2634
  lastError: z.ZodOptional<z.ZodString>;
@@ -2424,41 +2645,10 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2424
2645
  loaded: boolean;
2425
2646
  autoDisabled: boolean;
2426
2647
  errorCount: number;
2648
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
2427
2649
  description?: string | undefined;
2428
- source?: {
2429
- kind: "marketplace";
2430
- version: string;
2431
- channel: "stable" | "nightly";
2432
- artifactUrl: string;
2433
- sha256: string;
2434
- installedAt: number;
2435
- } | undefined;
2436
- panels?: {
2437
- id: string;
2438
- title: string;
2439
- component: "table" | "key-value" | "chart" | "log" | "iframe";
2440
- params?: Record<string, string> | undefined;
2441
- icon?: string | undefined;
2442
- pageId?: string | undefined;
2443
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2444
- width?: "full" | "half" | undefined;
2445
- openMode?: "popover" | "modal" | undefined;
2446
- uiSize?: "sm" | "md" | "lg" | undefined;
2447
- }[] | undefined;
2448
- ui?: {
2449
- dir: string;
2450
- pages: {
2451
- id: string;
2452
- title: string;
2453
- entry: string;
2454
- accessScope: "operator" | "admin";
2455
- resourceBinding: "none" | "callsign" | "operator";
2456
- icon?: string | undefined;
2457
- }[];
2458
- } | undefined;
2459
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2460
2650
  settings?: Record<string, {
2461
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2651
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
2462
2652
  label: string;
2463
2653
  scope: "operator" | "global";
2464
2654
  keys?: {
@@ -2471,13 +2661,14 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2471
2661
  label: string;
2472
2662
  }[] | undefined;
2473
2663
  default?: unknown;
2474
- description?: string | undefined;
2475
2664
  min?: number | undefined;
2476
2665
  max?: number | undefined;
2666
+ description?: string | undefined;
2477
2667
  itemFields?: {
2478
2668
  type: "string" | "number" | "boolean";
2479
2669
  label: string;
2480
2670
  key: string;
2671
+ default?: unknown;
2481
2672
  description?: string | undefined;
2482
2673
  placeholder?: string | undefined;
2483
2674
  required?: boolean | undefined;
@@ -2489,6 +2680,46 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2489
2680
  }[] | undefined;
2490
2681
  hidden?: boolean | undefined;
2491
2682
  }> | undefined;
2683
+ source?: {
2684
+ kind: "marketplace";
2685
+ version: string;
2686
+ channel: "stable" | "nightly";
2687
+ artifactUrl: string;
2688
+ sha256: string;
2689
+ installedAt: number;
2690
+ } | undefined;
2691
+ panels?: {
2692
+ id: string;
2693
+ title: string;
2694
+ component: "table" | "key-value" | "chart" | "log" | "iframe";
2695
+ params?: Record<string, string> | undefined;
2696
+ icon?: string | undefined;
2697
+ pageId?: string | undefined;
2698
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2699
+ width?: "full" | "half" | undefined;
2700
+ openMode?: "popover" | "modal" | "page" | undefined;
2701
+ uiSize?: "sm" | "md" | "lg" | undefined;
2702
+ }[] | undefined;
2703
+ ui?: {
2704
+ dir: string;
2705
+ pages: {
2706
+ id: string;
2707
+ title: string;
2708
+ entry: string;
2709
+ accessScope: "operator" | "admin";
2710
+ resourceBinding: "none" | "callsign" | "operator";
2711
+ icon?: string | undefined;
2712
+ }[];
2713
+ } | undefined;
2714
+ strategyFeatures?: {
2715
+ maxConcurrentStreams?: number | undefined;
2716
+ targetQueue?: 1 | undefined;
2717
+ parallelTargetQueue?: 1 | undefined;
2718
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
2719
+ manualInitiation?: 1 | undefined;
2720
+ maxSimultaneousSignals?: number | undefined;
2721
+ } | undefined;
2722
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2492
2723
  quickActions?: {
2493
2724
  id: string;
2494
2725
  label: string;
@@ -2499,7 +2730,8 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2499
2730
  }[] | undefined;
2500
2731
  lastError?: string | undefined;
2501
2732
  assignedOperatorIds?: string[] | undefined;
2502
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
2733
+ autoCallEnabledOperatorIds?: string[] | undefined;
2734
+ pausedOperatorIds?: string[] | undefined;
2503
2735
  locales?: Record<string, Record<string, string>> | undefined;
2504
2736
  }[];
2505
2737
  panelMeta: {
@@ -2523,16 +2755,16 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2523
2755
  params?: Record<string, string> | undefined;
2524
2756
  icon?: string | undefined;
2525
2757
  pageId?: string | undefined;
2526
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2758
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2527
2759
  width?: "full" | "half" | undefined;
2528
- openMode?: "popover" | "modal" | undefined;
2760
+ openMode?: "popover" | "modal" | "page" | undefined;
2529
2761
  uiSize?: "sm" | "md" | "lg" | undefined;
2530
2762
  }[];
2531
2763
  instanceTarget?: {
2532
2764
  kind: "global";
2533
2765
  } | {
2534
- operatorId: string;
2535
2766
  kind: "operator";
2767
+ operatorId: string;
2536
2768
  } | undefined;
2537
2769
  }[];
2538
2770
  lastError?: string | undefined;
@@ -2546,42 +2778,10 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2546
2778
  version: string;
2547
2779
  isBuiltIn: boolean;
2548
2780
  errorCount: number;
2781
+ capabilities?: ("auto_call_control" | "auto_call_candidate" | "auto_call_execution")[] | undefined;
2549
2782
  description?: string | undefined;
2550
- source?: {
2551
- kind: "marketplace";
2552
- version: string;
2553
- channel: "stable" | "nightly";
2554
- artifactUrl: string;
2555
- sha256: string;
2556
- installedAt: number;
2557
- } | undefined;
2558
- panels?: {
2559
- id: string;
2560
- title: string;
2561
- component: "table" | "key-value" | "chart" | "log" | "iframe";
2562
- params?: Record<string, string> | undefined;
2563
- icon?: string | undefined;
2564
- pageId?: string | undefined;
2565
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2566
- width?: "full" | "half" | undefined;
2567
- openMode?: "popover" | "modal" | undefined;
2568
- uiSize?: "sm" | "md" | "lg" | undefined;
2569
- }[] | undefined;
2570
- ui?: {
2571
- dir?: string | undefined;
2572
- pages?: {
2573
- id: string;
2574
- title: string;
2575
- entry: string;
2576
- icon?: string | undefined;
2577
- accessScope?: "operator" | "admin" | undefined;
2578
- resourceBinding?: "none" | "callsign" | "operator" | undefined;
2579
- }[] | undefined;
2580
- } | undefined;
2581
- instanceScope?: "operator" | "global" | undefined;
2582
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2583
2783
  settings?: Record<string, {
2584
- type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "info";
2784
+ type: "string" | "number" | "boolean" | "string[]" | "object[]" | "keyedStringArrays" | "keyedObjectArrays" | "keyedObjects" | "info";
2585
2785
  label: string;
2586
2786
  keys?: {
2587
2787
  label: string;
@@ -2593,13 +2793,14 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2593
2793
  label: string;
2594
2794
  }[] | undefined;
2595
2795
  default?: unknown;
2596
- description?: string | undefined;
2597
2796
  min?: number | undefined;
2598
2797
  max?: number | undefined;
2798
+ description?: string | undefined;
2599
2799
  itemFields?: {
2600
2800
  label: string;
2601
2801
  key: string;
2602
2802
  type?: "string" | "number" | "boolean" | undefined;
2803
+ default?: unknown;
2603
2804
  description?: string | undefined;
2604
2805
  placeholder?: string | undefined;
2605
2806
  required?: boolean | undefined;
@@ -2612,24 +2813,66 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2612
2813
  hidden?: boolean | undefined;
2613
2814
  scope?: "operator" | "global" | undefined;
2614
2815
  }> | undefined;
2615
- quickActions?: {
2816
+ source?: {
2817
+ kind: "marketplace";
2818
+ version: string;
2819
+ channel: "stable" | "nightly";
2820
+ artifactUrl: string;
2821
+ sha256: string;
2822
+ installedAt: number;
2823
+ } | undefined;
2824
+ panels?: {
2616
2825
  id: string;
2617
- label: string;
2826
+ title: string;
2827
+ component: "table" | "key-value" | "chart" | "log" | "iframe";
2828
+ params?: Record<string, string> | undefined;
2618
2829
  icon?: string | undefined;
2830
+ pageId?: string | undefined;
2831
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2832
+ width?: "full" | "half" | undefined;
2833
+ openMode?: "popover" | "modal" | "page" | undefined;
2834
+ uiSize?: "sm" | "md" | "lg" | undefined;
2619
2835
  }[] | undefined;
2620
- quickSettings?: {
2621
- settingKey: string;
2622
- }[] | undefined;
2623
- loaded?: boolean | undefined;
2624
- autoDisabled?: boolean | undefined;
2625
- lastError?: string | undefined;
2626
- assignedOperatorIds?: string[] | undefined;
2627
- capabilities?: ("auto_call_candidate" | "auto_call_execution")[] | undefined;
2628
- locales?: Record<string, Record<string, string>> | undefined;
2629
- }[];
2630
- lastError?: string | undefined;
2631
- panelMeta?: {
2632
- operatorId: string;
2836
+ ui?: {
2837
+ dir?: string | undefined;
2838
+ pages?: {
2839
+ id: string;
2840
+ title: string;
2841
+ entry: string;
2842
+ icon?: string | undefined;
2843
+ accessScope?: "operator" | "admin" | undefined;
2844
+ resourceBinding?: "none" | "callsign" | "operator" | undefined;
2845
+ }[] | undefined;
2846
+ } | undefined;
2847
+ strategyFeatures?: {
2848
+ maxConcurrentStreams?: number | undefined;
2849
+ targetQueue?: 1 | undefined;
2850
+ parallelTargetQueue?: 1 | undefined;
2851
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
2852
+ manualInitiation?: 1 | undefined;
2853
+ maxSimultaneousSignals?: number | undefined;
2854
+ } | undefined;
2855
+ instanceScope?: "operator" | "global" | undefined;
2856
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2857
+ quickActions?: {
2858
+ id: string;
2859
+ label: string;
2860
+ icon?: string | undefined;
2861
+ }[] | undefined;
2862
+ quickSettings?: {
2863
+ settingKey: string;
2864
+ }[] | undefined;
2865
+ loaded?: boolean | undefined;
2866
+ autoDisabled?: boolean | undefined;
2867
+ lastError?: string | undefined;
2868
+ assignedOperatorIds?: string[] | undefined;
2869
+ autoCallEnabledOperatorIds?: string[] | undefined;
2870
+ pausedOperatorIds?: string[] | undefined;
2871
+ locales?: Record<string, Record<string, string>> | undefined;
2872
+ }[];
2873
+ lastError?: string | undefined;
2874
+ panelMeta?: {
2875
+ operatorId: string;
2633
2876
  meta: {
2634
2877
  visible?: boolean | undefined;
2635
2878
  title?: string | null | undefined;
@@ -2649,16 +2892,16 @@ export declare const PluginSystemSnapshotSchema: z.ZodObject<{
2649
2892
  params?: Record<string, string> | undefined;
2650
2893
  icon?: string | undefined;
2651
2894
  pageId?: string | undefined;
2652
- slot?: "operator" | "automation" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2895
+ slot?: "operator" | "automation" | "operator-action" | "main-right" | "voice-left-top" | "voice-right-top" | "cw-left-top" | "cw-right-top" | "radio-control-toolbar" | undefined;
2653
2896
  width?: "full" | "half" | undefined;
2654
- openMode?: "popover" | "modal" | undefined;
2897
+ openMode?: "popover" | "modal" | "page" | undefined;
2655
2898
  uiSize?: "sm" | "md" | "lg" | undefined;
2656
2899
  }[];
2657
2900
  instanceTarget?: {
2658
2901
  kind: "global";
2659
2902
  } | {
2660
- operatorId: string;
2661
2903
  kind: "operator";
2904
+ operatorId: string;
2662
2905
  } | undefined;
2663
2906
  }[] | undefined;
2664
2907
  }>;
@@ -2666,6 +2909,8 @@ export type PluginSystemSnapshot = z.infer<typeof PluginSystemSnapshotSchema>;
2666
2909
  export declare const PluginDistributionSchema: z.ZodEnum<["electron", "docker", "android-bridge", "linux-service", "generic-server", "web-dev"]>;
2667
2910
  export type PluginDistribution = z.infer<typeof PluginDistributionSchema>;
2668
2911
  export declare const PluginRuntimeInfoSchema: z.ZodObject<{
2912
+ hostVersion: z.ZodString;
2913
+ pluginApiVersion: z.ZodString;
2669
2914
  pluginDir: z.ZodString;
2670
2915
  pluginDataDir: z.ZodString;
2671
2916
  dataDir: z.ZodString;
@@ -2675,6 +2920,8 @@ export declare const PluginRuntimeInfoSchema: z.ZodObject<{
2675
2920
  distribution: z.ZodEnum<["electron", "docker", "android-bridge", "linux-service", "generic-server", "web-dev"]>;
2676
2921
  hostPluginDirHint: z.ZodOptional<z.ZodString>;
2677
2922
  }, "strip", z.ZodTypeAny, {
2923
+ hostVersion: string;
2924
+ pluginApiVersion: string;
2678
2925
  pluginDir: string;
2679
2926
  pluginDataDir: string;
2680
2927
  dataDir: string;
@@ -2684,6 +2931,8 @@ export declare const PluginRuntimeInfoSchema: z.ZodObject<{
2684
2931
  distribution: "electron" | "docker" | "android-bridge" | "linux-service" | "generic-server" | "web-dev";
2685
2932
  hostPluginDirHint?: string | undefined;
2686
2933
  }, {
2934
+ hostVersion: string;
2935
+ pluginApiVersion: string;
2687
2936
  pluginDir: string;
2688
2937
  pluginDataDir: string;
2689
2938
  dataDir: string;
@@ -2701,11 +2950,11 @@ export declare const PluginConfigEntrySchema: z.ZodObject<{
2701
2950
  enabled: z.ZodBoolean;
2702
2951
  settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2703
2952
  }, "strip", z.ZodTypeAny, {
2704
- enabled: boolean;
2705
2953
  settings: Record<string, unknown>;
2706
- }, {
2707
2954
  enabled: boolean;
2955
+ }, {
2708
2956
  settings: Record<string, unknown>;
2957
+ enabled: boolean;
2709
2958
  }>;
2710
2959
  export type PluginConfigEntry = z.infer<typeof PluginConfigEntrySchema>;
2711
2960
  export declare const PluginMarketScreenshotSchema: z.ZodObject<{
@@ -2719,20 +2968,24 @@ export declare const PluginMarketScreenshotSchema: z.ZodObject<{
2719
2968
  alt?: string | undefined;
2720
2969
  }>;
2721
2970
  export type PluginMarketScreenshot = z.infer<typeof PluginMarketScreenshotSchema>;
2722
- export declare const PluginMarketCatalogEntrySchema: z.ZodObject<{
2971
+ export declare const PluginMarketCatalogEntrySchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
2723
2972
  name: z.ZodString;
2724
2973
  title: z.ZodString;
2725
2974
  description: z.ZodString;
2975
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
2976
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
2726
2977
  locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
2727
2978
  latestVersion: z.ZodString;
2728
- minHostVersion: z.ZodString;
2979
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
2980
+ /** Catalog schema v1 compatibility alias; normalized on read. */
2981
+ minHostVersion: z.ZodOptional<z.ZodString>;
2729
2982
  author: z.ZodOptional<z.ZodString>;
2730
2983
  license: z.ZodOptional<z.ZodString>;
2731
2984
  repository: z.ZodOptional<z.ZodString>;
2732
2985
  homepage: z.ZodOptional<z.ZodString>;
2733
2986
  categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2734
2987
  keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2735
- permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
2988
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
2736
2989
  screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
2737
2990
  src: z.ZodString;
2738
2991
  alt: z.ZodOptional<z.ZodString>;
@@ -2747,15 +3000,120 @@ export declare const PluginMarketCatalogEntrySchema: z.ZodObject<{
2747
3000
  sha256: z.ZodString;
2748
3001
  size: z.ZodNumber;
2749
3002
  publishedAt: z.ZodString;
3003
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
2750
3004
  }, "strip", z.ZodTypeAny, {
2751
3005
  name: string;
2752
3006
  description: string;
2753
3007
  title: string;
2754
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3008
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3009
+ artifactUrl: string;
3010
+ sha256: string;
3011
+ latestVersion: string;
3012
+ categories: string[];
3013
+ keywords: string[];
3014
+ screenshots: {
3015
+ src: string;
3016
+ alt?: string | undefined;
3017
+ }[];
3018
+ size: number;
3019
+ publishedAt: string;
3020
+ minPluginApiVersion?: string | undefined;
3021
+ locales?: Record<string, Record<string, string>> | undefined;
3022
+ readmeMarkdown?: string | undefined;
3023
+ readmeSourceUrl?: string | undefined;
3024
+ minHostVersion?: string | undefined;
3025
+ author?: string | undefined;
3026
+ license?: string | undefined;
3027
+ repository?: string | undefined;
3028
+ homepage?: string | undefined;
3029
+ artifactManifestVersion?: 1 | undefined;
3030
+ }, {
3031
+ name: string;
3032
+ description: string;
3033
+ title: string;
3034
+ artifactUrl: string;
3035
+ sha256: string;
3036
+ latestVersion: string;
3037
+ size: number;
3038
+ publishedAt: string;
3039
+ minPluginApiVersion?: string | undefined;
3040
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3041
+ locales?: Record<string, Record<string, string>> | undefined;
3042
+ readmeMarkdown?: string | undefined;
3043
+ readmeSourceUrl?: string | undefined;
3044
+ minHostVersion?: string | undefined;
3045
+ author?: string | undefined;
3046
+ license?: string | undefined;
3047
+ repository?: string | undefined;
3048
+ homepage?: string | undefined;
3049
+ categories?: string[] | undefined;
3050
+ keywords?: string[] | undefined;
3051
+ screenshots?: {
3052
+ src: string;
3053
+ alt?: string | undefined;
3054
+ }[] | undefined;
3055
+ artifactManifestVersion?: 1 | undefined;
3056
+ }>, {
3057
+ name: string;
3058
+ description: string;
3059
+ title: string;
3060
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3061
+ artifactUrl: string;
3062
+ sha256: string;
3063
+ latestVersion: string;
3064
+ categories: string[];
3065
+ keywords: string[];
3066
+ screenshots: {
3067
+ src: string;
3068
+ alt?: string | undefined;
3069
+ }[];
3070
+ size: number;
3071
+ publishedAt: string;
3072
+ minPluginApiVersion?: string | undefined;
3073
+ locales?: Record<string, Record<string, string>> | undefined;
3074
+ readmeMarkdown?: string | undefined;
3075
+ readmeSourceUrl?: string | undefined;
3076
+ minHostVersion?: string | undefined;
3077
+ author?: string | undefined;
3078
+ license?: string | undefined;
3079
+ repository?: string | undefined;
3080
+ homepage?: string | undefined;
3081
+ artifactManifestVersion?: 1 | undefined;
3082
+ }, {
3083
+ name: string;
3084
+ description: string;
3085
+ title: string;
3086
+ artifactUrl: string;
3087
+ sha256: string;
3088
+ latestVersion: string;
3089
+ size: number;
3090
+ publishedAt: string;
3091
+ minPluginApiVersion?: string | undefined;
3092
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3093
+ locales?: Record<string, Record<string, string>> | undefined;
3094
+ readmeMarkdown?: string | undefined;
3095
+ readmeSourceUrl?: string | undefined;
3096
+ minHostVersion?: string | undefined;
3097
+ author?: string | undefined;
3098
+ license?: string | undefined;
3099
+ repository?: string | undefined;
3100
+ homepage?: string | undefined;
3101
+ categories?: string[] | undefined;
3102
+ keywords?: string[] | undefined;
3103
+ screenshots?: {
3104
+ src: string;
3105
+ alt?: string | undefined;
3106
+ }[] | undefined;
3107
+ artifactManifestVersion?: 1 | undefined;
3108
+ }>, {
3109
+ minPluginApiVersion: string;
3110
+ name: string;
3111
+ description: string;
3112
+ title: string;
3113
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
2755
3114
  artifactUrl: string;
2756
3115
  sha256: string;
2757
3116
  latestVersion: string;
2758
- minHostVersion: string;
2759
3117
  categories: string[];
2760
3118
  keywords: string[];
2761
3119
  screenshots: {
@@ -2765,10 +3123,13 @@ export declare const PluginMarketCatalogEntrySchema: z.ZodObject<{
2765
3123
  size: number;
2766
3124
  publishedAt: string;
2767
3125
  locales?: Record<string, Record<string, string>> | undefined;
3126
+ readmeMarkdown?: string | undefined;
3127
+ readmeSourceUrl?: string | undefined;
2768
3128
  author?: string | undefined;
2769
3129
  license?: string | undefined;
2770
3130
  repository?: string | undefined;
2771
3131
  homepage?: string | undefined;
3132
+ artifactManifestVersion?: 1 | undefined;
2772
3133
  }, {
2773
3134
  name: string;
2774
3135
  description: string;
@@ -2776,11 +3137,14 @@ export declare const PluginMarketCatalogEntrySchema: z.ZodObject<{
2776
3137
  artifactUrl: string;
2777
3138
  sha256: string;
2778
3139
  latestVersion: string;
2779
- minHostVersion: string;
2780
3140
  size: number;
2781
3141
  publishedAt: string;
2782
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3142
+ minPluginApiVersion?: string | undefined;
3143
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2783
3144
  locales?: Record<string, Record<string, string>> | undefined;
3145
+ readmeMarkdown?: string | undefined;
3146
+ readmeSourceUrl?: string | undefined;
3147
+ minHostVersion?: string | undefined;
2784
3148
  author?: string | undefined;
2785
3149
  license?: string | undefined;
2786
3150
  repository?: string | undefined;
@@ -2791,26 +3155,98 @@ export declare const PluginMarketCatalogEntrySchema: z.ZodObject<{
2791
3155
  src: string;
2792
3156
  alt?: string | undefined;
2793
3157
  }[] | undefined;
3158
+ artifactManifestVersion?: 1 | undefined;
2794
3159
  }>;
2795
3160
  export type PluginMarketCatalogEntry = z.infer<typeof PluginMarketCatalogEntrySchema>;
2796
- export declare const PluginMarketCatalogSchema: z.ZodObject<{
2797
- schemaVersion: z.ZodNumber;
3161
+ export declare const PluginArtifactManifestSchema: z.ZodObject<{
3162
+ schemaVersion: z.ZodLiteral<1>;
3163
+ name: z.ZodString;
3164
+ version: z.ZodString;
3165
+ minPluginApiVersion: z.ZodString;
3166
+ apiVersion: z.ZodOptional<z.ZodLiteral<2>>;
3167
+ type: z.ZodEnum<["strategy", "utility"]>;
3168
+ instanceScope: z.ZodDefault<z.ZodOptional<z.ZodEnum<["operator", "global"]>>>;
3169
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
3170
+ strategyFeatures: z.ZodOptional<z.ZodObject<{
3171
+ targetQueue: z.ZodOptional<z.ZodLiteral<1>>;
3172
+ parallelTargetQueue: z.ZodOptional<z.ZodLiteral<1>>;
3173
+ queueActivation: z.ZodOptional<z.ZodEnum<["immediate", "operator-toggle"]>>;
3174
+ manualInitiation: z.ZodOptional<z.ZodLiteral<1>>;
3175
+ maxConcurrentStreams: z.ZodOptional<z.ZodNumber>;
3176
+ maxSimultaneousSignals: z.ZodOptional<z.ZodNumber>;
3177
+ }, "strip", z.ZodTypeAny, {
3178
+ maxConcurrentStreams?: number | undefined;
3179
+ targetQueue?: 1 | undefined;
3180
+ parallelTargetQueue?: 1 | undefined;
3181
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
3182
+ manualInitiation?: 1 | undefined;
3183
+ maxSimultaneousSignals?: number | undefined;
3184
+ }, {
3185
+ maxConcurrentStreams?: number | undefined;
3186
+ targetQueue?: 1 | undefined;
3187
+ parallelTargetQueue?: 1 | undefined;
3188
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
3189
+ manualInitiation?: 1 | undefined;
3190
+ maxSimultaneousSignals?: number | undefined;
3191
+ }>>;
3192
+ }, "strip", z.ZodTypeAny, {
3193
+ type: "strategy" | "utility";
3194
+ name: string;
3195
+ schemaVersion: 1;
3196
+ version: string;
3197
+ minPluginApiVersion: string;
3198
+ instanceScope: "operator" | "global";
3199
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3200
+ apiVersion?: 2 | undefined;
3201
+ strategyFeatures?: {
3202
+ maxConcurrentStreams?: number | undefined;
3203
+ targetQueue?: 1 | undefined;
3204
+ parallelTargetQueue?: 1 | undefined;
3205
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
3206
+ manualInitiation?: 1 | undefined;
3207
+ maxSimultaneousSignals?: number | undefined;
3208
+ } | undefined;
3209
+ }, {
3210
+ type: "strategy" | "utility";
3211
+ name: string;
3212
+ schemaVersion: 1;
3213
+ version: string;
3214
+ minPluginApiVersion: string;
3215
+ apiVersion?: 2 | undefined;
3216
+ strategyFeatures?: {
3217
+ maxConcurrentStreams?: number | undefined;
3218
+ targetQueue?: 1 | undefined;
3219
+ parallelTargetQueue?: 1 | undefined;
3220
+ queueActivation?: "immediate" | "operator-toggle" | undefined;
3221
+ manualInitiation?: 1 | undefined;
3222
+ maxSimultaneousSignals?: number | undefined;
3223
+ } | undefined;
3224
+ instanceScope?: "operator" | "global" | undefined;
3225
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3226
+ }>;
3227
+ export type PluginArtifactManifest = z.infer<typeof PluginArtifactManifestSchema>;
3228
+ export declare const PluginMarketCatalogSchema: z.ZodDiscriminatedUnion<"schemaVersion", [z.ZodObject<{
3229
+ schemaVersion: z.ZodLiteral<1>;
2798
3230
  generatedAt: z.ZodString;
2799
3231
  channel: z.ZodEnum<["stable", "nightly"]>;
2800
- plugins: z.ZodArray<z.ZodObject<{
3232
+ plugins: z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodObject<{
2801
3233
  name: z.ZodString;
2802
3234
  title: z.ZodString;
2803
3235
  description: z.ZodString;
3236
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
3237
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
2804
3238
  locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
2805
3239
  latestVersion: z.ZodString;
2806
- minHostVersion: z.ZodString;
3240
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
3241
+ /** Catalog schema v1 compatibility alias; normalized on read. */
3242
+ minHostVersion: z.ZodOptional<z.ZodString>;
2807
3243
  author: z.ZodOptional<z.ZodString>;
2808
3244
  license: z.ZodOptional<z.ZodString>;
2809
3245
  repository: z.ZodOptional<z.ZodString>;
2810
3246
  homepage: z.ZodOptional<z.ZodString>;
2811
3247
  categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2812
3248
  keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2813
- permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
3249
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
2814
3250
  screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
2815
3251
  src: z.ZodString;
2816
3252
  alt: z.ZodOptional<z.ZodString>;
@@ -2825,15 +3261,120 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2825
3261
  sha256: z.ZodString;
2826
3262
  size: z.ZodNumber;
2827
3263
  publishedAt: z.ZodString;
3264
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
2828
3265
  }, "strip", z.ZodTypeAny, {
2829
3266
  name: string;
2830
3267
  description: string;
2831
3268
  title: string;
2832
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3269
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3270
+ artifactUrl: string;
3271
+ sha256: string;
3272
+ latestVersion: string;
3273
+ categories: string[];
3274
+ keywords: string[];
3275
+ screenshots: {
3276
+ src: string;
3277
+ alt?: string | undefined;
3278
+ }[];
3279
+ size: number;
3280
+ publishedAt: string;
3281
+ minPluginApiVersion?: string | undefined;
3282
+ locales?: Record<string, Record<string, string>> | undefined;
3283
+ readmeMarkdown?: string | undefined;
3284
+ readmeSourceUrl?: string | undefined;
3285
+ minHostVersion?: string | undefined;
3286
+ author?: string | undefined;
3287
+ license?: string | undefined;
3288
+ repository?: string | undefined;
3289
+ homepage?: string | undefined;
3290
+ artifactManifestVersion?: 1 | undefined;
3291
+ }, {
3292
+ name: string;
3293
+ description: string;
3294
+ title: string;
3295
+ artifactUrl: string;
3296
+ sha256: string;
3297
+ latestVersion: string;
3298
+ size: number;
3299
+ publishedAt: string;
3300
+ minPluginApiVersion?: string | undefined;
3301
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3302
+ locales?: Record<string, Record<string, string>> | undefined;
3303
+ readmeMarkdown?: string | undefined;
3304
+ readmeSourceUrl?: string | undefined;
3305
+ minHostVersion?: string | undefined;
3306
+ author?: string | undefined;
3307
+ license?: string | undefined;
3308
+ repository?: string | undefined;
3309
+ homepage?: string | undefined;
3310
+ categories?: string[] | undefined;
3311
+ keywords?: string[] | undefined;
3312
+ screenshots?: {
3313
+ src: string;
3314
+ alt?: string | undefined;
3315
+ }[] | undefined;
3316
+ artifactManifestVersion?: 1 | undefined;
3317
+ }>, {
3318
+ name: string;
3319
+ description: string;
3320
+ title: string;
3321
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3322
+ artifactUrl: string;
3323
+ sha256: string;
3324
+ latestVersion: string;
3325
+ categories: string[];
3326
+ keywords: string[];
3327
+ screenshots: {
3328
+ src: string;
3329
+ alt?: string | undefined;
3330
+ }[];
3331
+ size: number;
3332
+ publishedAt: string;
3333
+ minPluginApiVersion?: string | undefined;
3334
+ locales?: Record<string, Record<string, string>> | undefined;
3335
+ readmeMarkdown?: string | undefined;
3336
+ readmeSourceUrl?: string | undefined;
3337
+ minHostVersion?: string | undefined;
3338
+ author?: string | undefined;
3339
+ license?: string | undefined;
3340
+ repository?: string | undefined;
3341
+ homepage?: string | undefined;
3342
+ artifactManifestVersion?: 1 | undefined;
3343
+ }, {
3344
+ name: string;
3345
+ description: string;
3346
+ title: string;
3347
+ artifactUrl: string;
3348
+ sha256: string;
3349
+ latestVersion: string;
3350
+ size: number;
3351
+ publishedAt: string;
3352
+ minPluginApiVersion?: string | undefined;
3353
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3354
+ locales?: Record<string, Record<string, string>> | undefined;
3355
+ readmeMarkdown?: string | undefined;
3356
+ readmeSourceUrl?: string | undefined;
3357
+ minHostVersion?: string | undefined;
3358
+ author?: string | undefined;
3359
+ license?: string | undefined;
3360
+ repository?: string | undefined;
3361
+ homepage?: string | undefined;
3362
+ categories?: string[] | undefined;
3363
+ keywords?: string[] | undefined;
3364
+ screenshots?: {
3365
+ src: string;
3366
+ alt?: string | undefined;
3367
+ }[] | undefined;
3368
+ artifactManifestVersion?: 1 | undefined;
3369
+ }>, {
3370
+ minPluginApiVersion: string;
3371
+ name: string;
3372
+ description: string;
3373
+ title: string;
3374
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
2833
3375
  artifactUrl: string;
2834
3376
  sha256: string;
2835
3377
  latestVersion: string;
2836
- minHostVersion: string;
2837
3378
  categories: string[];
2838
3379
  keywords: string[];
2839
3380
  screenshots: {
@@ -2843,10 +3384,13 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2843
3384
  size: number;
2844
3385
  publishedAt: string;
2845
3386
  locales?: Record<string, Record<string, string>> | undefined;
3387
+ readmeMarkdown?: string | undefined;
3388
+ readmeSourceUrl?: string | undefined;
2846
3389
  author?: string | undefined;
2847
3390
  license?: string | undefined;
2848
3391
  repository?: string | undefined;
2849
3392
  homepage?: string | undefined;
3393
+ artifactManifestVersion?: 1 | undefined;
2850
3394
  }, {
2851
3395
  name: string;
2852
3396
  description: string;
@@ -2854,11 +3398,14 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2854
3398
  artifactUrl: string;
2855
3399
  sha256: string;
2856
3400
  latestVersion: string;
2857
- minHostVersion: string;
2858
3401
  size: number;
2859
3402
  publishedAt: string;
2860
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3403
+ minPluginApiVersion?: string | undefined;
3404
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2861
3405
  locales?: Record<string, Record<string, string>> | undefined;
3406
+ readmeMarkdown?: string | undefined;
3407
+ readmeSourceUrl?: string | undefined;
3408
+ minHostVersion?: string | undefined;
2862
3409
  author?: string | undefined;
2863
3410
  license?: string | undefined;
2864
3411
  repository?: string | undefined;
@@ -2869,18 +3416,20 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2869
3416
  src: string;
2870
3417
  alt?: string | undefined;
2871
3418
  }[] | undefined;
3419
+ artifactManifestVersion?: 1 | undefined;
2872
3420
  }>, "many">;
2873
3421
  }, "strip", z.ZodTypeAny, {
3422
+ schemaVersion: 1;
2874
3423
  channel: "stable" | "nightly";
2875
3424
  plugins: {
3425
+ minPluginApiVersion: string;
2876
3426
  name: string;
2877
3427
  description: string;
2878
3428
  title: string;
2879
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3429
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
2880
3430
  artifactUrl: string;
2881
3431
  sha256: string;
2882
3432
  latestVersion: string;
2883
- minHostVersion: string;
2884
3433
  categories: string[];
2885
3434
  keywords: string[];
2886
3435
  screenshots: {
@@ -2890,14 +3439,17 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2890
3439
  size: number;
2891
3440
  publishedAt: string;
2892
3441
  locales?: Record<string, Record<string, string>> | undefined;
3442
+ readmeMarkdown?: string | undefined;
3443
+ readmeSourceUrl?: string | undefined;
2893
3444
  author?: string | undefined;
2894
3445
  license?: string | undefined;
2895
3446
  repository?: string | undefined;
2896
3447
  homepage?: string | undefined;
3448
+ artifactManifestVersion?: 1 | undefined;
2897
3449
  }[];
2898
- schemaVersion: number;
2899
3450
  generatedAt: string;
2900
3451
  }, {
3452
+ schemaVersion: 1;
2901
3453
  channel: "stable" | "nightly";
2902
3454
  plugins: {
2903
3455
  name: string;
@@ -2906,11 +3458,14 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2906
3458
  artifactUrl: string;
2907
3459
  sha256: string;
2908
3460
  latestVersion: string;
2909
- minHostVersion: string;
2910
3461
  size: number;
2911
3462
  publishedAt: string;
2912
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3463
+ minPluginApiVersion?: string | undefined;
3464
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2913
3465
  locales?: Record<string, Record<string, string>> | undefined;
3466
+ readmeMarkdown?: string | undefined;
3467
+ readmeSourceUrl?: string | undefined;
3468
+ minHostVersion?: string | undefined;
2914
3469
  author?: string | undefined;
2915
3470
  license?: string | undefined;
2916
3471
  repository?: string | undefined;
@@ -2921,53 +3476,774 @@ export declare const PluginMarketCatalogSchema: z.ZodObject<{
2921
3476
  src: string;
2922
3477
  alt?: string | undefined;
2923
3478
  }[] | undefined;
3479
+ artifactManifestVersion?: 1 | undefined;
2924
3480
  }[];
2925
- schemaVersion: number;
2926
3481
  generatedAt: string;
2927
- }>;
2928
- export type PluginMarketCatalog = z.infer<typeof PluginMarketCatalogSchema>;
2929
- export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
2930
- catalog: z.ZodObject<{
2931
- schemaVersion: z.ZodNumber;
2932
- generatedAt: z.ZodString;
2933
- channel: z.ZodEnum<["stable", "nightly"]>;
2934
- plugins: z.ZodArray<z.ZodObject<{
2935
- name: z.ZodString;
2936
- title: z.ZodString;
2937
- description: z.ZodString;
2938
- locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
2939
- latestVersion: z.ZodString;
2940
- minHostVersion: z.ZodString;
2941
- author: z.ZodOptional<z.ZodString>;
2942
- license: z.ZodOptional<z.ZodString>;
2943
- repository: z.ZodOptional<z.ZodString>;
2944
- homepage: z.ZodOptional<z.ZodString>;
2945
- categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2946
- keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
2947
- permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
2948
- screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
2949
- src: z.ZodString;
2950
- alt: z.ZodOptional<z.ZodString>;
2951
- }, "strip", z.ZodTypeAny, {
3482
+ }>, z.ZodObject<{
3483
+ schemaVersion: z.ZodLiteral<2>;
3484
+ generatedAt: z.ZodString;
3485
+ channel: z.ZodEnum<["stable", "nightly"]>;
3486
+ plugins: z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
3487
+ name: z.ZodString;
3488
+ title: z.ZodString;
3489
+ description: z.ZodString;
3490
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
3491
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
3492
+ locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
3493
+ latestVersion: z.ZodString;
3494
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
3495
+ /** Catalog schema v1 compatibility alias; normalized on read. */
3496
+ minHostVersion: z.ZodOptional<z.ZodString>;
3497
+ author: z.ZodOptional<z.ZodString>;
3498
+ license: z.ZodOptional<z.ZodString>;
3499
+ repository: z.ZodOptional<z.ZodString>;
3500
+ homepage: z.ZodOptional<z.ZodString>;
3501
+ categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3502
+ keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3503
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
3504
+ screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
3505
+ src: z.ZodString;
3506
+ alt: z.ZodOptional<z.ZodString>;
3507
+ }, "strip", z.ZodTypeAny, {
3508
+ src: string;
3509
+ alt?: string | undefined;
3510
+ }, {
3511
+ src: string;
3512
+ alt?: string | undefined;
3513
+ }>, "many">>>;
3514
+ artifactUrl: z.ZodString;
3515
+ sha256: z.ZodString;
3516
+ size: z.ZodNumber;
3517
+ publishedAt: z.ZodString;
3518
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
3519
+ }, "strip", z.ZodTypeAny, {
3520
+ name: string;
3521
+ description: string;
3522
+ title: string;
3523
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3524
+ artifactUrl: string;
3525
+ sha256: string;
3526
+ latestVersion: string;
3527
+ categories: string[];
3528
+ keywords: string[];
3529
+ screenshots: {
3530
+ src: string;
3531
+ alt?: string | undefined;
3532
+ }[];
3533
+ size: number;
3534
+ publishedAt: string;
3535
+ minPluginApiVersion?: string | undefined;
3536
+ locales?: Record<string, Record<string, string>> | undefined;
3537
+ readmeMarkdown?: string | undefined;
3538
+ readmeSourceUrl?: string | undefined;
3539
+ minHostVersion?: string | undefined;
3540
+ author?: string | undefined;
3541
+ license?: string | undefined;
3542
+ repository?: string | undefined;
3543
+ homepage?: string | undefined;
3544
+ artifactManifestVersion?: 1 | undefined;
3545
+ }, {
3546
+ name: string;
3547
+ description: string;
3548
+ title: string;
3549
+ artifactUrl: string;
3550
+ sha256: string;
3551
+ latestVersion: string;
3552
+ size: number;
3553
+ publishedAt: string;
3554
+ minPluginApiVersion?: string | undefined;
3555
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3556
+ locales?: Record<string, Record<string, string>> | undefined;
3557
+ readmeMarkdown?: string | undefined;
3558
+ readmeSourceUrl?: string | undefined;
3559
+ minHostVersion?: string | undefined;
3560
+ author?: string | undefined;
3561
+ license?: string | undefined;
3562
+ repository?: string | undefined;
3563
+ homepage?: string | undefined;
3564
+ categories?: string[] | undefined;
3565
+ keywords?: string[] | undefined;
3566
+ screenshots?: {
3567
+ src: string;
3568
+ alt?: string | undefined;
3569
+ }[] | undefined;
3570
+ artifactManifestVersion?: 1 | undefined;
3571
+ }>, {
3572
+ name: string;
3573
+ description: string;
3574
+ title: string;
3575
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3576
+ artifactUrl: string;
3577
+ sha256: string;
3578
+ latestVersion: string;
3579
+ categories: string[];
3580
+ keywords: string[];
3581
+ screenshots: {
3582
+ src: string;
3583
+ alt?: string | undefined;
3584
+ }[];
3585
+ size: number;
3586
+ publishedAt: string;
3587
+ minPluginApiVersion?: string | undefined;
3588
+ locales?: Record<string, Record<string, string>> | undefined;
3589
+ readmeMarkdown?: string | undefined;
3590
+ readmeSourceUrl?: string | undefined;
3591
+ minHostVersion?: string | undefined;
3592
+ author?: string | undefined;
3593
+ license?: string | undefined;
3594
+ repository?: string | undefined;
3595
+ homepage?: string | undefined;
3596
+ artifactManifestVersion?: 1 | undefined;
3597
+ }, {
3598
+ name: string;
3599
+ description: string;
3600
+ title: string;
3601
+ artifactUrl: string;
3602
+ sha256: string;
3603
+ latestVersion: string;
3604
+ size: number;
3605
+ publishedAt: string;
3606
+ minPluginApiVersion?: string | undefined;
3607
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3608
+ locales?: Record<string, Record<string, string>> | undefined;
3609
+ readmeMarkdown?: string | undefined;
3610
+ readmeSourceUrl?: string | undefined;
3611
+ minHostVersion?: string | undefined;
3612
+ author?: string | undefined;
3613
+ license?: string | undefined;
3614
+ repository?: string | undefined;
3615
+ homepage?: string | undefined;
3616
+ categories?: string[] | undefined;
3617
+ keywords?: string[] | undefined;
3618
+ screenshots?: {
3619
+ src: string;
3620
+ alt?: string | undefined;
3621
+ }[] | undefined;
3622
+ artifactManifestVersion?: 1 | undefined;
3623
+ }>, {
3624
+ name: string;
3625
+ description: string;
3626
+ title: string;
3627
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3628
+ artifactUrl: string;
3629
+ sha256: string;
3630
+ latestVersion: string;
3631
+ categories: string[];
3632
+ keywords: string[];
3633
+ screenshots: {
3634
+ src: string;
3635
+ alt?: string | undefined;
3636
+ }[];
3637
+ size: number;
3638
+ publishedAt: string;
3639
+ minPluginApiVersion?: string | undefined;
3640
+ locales?: Record<string, Record<string, string>> | undefined;
3641
+ readmeMarkdown?: string | undefined;
3642
+ readmeSourceUrl?: string | undefined;
3643
+ minHostVersion?: string | undefined;
3644
+ author?: string | undefined;
3645
+ license?: string | undefined;
3646
+ repository?: string | undefined;
3647
+ homepage?: string | undefined;
3648
+ artifactManifestVersion?: 1 | undefined;
3649
+ }, {
3650
+ name: string;
3651
+ description: string;
3652
+ title: string;
3653
+ artifactUrl: string;
3654
+ sha256: string;
3655
+ latestVersion: string;
3656
+ size: number;
3657
+ publishedAt: string;
3658
+ minPluginApiVersion?: string | undefined;
3659
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3660
+ locales?: Record<string, Record<string, string>> | undefined;
3661
+ readmeMarkdown?: string | undefined;
3662
+ readmeSourceUrl?: string | undefined;
3663
+ minHostVersion?: string | undefined;
3664
+ author?: string | undefined;
3665
+ license?: string | undefined;
3666
+ repository?: string | undefined;
3667
+ homepage?: string | undefined;
3668
+ categories?: string[] | undefined;
3669
+ keywords?: string[] | undefined;
3670
+ screenshots?: {
3671
+ src: string;
3672
+ alt?: string | undefined;
3673
+ }[] | undefined;
3674
+ artifactManifestVersion?: 1 | undefined;
3675
+ }>, {
3676
+ minPluginApiVersion: string;
3677
+ name: string;
3678
+ description: string;
3679
+ title: string;
3680
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3681
+ artifactUrl: string;
3682
+ sha256: string;
3683
+ latestVersion: string;
3684
+ categories: string[];
3685
+ keywords: string[];
3686
+ screenshots: {
3687
+ src: string;
3688
+ alt?: string | undefined;
3689
+ }[];
3690
+ size: number;
3691
+ publishedAt: string;
3692
+ locales?: Record<string, Record<string, string>> | undefined;
3693
+ readmeMarkdown?: string | undefined;
3694
+ readmeSourceUrl?: string | undefined;
3695
+ author?: string | undefined;
3696
+ license?: string | undefined;
3697
+ repository?: string | undefined;
3698
+ homepage?: string | undefined;
3699
+ artifactManifestVersion?: 1 | undefined;
3700
+ }, {
3701
+ name: string;
3702
+ description: string;
3703
+ title: string;
3704
+ artifactUrl: string;
3705
+ sha256: string;
3706
+ latestVersion: string;
3707
+ size: number;
3708
+ publishedAt: string;
3709
+ minPluginApiVersion?: string | undefined;
3710
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3711
+ locales?: Record<string, Record<string, string>> | undefined;
3712
+ readmeMarkdown?: string | undefined;
3713
+ readmeSourceUrl?: string | undefined;
3714
+ minHostVersion?: string | undefined;
3715
+ author?: string | undefined;
3716
+ license?: string | undefined;
3717
+ repository?: string | undefined;
3718
+ homepage?: string | undefined;
3719
+ categories?: string[] | undefined;
3720
+ keywords?: string[] | undefined;
3721
+ screenshots?: {
3722
+ src: string;
3723
+ alt?: string | undefined;
3724
+ }[] | undefined;
3725
+ artifactManifestVersion?: 1 | undefined;
3726
+ }>, "many">;
3727
+ }, "strip", z.ZodTypeAny, {
3728
+ schemaVersion: 2;
3729
+ channel: "stable" | "nightly";
3730
+ plugins: {
3731
+ minPluginApiVersion: string;
3732
+ name: string;
3733
+ description: string;
3734
+ title: string;
3735
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3736
+ artifactUrl: string;
3737
+ sha256: string;
3738
+ latestVersion: string;
3739
+ categories: string[];
3740
+ keywords: string[];
3741
+ screenshots: {
3742
+ src: string;
3743
+ alt?: string | undefined;
3744
+ }[];
3745
+ size: number;
3746
+ publishedAt: string;
3747
+ locales?: Record<string, Record<string, string>> | undefined;
3748
+ readmeMarkdown?: string | undefined;
3749
+ readmeSourceUrl?: string | undefined;
3750
+ author?: string | undefined;
3751
+ license?: string | undefined;
3752
+ repository?: string | undefined;
3753
+ homepage?: string | undefined;
3754
+ artifactManifestVersion?: 1 | undefined;
3755
+ }[];
3756
+ generatedAt: string;
3757
+ }, {
3758
+ schemaVersion: 2;
3759
+ channel: "stable" | "nightly";
3760
+ plugins: {
3761
+ name: string;
3762
+ description: string;
3763
+ title: string;
3764
+ artifactUrl: string;
3765
+ sha256: string;
3766
+ latestVersion: string;
3767
+ size: number;
3768
+ publishedAt: string;
3769
+ minPluginApiVersion?: string | undefined;
3770
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3771
+ locales?: Record<string, Record<string, string>> | undefined;
3772
+ readmeMarkdown?: string | undefined;
3773
+ readmeSourceUrl?: string | undefined;
3774
+ minHostVersion?: string | undefined;
3775
+ author?: string | undefined;
3776
+ license?: string | undefined;
3777
+ repository?: string | undefined;
3778
+ homepage?: string | undefined;
3779
+ categories?: string[] | undefined;
3780
+ keywords?: string[] | undefined;
3781
+ screenshots?: {
3782
+ src: string;
3783
+ alt?: string | undefined;
3784
+ }[] | undefined;
3785
+ artifactManifestVersion?: 1 | undefined;
3786
+ }[];
3787
+ generatedAt: string;
3788
+ }>]>;
3789
+ export type PluginMarketCatalog = z.infer<typeof PluginMarketCatalogSchema>;
3790
+ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3791
+ catalog: z.ZodDiscriminatedUnion<"schemaVersion", [z.ZodObject<{
3792
+ schemaVersion: z.ZodLiteral<1>;
3793
+ generatedAt: z.ZodString;
3794
+ channel: z.ZodEnum<["stable", "nightly"]>;
3795
+ plugins: z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodObject<{
3796
+ name: z.ZodString;
3797
+ title: z.ZodString;
3798
+ description: z.ZodString;
3799
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
3800
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
3801
+ locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
3802
+ latestVersion: z.ZodString;
3803
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
3804
+ /** Catalog schema v1 compatibility alias; normalized on read. */
3805
+ minHostVersion: z.ZodOptional<z.ZodString>;
3806
+ author: z.ZodOptional<z.ZodString>;
3807
+ license: z.ZodOptional<z.ZodString>;
3808
+ repository: z.ZodOptional<z.ZodString>;
3809
+ homepage: z.ZodOptional<z.ZodString>;
3810
+ categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3811
+ keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3812
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
3813
+ screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
3814
+ src: z.ZodString;
3815
+ alt: z.ZodOptional<z.ZodString>;
3816
+ }, "strip", z.ZodTypeAny, {
3817
+ src: string;
3818
+ alt?: string | undefined;
3819
+ }, {
3820
+ src: string;
3821
+ alt?: string | undefined;
3822
+ }>, "many">>>;
3823
+ artifactUrl: z.ZodString;
3824
+ sha256: z.ZodString;
3825
+ size: z.ZodNumber;
3826
+ publishedAt: z.ZodString;
3827
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
3828
+ }, "strip", z.ZodTypeAny, {
3829
+ name: string;
3830
+ description: string;
3831
+ title: string;
3832
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3833
+ artifactUrl: string;
3834
+ sha256: string;
3835
+ latestVersion: string;
3836
+ categories: string[];
3837
+ keywords: string[];
3838
+ screenshots: {
3839
+ src: string;
3840
+ alt?: string | undefined;
3841
+ }[];
3842
+ size: number;
3843
+ publishedAt: string;
3844
+ minPluginApiVersion?: string | undefined;
3845
+ locales?: Record<string, Record<string, string>> | undefined;
3846
+ readmeMarkdown?: string | undefined;
3847
+ readmeSourceUrl?: string | undefined;
3848
+ minHostVersion?: string | undefined;
3849
+ author?: string | undefined;
3850
+ license?: string | undefined;
3851
+ repository?: string | undefined;
3852
+ homepage?: string | undefined;
3853
+ artifactManifestVersion?: 1 | undefined;
3854
+ }, {
3855
+ name: string;
3856
+ description: string;
3857
+ title: string;
3858
+ artifactUrl: string;
3859
+ sha256: string;
3860
+ latestVersion: string;
3861
+ size: number;
3862
+ publishedAt: string;
3863
+ minPluginApiVersion?: string | undefined;
3864
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3865
+ locales?: Record<string, Record<string, string>> | undefined;
3866
+ readmeMarkdown?: string | undefined;
3867
+ readmeSourceUrl?: string | undefined;
3868
+ minHostVersion?: string | undefined;
3869
+ author?: string | undefined;
3870
+ license?: string | undefined;
3871
+ repository?: string | undefined;
3872
+ homepage?: string | undefined;
3873
+ categories?: string[] | undefined;
3874
+ keywords?: string[] | undefined;
3875
+ screenshots?: {
3876
+ src: string;
3877
+ alt?: string | undefined;
3878
+ }[] | undefined;
3879
+ artifactManifestVersion?: 1 | undefined;
3880
+ }>, {
3881
+ name: string;
3882
+ description: string;
3883
+ title: string;
3884
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3885
+ artifactUrl: string;
3886
+ sha256: string;
3887
+ latestVersion: string;
3888
+ categories: string[];
3889
+ keywords: string[];
3890
+ screenshots: {
3891
+ src: string;
3892
+ alt?: string | undefined;
3893
+ }[];
3894
+ size: number;
3895
+ publishedAt: string;
3896
+ minPluginApiVersion?: string | undefined;
3897
+ locales?: Record<string, Record<string, string>> | undefined;
3898
+ readmeMarkdown?: string | undefined;
3899
+ readmeSourceUrl?: string | undefined;
3900
+ minHostVersion?: string | undefined;
3901
+ author?: string | undefined;
3902
+ license?: string | undefined;
3903
+ repository?: string | undefined;
3904
+ homepage?: string | undefined;
3905
+ artifactManifestVersion?: 1 | undefined;
3906
+ }, {
3907
+ name: string;
3908
+ description: string;
3909
+ title: string;
3910
+ artifactUrl: string;
3911
+ sha256: string;
3912
+ latestVersion: string;
3913
+ size: number;
3914
+ publishedAt: string;
3915
+ minPluginApiVersion?: string | undefined;
3916
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3917
+ locales?: Record<string, Record<string, string>> | undefined;
3918
+ readmeMarkdown?: string | undefined;
3919
+ readmeSourceUrl?: string | undefined;
3920
+ minHostVersion?: string | undefined;
3921
+ author?: string | undefined;
3922
+ license?: string | undefined;
3923
+ repository?: string | undefined;
3924
+ homepage?: string | undefined;
3925
+ categories?: string[] | undefined;
3926
+ keywords?: string[] | undefined;
3927
+ screenshots?: {
3928
+ src: string;
3929
+ alt?: string | undefined;
3930
+ }[] | undefined;
3931
+ artifactManifestVersion?: 1 | undefined;
3932
+ }>, {
3933
+ minPluginApiVersion: string;
3934
+ name: string;
3935
+ description: string;
3936
+ title: string;
3937
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3938
+ artifactUrl: string;
3939
+ sha256: string;
3940
+ latestVersion: string;
3941
+ categories: string[];
3942
+ keywords: string[];
3943
+ screenshots: {
3944
+ src: string;
3945
+ alt?: string | undefined;
3946
+ }[];
3947
+ size: number;
3948
+ publishedAt: string;
3949
+ locales?: Record<string, Record<string, string>> | undefined;
3950
+ readmeMarkdown?: string | undefined;
3951
+ readmeSourceUrl?: string | undefined;
3952
+ author?: string | undefined;
3953
+ license?: string | undefined;
3954
+ repository?: string | undefined;
3955
+ homepage?: string | undefined;
3956
+ artifactManifestVersion?: 1 | undefined;
3957
+ }, {
3958
+ name: string;
3959
+ description: string;
3960
+ title: string;
3961
+ artifactUrl: string;
3962
+ sha256: string;
3963
+ latestVersion: string;
3964
+ size: number;
3965
+ publishedAt: string;
3966
+ minPluginApiVersion?: string | undefined;
3967
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3968
+ locales?: Record<string, Record<string, string>> | undefined;
3969
+ readmeMarkdown?: string | undefined;
3970
+ readmeSourceUrl?: string | undefined;
3971
+ minHostVersion?: string | undefined;
3972
+ author?: string | undefined;
3973
+ license?: string | undefined;
3974
+ repository?: string | undefined;
3975
+ homepage?: string | undefined;
3976
+ categories?: string[] | undefined;
3977
+ keywords?: string[] | undefined;
3978
+ screenshots?: {
3979
+ src: string;
3980
+ alt?: string | undefined;
3981
+ }[] | undefined;
3982
+ artifactManifestVersion?: 1 | undefined;
3983
+ }>, "many">;
3984
+ }, "strip", z.ZodTypeAny, {
3985
+ schemaVersion: 1;
3986
+ channel: "stable" | "nightly";
3987
+ plugins: {
3988
+ minPluginApiVersion: string;
3989
+ name: string;
3990
+ description: string;
3991
+ title: string;
3992
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3993
+ artifactUrl: string;
3994
+ sha256: string;
3995
+ latestVersion: string;
3996
+ categories: string[];
3997
+ keywords: string[];
3998
+ screenshots: {
3999
+ src: string;
4000
+ alt?: string | undefined;
4001
+ }[];
4002
+ size: number;
4003
+ publishedAt: string;
4004
+ locales?: Record<string, Record<string, string>> | undefined;
4005
+ readmeMarkdown?: string | undefined;
4006
+ readmeSourceUrl?: string | undefined;
4007
+ author?: string | undefined;
4008
+ license?: string | undefined;
4009
+ repository?: string | undefined;
4010
+ homepage?: string | undefined;
4011
+ artifactManifestVersion?: 1 | undefined;
4012
+ }[];
4013
+ generatedAt: string;
4014
+ }, {
4015
+ schemaVersion: 1;
4016
+ channel: "stable" | "nightly";
4017
+ plugins: {
4018
+ name: string;
4019
+ description: string;
4020
+ title: string;
4021
+ artifactUrl: string;
4022
+ sha256: string;
4023
+ latestVersion: string;
4024
+ size: number;
4025
+ publishedAt: string;
4026
+ minPluginApiVersion?: string | undefined;
4027
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4028
+ locales?: Record<string, Record<string, string>> | undefined;
4029
+ readmeMarkdown?: string | undefined;
4030
+ readmeSourceUrl?: string | undefined;
4031
+ minHostVersion?: string | undefined;
4032
+ author?: string | undefined;
4033
+ license?: string | undefined;
4034
+ repository?: string | undefined;
4035
+ homepage?: string | undefined;
4036
+ categories?: string[] | undefined;
4037
+ keywords?: string[] | undefined;
4038
+ screenshots?: {
4039
+ src: string;
4040
+ alt?: string | undefined;
4041
+ }[] | undefined;
4042
+ artifactManifestVersion?: 1 | undefined;
4043
+ }[];
4044
+ generatedAt: string;
4045
+ }>, z.ZodObject<{
4046
+ schemaVersion: z.ZodLiteral<2>;
4047
+ generatedAt: z.ZodString;
4048
+ channel: z.ZodEnum<["stable", "nightly"]>;
4049
+ plugins: z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
4050
+ name: z.ZodString;
4051
+ title: z.ZodString;
4052
+ description: z.ZodString;
4053
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
4054
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
4055
+ locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
4056
+ latestVersion: z.ZodString;
4057
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
4058
+ /** Catalog schema v1 compatibility alias; normalized on read. */
4059
+ minHostVersion: z.ZodOptional<z.ZodString>;
4060
+ author: z.ZodOptional<z.ZodString>;
4061
+ license: z.ZodOptional<z.ZodString>;
4062
+ repository: z.ZodOptional<z.ZodString>;
4063
+ homepage: z.ZodOptional<z.ZodString>;
4064
+ categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
4065
+ keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
4066
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
4067
+ screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
4068
+ src: z.ZodString;
4069
+ alt: z.ZodOptional<z.ZodString>;
4070
+ }, "strip", z.ZodTypeAny, {
4071
+ src: string;
4072
+ alt?: string | undefined;
4073
+ }, {
4074
+ src: string;
4075
+ alt?: string | undefined;
4076
+ }>, "many">>>;
4077
+ artifactUrl: z.ZodString;
4078
+ sha256: z.ZodString;
4079
+ size: z.ZodNumber;
4080
+ publishedAt: z.ZodString;
4081
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
4082
+ }, "strip", z.ZodTypeAny, {
4083
+ name: string;
4084
+ description: string;
4085
+ title: string;
4086
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4087
+ artifactUrl: string;
4088
+ sha256: string;
4089
+ latestVersion: string;
4090
+ categories: string[];
4091
+ keywords: string[];
4092
+ screenshots: {
4093
+ src: string;
4094
+ alt?: string | undefined;
4095
+ }[];
4096
+ size: number;
4097
+ publishedAt: string;
4098
+ minPluginApiVersion?: string | undefined;
4099
+ locales?: Record<string, Record<string, string>> | undefined;
4100
+ readmeMarkdown?: string | undefined;
4101
+ readmeSourceUrl?: string | undefined;
4102
+ minHostVersion?: string | undefined;
4103
+ author?: string | undefined;
4104
+ license?: string | undefined;
4105
+ repository?: string | undefined;
4106
+ homepage?: string | undefined;
4107
+ artifactManifestVersion?: 1 | undefined;
4108
+ }, {
4109
+ name: string;
4110
+ description: string;
4111
+ title: string;
4112
+ artifactUrl: string;
4113
+ sha256: string;
4114
+ latestVersion: string;
4115
+ size: number;
4116
+ publishedAt: string;
4117
+ minPluginApiVersion?: string | undefined;
4118
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4119
+ locales?: Record<string, Record<string, string>> | undefined;
4120
+ readmeMarkdown?: string | undefined;
4121
+ readmeSourceUrl?: string | undefined;
4122
+ minHostVersion?: string | undefined;
4123
+ author?: string | undefined;
4124
+ license?: string | undefined;
4125
+ repository?: string | undefined;
4126
+ homepage?: string | undefined;
4127
+ categories?: string[] | undefined;
4128
+ keywords?: string[] | undefined;
4129
+ screenshots?: {
4130
+ src: string;
4131
+ alt?: string | undefined;
4132
+ }[] | undefined;
4133
+ artifactManifestVersion?: 1 | undefined;
4134
+ }>, {
4135
+ name: string;
4136
+ description: string;
4137
+ title: string;
4138
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4139
+ artifactUrl: string;
4140
+ sha256: string;
4141
+ latestVersion: string;
4142
+ categories: string[];
4143
+ keywords: string[];
4144
+ screenshots: {
2952
4145
  src: string;
2953
4146
  alt?: string | undefined;
2954
- }, {
4147
+ }[];
4148
+ size: number;
4149
+ publishedAt: string;
4150
+ minPluginApiVersion?: string | undefined;
4151
+ locales?: Record<string, Record<string, string>> | undefined;
4152
+ readmeMarkdown?: string | undefined;
4153
+ readmeSourceUrl?: string | undefined;
4154
+ minHostVersion?: string | undefined;
4155
+ author?: string | undefined;
4156
+ license?: string | undefined;
4157
+ repository?: string | undefined;
4158
+ homepage?: string | undefined;
4159
+ artifactManifestVersion?: 1 | undefined;
4160
+ }, {
4161
+ name: string;
4162
+ description: string;
4163
+ title: string;
4164
+ artifactUrl: string;
4165
+ sha256: string;
4166
+ latestVersion: string;
4167
+ size: number;
4168
+ publishedAt: string;
4169
+ minPluginApiVersion?: string | undefined;
4170
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4171
+ locales?: Record<string, Record<string, string>> | undefined;
4172
+ readmeMarkdown?: string | undefined;
4173
+ readmeSourceUrl?: string | undefined;
4174
+ minHostVersion?: string | undefined;
4175
+ author?: string | undefined;
4176
+ license?: string | undefined;
4177
+ repository?: string | undefined;
4178
+ homepage?: string | undefined;
4179
+ categories?: string[] | undefined;
4180
+ keywords?: string[] | undefined;
4181
+ screenshots?: {
2955
4182
  src: string;
2956
4183
  alt?: string | undefined;
2957
- }>, "many">>>;
2958
- artifactUrl: z.ZodString;
2959
- sha256: z.ZodString;
2960
- size: z.ZodNumber;
2961
- publishedAt: z.ZodString;
2962
- }, "strip", z.ZodTypeAny, {
4184
+ }[] | undefined;
4185
+ artifactManifestVersion?: 1 | undefined;
4186
+ }>, {
4187
+ name: string;
4188
+ description: string;
4189
+ title: string;
4190
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4191
+ artifactUrl: string;
4192
+ sha256: string;
4193
+ latestVersion: string;
4194
+ categories: string[];
4195
+ keywords: string[];
4196
+ screenshots: {
4197
+ src: string;
4198
+ alt?: string | undefined;
4199
+ }[];
4200
+ size: number;
4201
+ publishedAt: string;
4202
+ minPluginApiVersion?: string | undefined;
4203
+ locales?: Record<string, Record<string, string>> | undefined;
4204
+ readmeMarkdown?: string | undefined;
4205
+ readmeSourceUrl?: string | undefined;
4206
+ minHostVersion?: string | undefined;
4207
+ author?: string | undefined;
4208
+ license?: string | undefined;
4209
+ repository?: string | undefined;
4210
+ homepage?: string | undefined;
4211
+ artifactManifestVersion?: 1 | undefined;
4212
+ }, {
4213
+ name: string;
4214
+ description: string;
4215
+ title: string;
4216
+ artifactUrl: string;
4217
+ sha256: string;
4218
+ latestVersion: string;
4219
+ size: number;
4220
+ publishedAt: string;
4221
+ minPluginApiVersion?: string | undefined;
4222
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4223
+ locales?: Record<string, Record<string, string>> | undefined;
4224
+ readmeMarkdown?: string | undefined;
4225
+ readmeSourceUrl?: string | undefined;
4226
+ minHostVersion?: string | undefined;
4227
+ author?: string | undefined;
4228
+ license?: string | undefined;
4229
+ repository?: string | undefined;
4230
+ homepage?: string | undefined;
4231
+ categories?: string[] | undefined;
4232
+ keywords?: string[] | undefined;
4233
+ screenshots?: {
4234
+ src: string;
4235
+ alt?: string | undefined;
4236
+ }[] | undefined;
4237
+ artifactManifestVersion?: 1 | undefined;
4238
+ }>, {
4239
+ minPluginApiVersion: string;
2963
4240
  name: string;
2964
4241
  description: string;
2965
4242
  title: string;
2966
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4243
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
2967
4244
  artifactUrl: string;
2968
4245
  sha256: string;
2969
4246
  latestVersion: string;
2970
- minHostVersion: string;
2971
4247
  categories: string[];
2972
4248
  keywords: string[];
2973
4249
  screenshots: {
@@ -2977,10 +4253,13 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
2977
4253
  size: number;
2978
4254
  publishedAt: string;
2979
4255
  locales?: Record<string, Record<string, string>> | undefined;
4256
+ readmeMarkdown?: string | undefined;
4257
+ readmeSourceUrl?: string | undefined;
2980
4258
  author?: string | undefined;
2981
4259
  license?: string | undefined;
2982
4260
  repository?: string | undefined;
2983
4261
  homepage?: string | undefined;
4262
+ artifactManifestVersion?: 1 | undefined;
2984
4263
  }, {
2985
4264
  name: string;
2986
4265
  description: string;
@@ -2988,11 +4267,14 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
2988
4267
  artifactUrl: string;
2989
4268
  sha256: string;
2990
4269
  latestVersion: string;
2991
- minHostVersion: string;
2992
4270
  size: number;
2993
4271
  publishedAt: string;
2994
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4272
+ minPluginApiVersion?: string | undefined;
4273
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
2995
4274
  locales?: Record<string, Record<string, string>> | undefined;
4275
+ readmeMarkdown?: string | undefined;
4276
+ readmeSourceUrl?: string | undefined;
4277
+ minHostVersion?: string | undefined;
2996
4278
  author?: string | undefined;
2997
4279
  license?: string | undefined;
2998
4280
  repository?: string | undefined;
@@ -3003,18 +4285,20 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3003
4285
  src: string;
3004
4286
  alt?: string | undefined;
3005
4287
  }[] | undefined;
4288
+ artifactManifestVersion?: 1 | undefined;
3006
4289
  }>, "many">;
3007
4290
  }, "strip", z.ZodTypeAny, {
4291
+ schemaVersion: 2;
3008
4292
  channel: "stable" | "nightly";
3009
4293
  plugins: {
4294
+ minPluginApiVersion: string;
3010
4295
  name: string;
3011
4296
  description: string;
3012
4297
  title: string;
3013
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4298
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3014
4299
  artifactUrl: string;
3015
4300
  sha256: string;
3016
4301
  latestVersion: string;
3017
- minHostVersion: string;
3018
4302
  categories: string[];
3019
4303
  keywords: string[];
3020
4304
  screenshots: {
@@ -3024,14 +4308,17 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3024
4308
  size: number;
3025
4309
  publishedAt: string;
3026
4310
  locales?: Record<string, Record<string, string>> | undefined;
4311
+ readmeMarkdown?: string | undefined;
4312
+ readmeSourceUrl?: string | undefined;
3027
4313
  author?: string | undefined;
3028
4314
  license?: string | undefined;
3029
4315
  repository?: string | undefined;
3030
4316
  homepage?: string | undefined;
4317
+ artifactManifestVersion?: 1 | undefined;
3031
4318
  }[];
3032
- schemaVersion: number;
3033
4319
  generatedAt: string;
3034
4320
  }, {
4321
+ schemaVersion: 2;
3035
4322
  channel: "stable" | "nightly";
3036
4323
  plugins: {
3037
4324
  name: string;
@@ -3040,11 +4327,14 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3040
4327
  artifactUrl: string;
3041
4328
  sha256: string;
3042
4329
  latestVersion: string;
3043
- minHostVersion: string;
3044
4330
  size: number;
3045
4331
  publishedAt: string;
3046
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4332
+ minPluginApiVersion?: string | undefined;
4333
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3047
4334
  locales?: Record<string, Record<string, string>> | undefined;
4335
+ readmeMarkdown?: string | undefined;
4336
+ readmeSourceUrl?: string | undefined;
4337
+ minHostVersion?: string | undefined;
3048
4338
  author?: string | undefined;
3049
4339
  license?: string | undefined;
3050
4340
  repository?: string | undefined;
@@ -3055,23 +4345,54 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3055
4345
  src: string;
3056
4346
  alt?: string | undefined;
3057
4347
  }[] | undefined;
4348
+ artifactManifestVersion?: 1 | undefined;
3058
4349
  }[];
3059
- schemaVersion: number;
3060
4350
  generatedAt: string;
3061
- }>;
4351
+ }>]>;
3062
4352
  sourceUrl: z.ZodString;
3063
4353
  }, "strip", z.ZodTypeAny, {
3064
4354
  catalog: {
4355
+ schemaVersion: 1;
4356
+ channel: "stable" | "nightly";
4357
+ plugins: {
4358
+ minPluginApiVersion: string;
4359
+ name: string;
4360
+ description: string;
4361
+ title: string;
4362
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4363
+ artifactUrl: string;
4364
+ sha256: string;
4365
+ latestVersion: string;
4366
+ categories: string[];
4367
+ keywords: string[];
4368
+ screenshots: {
4369
+ src: string;
4370
+ alt?: string | undefined;
4371
+ }[];
4372
+ size: number;
4373
+ publishedAt: string;
4374
+ locales?: Record<string, Record<string, string>> | undefined;
4375
+ readmeMarkdown?: string | undefined;
4376
+ readmeSourceUrl?: string | undefined;
4377
+ author?: string | undefined;
4378
+ license?: string | undefined;
4379
+ repository?: string | undefined;
4380
+ homepage?: string | undefined;
4381
+ artifactManifestVersion?: 1 | undefined;
4382
+ }[];
4383
+ generatedAt: string;
4384
+ } | {
4385
+ schemaVersion: 2;
3065
4386
  channel: "stable" | "nightly";
3066
4387
  plugins: {
4388
+ minPluginApiVersion: string;
3067
4389
  name: string;
3068
4390
  description: string;
3069
4391
  title: string;
3070
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4392
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3071
4393
  artifactUrl: string;
3072
4394
  sha256: string;
3073
4395
  latestVersion: string;
3074
- minHostVersion: string;
3075
4396
  categories: string[];
3076
4397
  keywords: string[];
3077
4398
  screenshots: {
@@ -3081,17 +4402,51 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3081
4402
  size: number;
3082
4403
  publishedAt: string;
3083
4404
  locales?: Record<string, Record<string, string>> | undefined;
4405
+ readmeMarkdown?: string | undefined;
4406
+ readmeSourceUrl?: string | undefined;
3084
4407
  author?: string | undefined;
3085
4408
  license?: string | undefined;
3086
4409
  repository?: string | undefined;
3087
4410
  homepage?: string | undefined;
4411
+ artifactManifestVersion?: 1 | undefined;
3088
4412
  }[];
3089
- schemaVersion: number;
3090
4413
  generatedAt: string;
3091
4414
  };
3092
4415
  sourceUrl: string;
3093
4416
  }, {
3094
4417
  catalog: {
4418
+ schemaVersion: 1;
4419
+ channel: "stable" | "nightly";
4420
+ plugins: {
4421
+ name: string;
4422
+ description: string;
4423
+ title: string;
4424
+ artifactUrl: string;
4425
+ sha256: string;
4426
+ latestVersion: string;
4427
+ size: number;
4428
+ publishedAt: string;
4429
+ minPluginApiVersion?: string | undefined;
4430
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4431
+ locales?: Record<string, Record<string, string>> | undefined;
4432
+ readmeMarkdown?: string | undefined;
4433
+ readmeSourceUrl?: string | undefined;
4434
+ minHostVersion?: string | undefined;
4435
+ author?: string | undefined;
4436
+ license?: string | undefined;
4437
+ repository?: string | undefined;
4438
+ homepage?: string | undefined;
4439
+ categories?: string[] | undefined;
4440
+ keywords?: string[] | undefined;
4441
+ screenshots?: {
4442
+ src: string;
4443
+ alt?: string | undefined;
4444
+ }[] | undefined;
4445
+ artifactManifestVersion?: 1 | undefined;
4446
+ }[];
4447
+ generatedAt: string;
4448
+ } | {
4449
+ schemaVersion: 2;
3095
4450
  channel: "stable" | "nightly";
3096
4451
  plugins: {
3097
4452
  name: string;
@@ -3100,11 +4455,14 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3100
4455
  artifactUrl: string;
3101
4456
  sha256: string;
3102
4457
  latestVersion: string;
3103
- minHostVersion: string;
3104
4458
  size: number;
3105
4459
  publishedAt: string;
3106
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4460
+ minPluginApiVersion?: string | undefined;
4461
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3107
4462
  locales?: Record<string, Record<string, string>> | undefined;
4463
+ readmeMarkdown?: string | undefined;
4464
+ readmeSourceUrl?: string | undefined;
4465
+ minHostVersion?: string | undefined;
3108
4466
  author?: string | undefined;
3109
4467
  license?: string | undefined;
3110
4468
  repository?: string | undefined;
@@ -3115,28 +4473,32 @@ export declare const PluginMarketCatalogResponseSchema: z.ZodObject<{
3115
4473
  src: string;
3116
4474
  alt?: string | undefined;
3117
4475
  }[] | undefined;
4476
+ artifactManifestVersion?: 1 | undefined;
3118
4477
  }[];
3119
- schemaVersion: number;
3120
4478
  generatedAt: string;
3121
4479
  };
3122
4480
  sourceUrl: string;
3123
4481
  }>;
3124
4482
  export type PluginMarketCatalogResponse = z.infer<typeof PluginMarketCatalogResponseSchema>;
3125
4483
  export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3126
- plugin: z.ZodObject<{
4484
+ plugin: z.ZodEffects<z.ZodEffects<z.ZodObject<{
3127
4485
  name: z.ZodString;
3128
4486
  title: z.ZodString;
3129
4487
  description: z.ZodString;
4488
+ readmeMarkdown: z.ZodOptional<z.ZodString>;
4489
+ readmeSourceUrl: z.ZodOptional<z.ZodString>;
3130
4490
  locales: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>;
3131
4491
  latestVersion: z.ZodString;
3132
- minHostVersion: z.ZodString;
4492
+ minPluginApiVersion: z.ZodOptional<z.ZodString>;
4493
+ /** Catalog schema v1 compatibility alias; normalized on read. */
4494
+ minHostVersion: z.ZodOptional<z.ZodString>;
3133
4495
  author: z.ZodOptional<z.ZodString>;
3134
4496
  license: z.ZodOptional<z.ZodString>;
3135
4497
  repository: z.ZodOptional<z.ZodString>;
3136
4498
  homepage: z.ZodOptional<z.ZodString>;
3137
4499
  categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3138
4500
  keywords: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
3139
- permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "host:hamlib", "radio:read", "radio:control", "radio:power", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
4501
+ permissions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "plugin:event-bus", "host:hamlib", "operator:transmit-control", "radio:read", "radio:control", "radio:tuner-control", "radio:power", "logbook:read", "logbook:write", "logbook:session", "logbook:sync", "settings:ft8", "settings:decode-windows", "settings:realtime", "settings:frequency-presets", "settings:station", "settings:psk-reporter", "settings:ntp"]>, "many">>>;
3140
4502
  screenshots: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
3141
4503
  src: z.ZodString;
3142
4504
  alt: z.ZodOptional<z.ZodString>;
@@ -3151,15 +4513,120 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3151
4513
  sha256: z.ZodString;
3152
4514
  size: z.ZodNumber;
3153
4515
  publishedAt: z.ZodString;
4516
+ artifactManifestVersion: z.ZodOptional<z.ZodLiteral<1>>;
3154
4517
  }, "strip", z.ZodTypeAny, {
3155
4518
  name: string;
3156
4519
  description: string;
3157
4520
  title: string;
3158
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4521
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4522
+ artifactUrl: string;
4523
+ sha256: string;
4524
+ latestVersion: string;
4525
+ categories: string[];
4526
+ keywords: string[];
4527
+ screenshots: {
4528
+ src: string;
4529
+ alt?: string | undefined;
4530
+ }[];
4531
+ size: number;
4532
+ publishedAt: string;
4533
+ minPluginApiVersion?: string | undefined;
4534
+ locales?: Record<string, Record<string, string>> | undefined;
4535
+ readmeMarkdown?: string | undefined;
4536
+ readmeSourceUrl?: string | undefined;
4537
+ minHostVersion?: string | undefined;
4538
+ author?: string | undefined;
4539
+ license?: string | undefined;
4540
+ repository?: string | undefined;
4541
+ homepage?: string | undefined;
4542
+ artifactManifestVersion?: 1 | undefined;
4543
+ }, {
4544
+ name: string;
4545
+ description: string;
4546
+ title: string;
4547
+ artifactUrl: string;
4548
+ sha256: string;
4549
+ latestVersion: string;
4550
+ size: number;
4551
+ publishedAt: string;
4552
+ minPluginApiVersion?: string | undefined;
4553
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4554
+ locales?: Record<string, Record<string, string>> | undefined;
4555
+ readmeMarkdown?: string | undefined;
4556
+ readmeSourceUrl?: string | undefined;
4557
+ minHostVersion?: string | undefined;
4558
+ author?: string | undefined;
4559
+ license?: string | undefined;
4560
+ repository?: string | undefined;
4561
+ homepage?: string | undefined;
4562
+ categories?: string[] | undefined;
4563
+ keywords?: string[] | undefined;
4564
+ screenshots?: {
4565
+ src: string;
4566
+ alt?: string | undefined;
4567
+ }[] | undefined;
4568
+ artifactManifestVersion?: 1 | undefined;
4569
+ }>, {
4570
+ name: string;
4571
+ description: string;
4572
+ title: string;
4573
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4574
+ artifactUrl: string;
4575
+ sha256: string;
4576
+ latestVersion: string;
4577
+ categories: string[];
4578
+ keywords: string[];
4579
+ screenshots: {
4580
+ src: string;
4581
+ alt?: string | undefined;
4582
+ }[];
4583
+ size: number;
4584
+ publishedAt: string;
4585
+ minPluginApiVersion?: string | undefined;
4586
+ locales?: Record<string, Record<string, string>> | undefined;
4587
+ readmeMarkdown?: string | undefined;
4588
+ readmeSourceUrl?: string | undefined;
4589
+ minHostVersion?: string | undefined;
4590
+ author?: string | undefined;
4591
+ license?: string | undefined;
4592
+ repository?: string | undefined;
4593
+ homepage?: string | undefined;
4594
+ artifactManifestVersion?: 1 | undefined;
4595
+ }, {
4596
+ name: string;
4597
+ description: string;
4598
+ title: string;
4599
+ artifactUrl: string;
4600
+ sha256: string;
4601
+ latestVersion: string;
4602
+ size: number;
4603
+ publishedAt: string;
4604
+ minPluginApiVersion?: string | undefined;
4605
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4606
+ locales?: Record<string, Record<string, string>> | undefined;
4607
+ readmeMarkdown?: string | undefined;
4608
+ readmeSourceUrl?: string | undefined;
4609
+ minHostVersion?: string | undefined;
4610
+ author?: string | undefined;
4611
+ license?: string | undefined;
4612
+ repository?: string | undefined;
4613
+ homepage?: string | undefined;
4614
+ categories?: string[] | undefined;
4615
+ keywords?: string[] | undefined;
4616
+ screenshots?: {
4617
+ src: string;
4618
+ alt?: string | undefined;
4619
+ }[] | undefined;
4620
+ artifactManifestVersion?: 1 | undefined;
4621
+ }>, {
4622
+ minPluginApiVersion: string;
4623
+ name: string;
4624
+ description: string;
4625
+ title: string;
4626
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3159
4627
  artifactUrl: string;
3160
4628
  sha256: string;
3161
4629
  latestVersion: string;
3162
- minHostVersion: string;
3163
4630
  categories: string[];
3164
4631
  keywords: string[];
3165
4632
  screenshots: {
@@ -3169,10 +4636,13 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3169
4636
  size: number;
3170
4637
  publishedAt: string;
3171
4638
  locales?: Record<string, Record<string, string>> | undefined;
4639
+ readmeMarkdown?: string | undefined;
4640
+ readmeSourceUrl?: string | undefined;
3172
4641
  author?: string | undefined;
3173
4642
  license?: string | undefined;
3174
4643
  repository?: string | undefined;
3175
4644
  homepage?: string | undefined;
4645
+ artifactManifestVersion?: 1 | undefined;
3176
4646
  }, {
3177
4647
  name: string;
3178
4648
  description: string;
@@ -3180,11 +4650,14 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3180
4650
  artifactUrl: string;
3181
4651
  sha256: string;
3182
4652
  latestVersion: string;
3183
- minHostVersion: string;
3184
4653
  size: number;
3185
4654
  publishedAt: string;
3186
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4655
+ minPluginApiVersion?: string | undefined;
4656
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3187
4657
  locales?: Record<string, Record<string, string>> | undefined;
4658
+ readmeMarkdown?: string | undefined;
4659
+ readmeSourceUrl?: string | undefined;
4660
+ minHostVersion?: string | undefined;
3188
4661
  author?: string | undefined;
3189
4662
  license?: string | undefined;
3190
4663
  repository?: string | undefined;
@@ -3195,6 +4668,7 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3195
4668
  src: string;
3196
4669
  alt?: string | undefined;
3197
4670
  }[] | undefined;
4671
+ artifactManifestVersion?: 1 | undefined;
3198
4672
  }>;
3199
4673
  sourceUrl: z.ZodString;
3200
4674
  channel: z.ZodEnum<["stable", "nightly"]>;
@@ -3202,14 +4676,14 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3202
4676
  channel: "stable" | "nightly";
3203
4677
  sourceUrl: string;
3204
4678
  plugin: {
4679
+ minPluginApiVersion: string;
3205
4680
  name: string;
3206
4681
  description: string;
3207
4682
  title: string;
3208
- permissions: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
4683
+ permissions: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[];
3209
4684
  artifactUrl: string;
3210
4685
  sha256: string;
3211
4686
  latestVersion: string;
3212
- minHostVersion: string;
3213
4687
  categories: string[];
3214
4688
  keywords: string[];
3215
4689
  screenshots: {
@@ -3219,10 +4693,13 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3219
4693
  size: number;
3220
4694
  publishedAt: string;
3221
4695
  locales?: Record<string, Record<string, string>> | undefined;
4696
+ readmeMarkdown?: string | undefined;
4697
+ readmeSourceUrl?: string | undefined;
3222
4698
  author?: string | undefined;
3223
4699
  license?: string | undefined;
3224
4700
  repository?: string | undefined;
3225
4701
  homepage?: string | undefined;
4702
+ artifactManifestVersion?: 1 | undefined;
3226
4703
  };
3227
4704
  }, {
3228
4705
  channel: "stable" | "nightly";
@@ -3234,11 +4711,14 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3234
4711
  artifactUrl: string;
3235
4712
  sha256: string;
3236
4713
  latestVersion: string;
3237
- minHostVersion: string;
3238
4714
  size: number;
3239
4715
  publishedAt: string;
3240
- permissions?: ("network" | "host:hamlib" | "radio:read" | "radio:control" | "radio:power" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
4716
+ minPluginApiVersion?: string | undefined;
4717
+ permissions?: ("network" | "plugin:event-bus" | "host:hamlib" | "operator:transmit-control" | "radio:read" | "radio:control" | "radio:tuner-control" | "radio:power" | "logbook:read" | "logbook:write" | "logbook:session" | "logbook:sync" | "settings:ft8" | "settings:decode-windows" | "settings:realtime" | "settings:frequency-presets" | "settings:station" | "settings:psk-reporter" | "settings:ntp")[] | undefined;
3241
4718
  locales?: Record<string, Record<string, string>> | undefined;
4719
+ readmeMarkdown?: string | undefined;
4720
+ readmeSourceUrl?: string | undefined;
4721
+ minHostVersion?: string | undefined;
3242
4722
  author?: string | undefined;
3243
4723
  license?: string | undefined;
3244
4724
  repository?: string | undefined;
@@ -3249,6 +4729,7 @@ export declare const PluginMarketCatalogEntryResponseSchema: z.ZodObject<{
3249
4729
  src: string;
3250
4730
  alt?: string | undefined;
3251
4731
  }[] | undefined;
4732
+ artifactManifestVersion?: 1 | undefined;
3252
4733
  };
3253
4734
  }>;
3254
4735
  export type PluginMarketCatalogEntryResponse = z.infer<typeof PluginMarketCatalogEntryResponseSchema>;
@@ -3330,30 +4811,34 @@ export declare const PluginsConfigSchema: z.ZodObject<{
3330
4811
  enabled: z.ZodBoolean;
3331
4812
  settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3332
4813
  }, "strip", z.ZodTypeAny, {
3333
- enabled: boolean;
3334
4814
  settings: Record<string, unknown>;
3335
- }, {
3336
4815
  enabled: boolean;
4816
+ }, {
3337
4817
  settings: Record<string, unknown>;
4818
+ enabled: boolean;
3338
4819
  }>>>>;
3339
4820
  /** 每操作员的策略插件选择 */
3340
4821
  operatorStrategies: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>>;
3341
4822
  /** 每操作员的 operator scope plugin settings:operatorId → pluginName → settings */
3342
4823
  operatorSettings: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>>>>>;
4824
+ /** 每操作员暂停的 transmit-control 插件:operatorId → pluginName[] */
4825
+ operatorPluginPauses: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>>;
3343
4826
  }, "strip", z.ZodTypeAny, {
3344
4827
  configs: Record<string, {
3345
- enabled: boolean;
3346
4828
  settings: Record<string, unknown>;
4829
+ enabled: boolean;
3347
4830
  }>;
3348
4831
  operatorStrategies: Record<string, string>;
3349
4832
  operatorSettings: Record<string, Record<string, Record<string, unknown>>>;
4833
+ operatorPluginPauses: Record<string, string[]>;
3350
4834
  }, {
3351
4835
  configs?: Record<string, {
3352
- enabled: boolean;
3353
4836
  settings: Record<string, unknown>;
4837
+ enabled: boolean;
3354
4838
  }> | undefined;
3355
4839
  operatorStrategies?: Record<string, string> | undefined;
3356
4840
  operatorSettings?: Record<string, Record<string, Record<string, unknown>>> | undefined;
4841
+ operatorPluginPauses?: Record<string, string[]> | undefined;
3357
4842
  }>;
3358
4843
  export type PluginsConfig = z.infer<typeof PluginsConfigSchema>;
3359
4844
  /**
@@ -3388,14 +4873,14 @@ export declare const PluginLogEntrySchema: z.ZodObject<{
3388
4873
  }, "strip", z.ZodTypeAny, {
3389
4874
  message: string;
3390
4875
  timestamp: number;
3391
- pluginName: string;
3392
4876
  level: "error" | "info" | "debug" | "warn";
4877
+ pluginName: string;
3393
4878
  data?: unknown;
3394
4879
  }, {
3395
4880
  message: string;
3396
4881
  timestamp: number;
3397
- pluginName: string;
3398
4882
  level: "error" | "info" | "debug" | "warn";
4883
+ pluginName: string;
3399
4884
  data?: unknown;
3400
4885
  }>;
3401
4886
  export type PluginLogEntry = z.infer<typeof PluginLogEntrySchema>;
@@ -3416,8 +4901,8 @@ export declare const PluginRuntimeLogEntrySchema: z.ZodObject<{
3416
4901
  }, "strip", z.ZodTypeAny, {
3417
4902
  message: string;
3418
4903
  timestamp: number;
3419
- source: "system";
3420
4904
  level: "error" | "info" | "debug" | "warn";
4905
+ source: "system";
3421
4906
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3422
4907
  pluginName?: string | undefined;
3423
4908
  directoryName?: string | undefined;
@@ -3425,8 +4910,8 @@ export declare const PluginRuntimeLogEntrySchema: z.ZodObject<{
3425
4910
  }, {
3426
4911
  message: string;
3427
4912
  timestamp: number;
3428
- source: "system";
3429
4913
  level: "error" | "info" | "debug" | "warn";
4914
+ source: "system";
3430
4915
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3431
4916
  pluginName?: string | undefined;
3432
4917
  directoryName?: string | undefined;
@@ -3445,8 +4930,8 @@ export declare const PluginLogHistoryEntrySchema: z.ZodUnion<[z.ZodObject<{
3445
4930
  }, "strip", z.ZodTypeAny, {
3446
4931
  message: string;
3447
4932
  timestamp: number;
3448
- source: "system";
3449
4933
  level: "error" | "info" | "debug" | "warn";
4934
+ source: "system";
3450
4935
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3451
4936
  pluginName?: string | undefined;
3452
4937
  directoryName?: string | undefined;
@@ -3454,8 +4939,8 @@ export declare const PluginLogHistoryEntrySchema: z.ZodUnion<[z.ZodObject<{
3454
4939
  }, {
3455
4940
  message: string;
3456
4941
  timestamp: number;
3457
- source: "system";
3458
4942
  level: "error" | "info" | "debug" | "warn";
4943
+ source: "system";
3459
4944
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3460
4945
  pluginName?: string | undefined;
3461
4946
  directoryName?: string | undefined;
@@ -3469,14 +4954,14 @@ export declare const PluginLogHistoryEntrySchema: z.ZodUnion<[z.ZodObject<{
3469
4954
  }, "strip", z.ZodTypeAny, {
3470
4955
  message: string;
3471
4956
  timestamp: number;
3472
- pluginName: string;
3473
4957
  level: "error" | "info" | "debug" | "warn";
4958
+ pluginName: string;
3474
4959
  data?: unknown;
3475
4960
  }, {
3476
4961
  message: string;
3477
4962
  timestamp: number;
3478
- pluginName: string;
3479
4963
  level: "error" | "info" | "debug" | "warn";
4964
+ pluginName: string;
3480
4965
  data?: unknown;
3481
4966
  }>]>;
3482
4967
  export type PluginLogHistoryEntry = z.infer<typeof PluginLogHistoryEntrySchema>;
@@ -3496,8 +4981,8 @@ export declare const PluginRuntimeLogHistoryPayloadSchema: z.ZodObject<{
3496
4981
  }, "strip", z.ZodTypeAny, {
3497
4982
  message: string;
3498
4983
  timestamp: number;
3499
- source: "system";
3500
4984
  level: "error" | "info" | "debug" | "warn";
4985
+ source: "system";
3501
4986
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3502
4987
  pluginName?: string | undefined;
3503
4988
  directoryName?: string | undefined;
@@ -3505,8 +4990,8 @@ export declare const PluginRuntimeLogHistoryPayloadSchema: z.ZodObject<{
3505
4990
  }, {
3506
4991
  message: string;
3507
4992
  timestamp: number;
3508
- source: "system";
3509
4993
  level: "error" | "info" | "debug" | "warn";
4994
+ source: "system";
3510
4995
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3511
4996
  pluginName?: string | undefined;
3512
4997
  directoryName?: string | undefined;
@@ -3520,28 +5005,28 @@ export declare const PluginRuntimeLogHistoryPayloadSchema: z.ZodObject<{
3520
5005
  }, "strip", z.ZodTypeAny, {
3521
5006
  message: string;
3522
5007
  timestamp: number;
3523
- pluginName: string;
3524
5008
  level: "error" | "info" | "debug" | "warn";
5009
+ pluginName: string;
3525
5010
  data?: unknown;
3526
5011
  }, {
3527
5012
  message: string;
3528
5013
  timestamp: number;
3529
- pluginName: string;
3530
5014
  level: "error" | "info" | "debug" | "warn";
5015
+ pluginName: string;
3531
5016
  data?: unknown;
3532
5017
  }>]>, "many">;
3533
5018
  }, "strip", z.ZodTypeAny, {
3534
5019
  entries: ({
3535
5020
  message: string;
3536
5021
  timestamp: number;
3537
- pluginName: string;
3538
5022
  level: "error" | "info" | "debug" | "warn";
5023
+ pluginName: string;
3539
5024
  data?: unknown;
3540
5025
  } | {
3541
5026
  message: string;
3542
5027
  timestamp: number;
3543
- source: "system";
3544
5028
  level: "error" | "info" | "debug" | "warn";
5029
+ source: "system";
3545
5030
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3546
5031
  pluginName?: string | undefined;
3547
5032
  directoryName?: string | undefined;
@@ -3551,14 +5036,14 @@ export declare const PluginRuntimeLogHistoryPayloadSchema: z.ZodObject<{
3551
5036
  entries: ({
3552
5037
  message: string;
3553
5038
  timestamp: number;
3554
- pluginName: string;
3555
5039
  level: "error" | "info" | "debug" | "warn";
5040
+ pluginName: string;
3556
5041
  data?: unknown;
3557
5042
  } | {
3558
5043
  message: string;
3559
5044
  timestamp: number;
3560
- source: "system";
3561
5045
  level: "error" | "info" | "debug" | "warn";
5046
+ source: "system";
3562
5047
  stage: "scan" | "load" | "validate" | "reload" | "activate";
3563
5048
  pluginName?: string | undefined;
3564
5049
  directoryName?: string | undefined;
@@ -3595,12 +5080,12 @@ export declare const PluginOperatorSettingsPayloadSchema: z.ZodObject<{
3595
5080
  settings: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3596
5081
  }, "strip", z.ZodTypeAny, {
3597
5082
  operatorId: string;
3598
- pluginName: string;
3599
5083
  settings: Record<string, unknown>;
5084
+ pluginName: string;
3600
5085
  }, {
3601
5086
  operatorId: string;
3602
- pluginName: string;
3603
5087
  settings: Record<string, unknown>;
5088
+ pluginName: string;
3604
5089
  }>;
3605
5090
  export type PluginOperatorSettingsPayload = z.infer<typeof PluginOperatorSettingsPayloadSchema>;
3606
5091
  //# sourceMappingURL=plugin.schema.d.ts.map