camstreamerlib 4.0.36 → 5.0.0-54e362c

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 (110) hide show
  1. package/README.md +21 -2
  2. package/cjs/CamOverlayAPI.d.ts +223 -208
  3. package/cjs/CamStreamerAPI.d.ts +330 -311
  4. package/cjs/CamStreamerAPI.js +1 -1
  5. package/cjs/CamSwitcherAPI.d.ts +31 -30
  6. package/cjs/CamSwitcherAPI.js +2 -0
  7. package/cjs/PlaneTrackerAPI.d.ts +103 -40
  8. package/cjs/VapixAPI.d.ts +31 -17
  9. package/cjs/VapixAPI.js +1 -1
  10. package/cjs/errors/errors.d.ts +1 -1
  11. package/cjs/errors/errors.js +2 -2
  12. package/cjs/internal/versionCompare.d.ts +2 -2
  13. package/cjs/node/events/AxisCameraStationEvents.js +2 -1
  14. package/cjs/types/CamOverlayAPI/CamOverlayAPI.d.ts +477 -3812
  15. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +2 -2
  16. package/cjs/types/CamOverlayAPI/accuweatherSchema.d.ts +12 -67
  17. package/cjs/types/CamOverlayAPI/customGraphicsSchema.d.ts +40 -572
  18. package/cjs/types/CamOverlayAPI/htmlOverlaySchema.d.ts +6 -59
  19. package/cjs/types/CamOverlayAPI/htmlOverlaySchema.js +1 -1
  20. package/cjs/types/CamOverlayAPI/imagesSchema.d.ts +6 -75
  21. package/cjs/types/CamOverlayAPI/infotickerSchema.d.ts +11 -74
  22. package/cjs/types/CamOverlayAPI/pipSchema.d.ts +12 -97
  23. package/cjs/types/CamOverlayAPI/pipSchema.js +2 -2
  24. package/cjs/types/CamOverlayAPI/ptzCompassSchema.d.ts +12 -71
  25. package/cjs/types/CamOverlayAPI/ptzCompassSchema.js +1 -1
  26. package/cjs/types/CamOverlayAPI/ptzSchema.d.ts +8 -99
  27. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +20 -254
  28. package/cjs/types/CamOverlayAPI/screenSharingSchema.d.ts +5 -43
  29. package/cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts +15 -94
  30. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.d.ts +5 -43
  31. package/cjs/types/CamScripterAPI.d.ts +11 -81
  32. package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +1409 -22709
  33. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +32 -509
  34. package/cjs/types/CamStreamerAPI/oldStreamSchema.d.ts +8 -143
  35. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +32 -493
  36. package/cjs/types/CamStreamerAPI/streamsSchema.d.ts +425 -7786
  37. package/cjs/types/CamStreamerAPI/windySchema.d.ts +36 -476
  38. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +32 -487
  39. package/cjs/types/CamStreamerAPI/youtubeSchema.js +1 -1
  40. package/cjs/types/CamSwitcherAPI.d.ts +75 -700
  41. package/cjs/types/CamSwitcherAPI.js +1 -0
  42. package/cjs/types/GenetecAgent.d.ts +12 -132
  43. package/cjs/types/MilestoneAgent.d.ts +4 -46
  44. package/cjs/types/PlaneTrackerAPI.d.ts +266 -1188
  45. package/cjs/types/PlaneTrackerAPI.js +16 -6
  46. package/cjs/types/PlaneTrackerAPI.test.js +27 -0
  47. package/cjs/types/VapixAPI.d.ts +129 -1653
  48. package/cjs/types/VapixAPI.js +1 -1
  49. package/cjs/types/common.d.ts +11 -35
  50. package/cjs/types/common.js +1 -1
  51. package/cjs/types/ws/CamOverlayEvents.d.ts +9 -69
  52. package/cjs/types/ws/CamStreamerEvents.d.ts +19 -217
  53. package/cjs/types/ws/CamSwitcherEvents.d.ts +46 -452
  54. package/cjs/types/ws/PlaneTrackerEvents.d.ts +361 -3522
  55. package/cjs/types/ws/PlaneTrackerEvents.js +1 -1
  56. package/esm/CamStreamerAPI.js +1 -1
  57. package/esm/CamSwitcherAPI.js +2 -0
  58. package/esm/VapixAPI.js +1 -1
  59. package/esm/errors/errors.js +2 -2
  60. package/esm/node/events/AxisCameraStationEvents.js +2 -1
  61. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +2 -2
  62. package/esm/types/CamOverlayAPI/htmlOverlaySchema.js +1 -1
  63. package/esm/types/CamOverlayAPI/pipSchema.js +2 -2
  64. package/esm/types/CamOverlayAPI/ptzCompassSchema.js +1 -1
  65. package/esm/types/CamStreamerAPI/youtubeSchema.js +1 -1
  66. package/esm/types/CamSwitcherAPI.js +1 -0
  67. package/esm/types/PlaneTrackerAPI.js +16 -6
  68. package/esm/types/PlaneTrackerAPI.test.js +27 -0
  69. package/esm/types/VapixAPI.js +1 -1
  70. package/esm/types/common.js +1 -1
  71. package/esm/types/ws/PlaneTrackerEvents.js +1 -1
  72. package/package.json +107 -107
  73. package/types/CamOverlayAPI.d.ts +223 -208
  74. package/types/CamStreamerAPI.d.ts +330 -311
  75. package/types/CamSwitcherAPI.d.ts +31 -30
  76. package/types/PlaneTrackerAPI.d.ts +103 -40
  77. package/types/VapixAPI.d.ts +31 -17
  78. package/types/errors/errors.d.ts +1 -1
  79. package/types/internal/versionCompare.d.ts +2 -2
  80. package/types/types/CamOverlayAPI/CamOverlayAPI.d.ts +477 -3812
  81. package/types/types/CamOverlayAPI/accuweatherSchema.d.ts +12 -67
  82. package/types/types/CamOverlayAPI/customGraphicsSchema.d.ts +40 -572
  83. package/types/types/CamOverlayAPI/htmlOverlaySchema.d.ts +6 -59
  84. package/types/types/CamOverlayAPI/imagesSchema.d.ts +6 -75
  85. package/types/types/CamOverlayAPI/infotickerSchema.d.ts +11 -74
  86. package/types/types/CamOverlayAPI/pipSchema.d.ts +12 -97
  87. package/types/types/CamOverlayAPI/ptzCompassSchema.d.ts +12 -71
  88. package/types/types/CamOverlayAPI/ptzSchema.d.ts +8 -99
  89. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +20 -254
  90. package/types/types/CamOverlayAPI/screenSharingSchema.d.ts +5 -43
  91. package/types/types/CamOverlayAPI/serviceCommonTypes.d.ts +15 -94
  92. package/types/types/CamOverlayAPI/webCameraSharingSchema.d.ts +5 -43
  93. package/types/types/CamScripterAPI.d.ts +11 -81
  94. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +1409 -22709
  95. package/types/types/CamStreamerAPI/facebookSchema.d.ts +32 -509
  96. package/types/types/CamStreamerAPI/oldStreamSchema.d.ts +8 -143
  97. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +32 -493
  98. package/types/types/CamStreamerAPI/streamsSchema.d.ts +425 -7786
  99. package/types/types/CamStreamerAPI/windySchema.d.ts +36 -476
  100. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +32 -487
  101. package/types/types/CamSwitcherAPI.d.ts +75 -700
  102. package/types/types/GenetecAgent.d.ts +12 -132
  103. package/types/types/MilestoneAgent.d.ts +4 -46
  104. package/types/types/PlaneTrackerAPI.d.ts +266 -1188
  105. package/types/types/VapixAPI.d.ts +129 -1653
  106. package/types/types/common.d.ts +11 -35
  107. package/types/types/ws/CamOverlayEvents.d.ts +9 -69
  108. package/types/types/ws/CamStreamerEvents.d.ts +19 -217
  109. package/types/types/ws/CamSwitcherEvents.d.ts +46 -452
  110. package/types/types/ws/PlaneTrackerEvents.d.ts +361 -3522
@@ -101,7 +101,7 @@ class CamStreamerAPI extends BasicAPI_1.BasicAPI {
101
101
  if (newStream.success) {
102
102
  return newStream.data;
103
103
  }
104
- const oldStream = oldStreamSchema_1.oldStringStreamSchema.passthrough().parse(res.data);
104
+ const oldStream = oldStreamSchema_1.oldStringStreamSchema.loose().parse(res.data);
105
105
  throw new errors_1.MigrationError([], [{ streamId, ...(0, exports.parseCameraStreamResponse)(oldStream) }], [], []);
106
106
  }
107
107
  async setStream(streamId, streamData, options) {
@@ -21,27 +21,27 @@ export declare class CamSwitcherAPI<Client extends IClient<TResponse, any>> exte
21
21
  generateSilence(sampleRate: number, channels: TAudioChannel, options?: THttpRequestOptions): Promise<void>;
22
22
  getMaxFps(source: number, options?: THttpRequestOptions): Promise<number>;
23
23
  getStorageInfo(options?: THttpRequestOptions): Promise<{
24
- size: number;
25
24
  storage: "FLASH" | "SD_DISK";
26
25
  writable: boolean;
26
+ size: number;
27
27
  available: number;
28
28
  }[]>;
29
29
  wsAuthorization(options?: THttpRequestOptions): Promise<string>;
30
30
  getOutputInfo(options?: THttpRequestOptions): Promise<{
31
+ rtspUrl: string;
31
32
  ws: string;
32
33
  wsInitialMessage: string;
33
- rtspUrl: string;
34
34
  }>;
35
35
  getAudioPushInfo(options?: THttpRequestOptions): Promise<{
36
36
  ws: string;
37
37
  wsInitialMessage: string;
38
38
  }>;
39
39
  getStreamSaveList(options?: THttpRequestOptions): Promise<Record<string, {
40
- ip?: string | undefined;
41
- enabled?: boolean | undefined;
42
- port?: number | undefined;
43
40
  niceName?: string | undefined;
41
+ ip?: string | undefined;
44
42
  mdnsName?: string | undefined;
43
+ port?: number | undefined;
44
+ enabled?: boolean | undefined;
45
45
  auth?: string | undefined;
46
46
  query?: string | undefined;
47
47
  channel?: "video" | "audio" | "av" | undefined;
@@ -56,57 +56,57 @@ export declare class CamSwitcherAPI<Client extends IClient<TResponse, any>> exte
56
56
  sortIndexOverview?: number | undefined;
57
57
  }>>;
58
58
  getPlaylistSaveList(options?: THttpRequestOptions): Promise<Record<string, {
59
- niceName?: string | undefined;
60
59
  channel?: "video" | "audio" | "av" | undefined;
61
- keyboard?: Record<string, string | null> | undefined;
62
- sortIndexOverview?: number | undefined;
63
60
  isFavourite?: boolean | undefined;
61
+ keyboard?: Record<string, string | null> | undefined;
62
+ niceName?: string | undefined;
64
63
  sortIndexFavourite?: number | undefined;
64
+ sortIndexOverview?: number | undefined;
65
65
  play_type?: "PLAY_ALL" | "PLAY_ALL_LOOP" | "PLAY_ALL_SHUFFLED" | "PLAY_ALL_LOOP_SHUFFLED" | "PLAY_ONE_RANDOM" | undefined;
66
66
  default?: boolean | undefined;
67
67
  stream_list?: {
68
+ id: string;
69
+ isTimeoutCustom: boolean;
70
+ ptz_preset_pos_name: string;
68
71
  repeat: number;
72
+ timeout: number;
69
73
  video: {
70
- storage?: "FLASH" | "SD_DISK" | undefined;
71
74
  stream_name?: string | undefined;
72
75
  clip_name?: string | undefined;
73
76
  tracker_name?: string | undefined;
77
+ storage?: "FLASH" | "SD_DISK" | undefined;
74
78
  };
75
- id: string;
76
- isTimeoutCustom: boolean;
77
- ptz_preset_pos_name: string;
78
- timeout: number;
79
79
  audio?: {
80
- storage?: "FLASH" | "SD_DISK" | undefined;
81
80
  stream_name?: string | undefined;
82
81
  clip_name?: string | undefined;
83
82
  tracker_name?: string | undefined;
83
+ storage?: "FLASH" | "SD_DISK" | undefined;
84
84
  } | undefined;
85
85
  }[] | undefined;
86
86
  }>>;
87
87
  getTrackerSaveList(options?: THttpRequestOptions): Promise<Record<string, {
88
- name?: string | undefined;
89
- fps?: number | undefined;
90
88
  id?: string | undefined;
91
- width?: number | undefined;
92
- height?: number | undefined;
89
+ name?: string | undefined;
90
+ previewId?: string | undefined;
93
91
  duration?: number | undefined;
94
- channel?: "video" | "audio" | "av" | undefined;
95
92
  keyboard?: Record<string, string | null> | undefined;
93
+ channel?: "video" | "audio" | "av" | undefined;
96
94
  sortIndexOverview?: number | undefined;
97
- viewNumber?: number | undefined;
98
- previewId?: string | undefined;
95
+ width?: number | undefined;
96
+ height?: number | undefined;
97
+ fps?: number | undefined;
99
98
  motion_history_frames?: number | undefined;
100
99
  include_zone?: number[][] | undefined;
101
100
  include_node_ids?: string[] | undefined;
102
101
  camera_list?: {
103
- name: string;
104
102
  id: string;
103
+ name: string;
105
104
  overview: boolean;
106
105
  zone: number[];
107
106
  playlist_name: string;
108
107
  ptz_preset_pos_no: number;
109
108
  }[] | undefined;
109
+ viewNumber?: number | undefined;
110
110
  camera_view_number?: number | undefined;
111
111
  }>>;
112
112
  setStreamSaveList(data: TStreamSaveList, options?: THttpRequestOptions): Promise<void>;
@@ -125,13 +125,13 @@ export declare class CamSwitcherAPI<Client extends IClient<TResponse, any>> exte
125
125
  duration: number;
126
126
  stream_list: ({
127
127
  type: "video";
128
- fps: number;
129
128
  width: number;
130
129
  height: number;
131
130
  sample_rate: number;
132
131
  h264_profile: "high" | "main" | "baseline";
133
132
  h264_level: "4.1";
134
133
  gop: number;
134
+ fps: number;
135
135
  bitrate: number;
136
136
  } | {
137
137
  type: "audio";
@@ -145,22 +145,23 @@ export declare class CamSwitcherAPI<Client extends IClient<TResponse, any>> exte
145
145
  setDefaultPlaylist(playlistId: string, options?: THttpRequestOptions): Promise<void>;
146
146
  setPermanentRtspUrlToken(token: string, options?: THttpRequestOptions): Promise<void>;
147
147
  getCamSwitchOptions(options?: THttpRequestOptions): Promise<{
148
- resolution?: string | undefined;
149
- compression?: number | undefined;
150
148
  bitrateMode?: "VBR" | "MBR" | "ABR" | undefined;
151
149
  maximumBitRate?: number | undefined;
152
150
  retentionTime?: number | undefined;
153
151
  bitRateLimit?: number | undefined;
152
+ resolution?: string | undefined;
153
+ h264Profile?: "high" | "main" | "baseline" | undefined;
154
154
  fps?: number | undefined;
155
+ compression?: number | undefined;
155
156
  govLength?: number | undefined;
156
- h264Profile?: "high" | "main" | "baseline" | undefined;
157
- keyboard?: {
158
- none: string | null;
159
- fromSource: string | null;
160
- } | undefined;
161
157
  bitrateVapixParams?: string | null | undefined;
162
158
  audioSampleRate?: number | undefined;
163
159
  audioChannelCount?: 1 | 2 | undefined;
160
+ audioBitrate?: number | undefined;
161
+ keyboard?: {
162
+ fromSource: string | null;
163
+ none: string | null;
164
+ } | undefined;
164
165
  } | undefined>;
165
166
  getGlobalAudioSettings(options?: THttpRequestOptions): Promise<{
166
167
  type: "source" | "fromSource";
@@ -156,6 +156,7 @@ class CamSwitcherAPI extends BasicAPI_1.BasicAPI {
156
156
  audio: {
157
157
  sampleRate: data.audioSampleRate,
158
158
  channelCount: data.audioChannelCount,
159
+ bitrate: data.audioBitrate,
159
160
  },
160
161
  keyboard: data.keyboard,
161
162
  };
@@ -207,6 +208,7 @@ class CamSwitcherAPI extends BasicAPI_1.BasicAPI {
207
208
  const settings = {
208
209
  audioSampleRate: saveData.audio?.sampleRate,
209
210
  audioChannelCount: saveData.audio?.channelCount,
211
+ audioBitrate: saveData.audio?.bitrate,
210
212
  keyboard: saveData.keyboard,
211
213
  fps: saveData.video.fps,
212
214
  resolution: saveData.video.resolution,
@@ -1,3 +1,4 @@
1
+ import { z } from 'zod';
1
2
  import { IClient, TResponse } from './internal/types';
2
3
  import { ICAO, TBlackList, TCameraSettings, TConnection, TExportDataType, TGetIcaoByOption, TImportDataType, TMilestoneCameraOption, TPriorityList, TTrackingMode, TWhiteList, TZones } from './types/PlaneTrackerAPI';
3
4
  import { THttpRequestOptions } from './types/common';
@@ -20,23 +21,23 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
20
21
  resetFocusCalibration(options?: THttpRequestOptions): Promise<void>;
21
22
  triggerFocusReview(options?: THttpRequestOptions): Promise<void>;
22
23
  fetchCameraSettings(options?: THttpRequestOptions): Promise<{
23
- camera: {
24
- ip: string;
25
- port: number;
26
- pass: string;
27
- user: string;
28
- protocol: "https" | "http" | "https_insecure";
29
- };
30
24
  units: "metric" | "imperial";
31
25
  adsbSource: {
32
- ip: string;
33
26
  enabled: boolean;
27
+ ip: string;
34
28
  port: number;
35
29
  useSystemTime: boolean;
36
30
  };
37
31
  dronetagSource: {
38
32
  enabled: boolean;
39
33
  };
34
+ camera: {
35
+ protocol: "https" | "http" | "https_insecure";
36
+ ip: string;
37
+ port: number;
38
+ user: string;
39
+ pass: string;
40
+ };
40
41
  cameraCalibrationProcessConfig: {
41
42
  nightSkyCalibrationEnabled: boolean;
42
43
  scheduleNightSkyCalibrationTimestamp: number;
@@ -86,20 +87,23 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
86
87
  };
87
88
  widget: {
88
89
  enabled: boolean;
89
- scale: number;
90
90
  coord: "top_left" | "top_right" | "bottom_left" | "bottom_right";
91
91
  posX: number;
92
92
  posY: number;
93
+ scale: number;
94
+ units: "rotate" | "metric" | "imperial";
93
95
  };
94
96
  airportWidget: {
95
97
  enabled: boolean;
96
- scale: number;
97
- weatherLocationName: string;
98
98
  coord: "top_left" | "top_right" | "bottom_left" | "bottom_right";
99
99
  posX: number;
100
100
  posY: number;
101
+ scale: number;
101
102
  showWeather: boolean;
102
103
  weatherLocationKey: string;
104
+ weatherLocationName: string;
105
+ windSpeedUnits: "rotate" | "metric" | "imperial";
106
+ temperatureUnits: "rotate" | "metric" | "imperial";
103
107
  };
104
108
  fr24FlightInfoSource: {
105
109
  enabled: boolean;
@@ -108,10 +112,10 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
108
112
  validateFlights: boolean;
109
113
  };
110
114
  radarcapeFlightInfoSource: {
111
- ip: string;
112
115
  enabled: boolean;
113
- port: number;
114
116
  priority: number;
117
+ ip: string;
118
+ port: number;
115
119
  };
116
120
  identificationLabel: {
117
121
  aircraft: {
@@ -139,22 +143,22 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
139
143
  };
140
144
  };
141
145
  acs: {
146
+ protocol: "https" | "http" | "https_insecure";
142
147
  ip: string;
143
- enabled: boolean;
144
148
  port: number;
145
- pass: string;
146
149
  user: string;
147
- protocol: "https" | "http" | "https_insecure";
150
+ pass: string;
151
+ enabled: boolean;
148
152
  sourceKey: string;
149
153
  };
150
154
  milestone: {
155
+ protocol: "https" | "http" | "https_insecure";
151
156
  ip: string;
152
- enabled: boolean;
153
157
  port: number;
154
- cameraList: string[];
155
- pass: string;
156
158
  user: string;
157
- protocol: "https" | "http" | "https_insecure";
159
+ pass: string;
160
+ enabled: boolean;
161
+ cameraList: string[];
158
162
  };
159
163
  camstreamerIntegration: {
160
164
  adPlacementEnabled: boolean;
@@ -212,13 +216,34 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
212
216
  }>;
213
217
  exportAppSettings(dataType: TExportDataType, options?: THttpRequestOptions): Promise<ReturnType<Awaited<ReturnType<Client["get"]>>["blob"]>>;
214
218
  importAppSettings(dataType: TImportDataType, formData: Parameters<Client['post']>[0]['data'], options?: THttpRequestOptions): Promise<void>;
215
- getDomainList(options?: THttpRequestOptions): Promise<Partial<Record<"adsb" | "remoteId", {
219
+ getDomainList(options?: THttpRequestOptions): Promise<Partial<Record<z.core.$InferEnumOutput<{
220
+ adsb: "adsb";
221
+ remoteId: "remoteId";
222
+ }>, {
216
223
  uiName: string;
217
- icon: "unknown" | "small" | "drone" | "large" | "heavy" | "helicopter" | "operator" | "vehicle";
224
+ icon: z.core.$InferEnumOutput<{
225
+ unknown: "unknown";
226
+ small: "small";
227
+ drone: "drone";
228
+ large: "large";
229
+ heavy: "heavy";
230
+ helicopter: "helicopter";
231
+ operator: "operator";
232
+ vehicle: "vehicle";
233
+ }>;
218
234
  categoryList: {
219
235
  categoryId: string;
220
236
  uiName: string;
221
- icon: "unknown" | "small" | "drone" | "large" | "heavy" | "helicopter" | "operator" | "vehicle";
237
+ icon: z.core.$InferEnumOutput<{
238
+ unknown: "unknown";
239
+ small: "small";
240
+ drone: "drone";
241
+ large: "large";
242
+ heavy: "heavy";
243
+ helicopter: "helicopter";
244
+ operator: "operator";
245
+ vehicle: "vehicle";
246
+ }>;
222
247
  }[];
223
248
  }>>>;
224
249
  fetchFlightInfo(targetId: string, options?: THttpRequestOptions): Promise<{
@@ -227,9 +252,9 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
227
252
  iata?: string | undefined;
228
253
  city?: string | undefined;
229
254
  };
230
- registration?: string | undefined;
231
255
  callsign?: string | undefined;
232
256
  flightNumber?: string | undefined;
257
+ registration?: string | undefined;
233
258
  aircraftType?: string | undefined;
234
259
  airlines?: string | undefined;
235
260
  originAirport?: {
@@ -253,25 +278,52 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
253
278
  getIcao(by: TGetIcaoByOption, value: string, options?: THttpRequestOptions): Promise<string>;
254
279
  getPriorityList(options?: THttpRequestOptions): Promise<{
255
280
  list: {
256
- priority: number;
257
- domain: "adsb" | "remoteId";
258
- idType: "icao" | "type_icao" | "drone_mac" | "operator_mac" | "category";
281
+ domain: z.core.$InferEnumOutput<{
282
+ adsb: "adsb";
283
+ remoteId: "remoteId";
284
+ }>;
285
+ idType: z.core.$InferEnumOutput<{
286
+ icao: "icao";
287
+ type_icao: "type_icao";
288
+ drone_mac: "drone_mac";
289
+ operator_mac: "operator_mac";
290
+ category: "category";
291
+ }>;
259
292
  idValue: string;
293
+ priority: number;
260
294
  }[];
261
295
  }>;
262
296
  setPriorityList(priorityList: TPriorityList, options?: THttpRequestOptions): Promise<void>;
263
297
  getWhiteList(options?: THttpRequestOptions): Promise<{
264
298
  list: {
265
- domain: "adsb" | "remoteId";
266
- idType: "icao" | "type_icao" | "drone_mac" | "operator_mac" | "category";
299
+ domain: z.core.$InferEnumOutput<{
300
+ adsb: "adsb";
301
+ remoteId: "remoteId";
302
+ }>;
303
+ idType: z.core.$InferEnumOutput<{
304
+ icao: "icao";
305
+ type_icao: "type_icao";
306
+ drone_mac: "drone_mac";
307
+ operator_mac: "operator_mac";
308
+ category: "category";
309
+ }>;
267
310
  idValue: string;
268
311
  }[];
269
312
  }>;
270
313
  setWhiteList(whiteList: TWhiteList, options?: THttpRequestOptions): Promise<void>;
271
314
  getBlackList(options?: THttpRequestOptions): Promise<{
272
315
  list: {
273
- domain: "adsb" | "remoteId";
274
- idType: "icao" | "type_icao" | "drone_mac" | "operator_mac" | "category";
316
+ domain: z.core.$InferEnumOutput<{
317
+ adsb: "adsb";
318
+ remoteId: "remoteId";
319
+ }>;
320
+ idType: z.core.$InferEnumOutput<{
321
+ icao: "icao";
322
+ type_icao: "type_icao";
323
+ drone_mac: "drone_mac";
324
+ operator_mac: "operator_mac";
325
+ category: "category";
326
+ }>;
275
327
  idValue: string;
276
328
  }[];
277
329
  }>;
@@ -279,23 +331,34 @@ export declare class PlaneTrackerAPI<Client extends IClient<TResponse, any>> ext
279
331
  fetchMapInfo(options?: THttpRequestOptions): Promise<{
280
332
  minZoom: number;
281
333
  maxZoom: number;
282
- mapTypes: ("roadmap" | "satellite")[];
334
+ mapTypes: z.core.$InferEnumOutput<{
335
+ roadmap: "roadmap";
336
+ satellite: "satellite";
337
+ }>[];
283
338
  tileSize: number;
284
339
  }>;
285
340
  getZones(options?: THttpRequestOptions): Promise<{
286
341
  zones: {
287
342
  enabled: boolean;
288
- area: [{
343
+ area: {
289
344
  lat: number;
290
345
  lon: number;
291
- }, ...{
292
- lat: number;
293
- lon: number;
294
- }[]];
295
- flightDirection: "all" | "arrival" | "departure";
346
+ }[];
347
+ flightDirection: z.core.$InferEnumOutput<{
348
+ all: "all";
349
+ arrival: "arrival";
350
+ departure: "departure";
351
+ }>;
296
352
  weight: number;
297
- perimeter: "none" | "outer" | "inner";
298
- trackingDomains: ("adsb" | "remoteId")[];
353
+ perimeter: z.core.$InferEnumOutput<{
354
+ none: "none";
355
+ outer: "outer";
356
+ inner: "inner";
357
+ }>;
358
+ trackingDomains: z.core.$InferEnumOutput<{
359
+ adsb: "adsb";
360
+ remoteId: "remoteId";
361
+ }>[];
299
362
  name?: string | undefined;
300
363
  minAltitudeAmsl?: number | undefined;
301
364
  maxAltitudeAmsl?: number | undefined;
package/cjs/VapixAPI.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { IClient, TParameters, TResponse } from './internal/types';
2
2
  import { TAudioDevice, TPortSetSchema, TPortSequenceStateSchema } from './types/VapixAPI';
3
3
  import { TCameraImageConfig, THttpRequestOptions } from './types/common';
4
+ import { z } from 'zod';
4
5
  import { BasicAPI } from './internal/BasicAPI';
5
6
  export declare class VapixAPI<Client extends IClient<TResponse, any>> extends BasicAPI<Client> {
6
7
  private CustomFormData;
@@ -46,7 +47,11 @@ export declare class VapixAPI<Client extends IClient<TResponse, any>> extends Ba
46
47
  getHeaders(options?: THttpRequestOptions): Promise<Record<string, string>>;
47
48
  setHeaders(headers: Record<string, string>, options?: THttpRequestOptions): Promise<void>;
48
49
  checkSDCard(options?: THttpRequestOptions): Promise<{
49
- status: "OK" | "connected" | "disconnected";
50
+ status: z.core.$InferEnumOutput<{
51
+ OK: "OK";
52
+ connected: "connected";
53
+ disconnected: "disconnected";
54
+ }>;
50
55
  totalSize: number;
51
56
  freeSize: number;
52
57
  }>;
@@ -57,34 +62,34 @@ export declare class VapixAPI<Client extends IClient<TResponse, any>> extends Ba
57
62
  getParameter(paramNames: string | string[], options?: THttpRequestOptions): Promise<Record<string, string>>;
58
63
  setParameter(params: Record<string, string | number | boolean>, options?: THttpRequestOptions): Promise<void>;
59
64
  getGuardTourList(options?: THttpRequestOptions): Promise<{
60
- name: string;
61
65
  id: string;
66
+ camNbr: unknown;
67
+ name: string;
68
+ randomEnabled: unknown;
62
69
  running: string;
70
+ timeBetweenSequences: unknown;
63
71
  tour: {
64
- position?: unknown;
65
- moveSpeed?: unknown;
66
- presetNbr?: unknown;
67
- waitTime?: unknown;
68
- waitTimeViewType?: unknown;
72
+ moveSpeed: unknown;
73
+ position: unknown;
74
+ presetNbr: unknown;
75
+ waitTime: unknown;
76
+ waitTimeViewType: unknown;
69
77
  }[];
70
- camNbr?: unknown;
71
- randomEnabled?: unknown;
72
- timeBetweenSequences?: unknown;
73
78
  }>;
74
79
  setGuardTourEnabled(guardTourId: string, enable: boolean, options?: THttpRequestOptions): Promise<void>;
75
80
  getPTZPresetList(channel: number, options?: THttpRequestOptions): Promise<string[]>;
76
81
  listPTZ(camera: number, options?: THttpRequestOptions): Promise<{
77
82
  name: string;
83
+ id: number;
78
84
  data: {
79
85
  pan?: number | undefined;
80
86
  tilt?: number | undefined;
81
87
  zoom?: number | undefined;
82
88
  };
83
- id: number;
84
89
  }[]>;
85
90
  listPtzVideoSourceOverview(options?: THttpRequestOptions): Promise<Record<number, {
86
- name: string;
87
91
  id: number;
92
+ name: string;
88
93
  }[]>>;
89
94
  goToPreset(channel: number, presetName: string, options?: THttpRequestOptions): Promise<void>;
90
95
  getPtzPosition(camera: number, options?: THttpRequestOptions): Promise<{
@@ -93,13 +98,22 @@ export declare class VapixAPI<Client extends IClient<TResponse, any>> extends Ba
93
98
  zoom?: number | undefined;
94
99
  }>;
95
100
  getPorts(options?: THttpRequestOptions): Promise<{
96
- name: string;
97
101
  port: string;
98
- direction: "output" | "input";
99
- state: "open" | "closed";
102
+ state: z.core.$InferEnumOutput<{
103
+ open: "open";
104
+ closed: "closed";
105
+ }>;
100
106
  configurable: boolean;
101
107
  usage: string;
102
- normalState: "open" | "closed";
108
+ direction: z.core.$InferEnumOutput<{
109
+ output: "output";
110
+ input: "input";
111
+ }>;
112
+ name: string;
113
+ normalState: z.core.$InferEnumOutput<{
114
+ open: "open";
115
+ closed: "closed";
116
+ }>;
103
117
  readonly?: boolean | undefined;
104
118
  }[]>;
105
119
  setPorts(ports: TPortSetSchema[], options?: THttpRequestOptions): Promise<void>;
@@ -108,9 +122,9 @@ export declare class VapixAPI<Client extends IClient<TResponse, any>> extends Ba
108
122
  getCameraUsers(options?: THttpRequestOptions): Promise<string[]>;
109
123
  editCameraUser(username: string, pass: string, options?: THttpRequestOptions): Promise<void>;
110
124
  getRecordingRuleList(options?: THttpRequestOptions): Promise<{
111
- options: Record<string, string>;
112
125
  diskid: string;
113
126
  eventid: string;
127
+ options: Record<string, string>;
114
128
  profile: string;
115
129
  }[]>;
116
130
  addRecordingRule(params: Record<string, string>, options?: THttpRequestOptions): Promise<string | null>;
package/cjs/VapixAPI.js CHANGED
@@ -199,7 +199,7 @@ class VapixAPI extends BasicAPI_1.BasicAPI {
199
199
  async getHeaders(options) {
200
200
  const data = { apiVersion: '1.0', method: 'list' };
201
201
  const res = await this._postJsonEncoded('/axis-cgi/customhttpheader.cgi', data, undefined, options);
202
- return zod_1.z.object({ data: zod_1.z.record(zod_1.z.string()) }).parse(await res.json()).data;
202
+ return zod_1.z.object({ data: zod_1.z.record(zod_1.z.string(), zod_1.z.string()) }).parse(await res.json()).data;
203
203
  }
204
204
  async setHeaders(headers, options) {
205
205
  const data = { apiVersion: '1.0', method: 'set', params: headers };
@@ -3,7 +3,7 @@ import { TStream } from '../types/CamStreamerAPI';
3
3
  import { TOldStream } from '../types/CamStreamerAPI/oldStreamSchema';
4
4
  export declare class ErrorWithResponse<T extends TResponse> extends Error {
5
5
  res: T;
6
- constructor(res: T);
6
+ constructor(res: T, message?: string);
7
7
  }
8
8
  export declare class ServiceUnavailableError extends Error {
9
9
  constructor();
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MigrationError = exports.BadRequestError = exports.ServerError = exports.InvalidAltitudeError = exports.InvalidLatLngError = exports.CannotSetCoordsInAutoModeError = exports.ImportSettingsError = exports.ResetCalibrationError = exports.TimezoneFetchError = exports.TimezoneNotSetupError = exports.UtcTimeFetchError = exports.WsAuthorizationError = exports.StorageDataFetchError = exports.PtzNotSupportedError = exports.GenerateSilenceError = exports.AddNewClipError = exports.FetchDeviceInfoError = exports.NoDeviceInfoError = exports.MaxFPSError = exports.SDCardJobError = exports.SDCardActionError = exports.ApplicationAPIError = exports.SettingParameterError = exports.ParameterNotFoundError = exports.JsonParseError = exports.ParsingBlobError = exports.ServiceNotFoundError = exports.ServiceUnavailableError = exports.ErrorWithResponse = void 0;
4
4
  class ErrorWithResponse extends Error {
5
5
  res;
6
- constructor(res) {
7
- super(res.statusText);
6
+ constructor(res, message) {
7
+ super(message ?? res.statusText);
8
8
  this.res = res;
9
9
  this.name = 'ErrorWithResponse';
10
10
  }
@@ -1,6 +1,6 @@
1
1
  export declare const assertVersionString: (s: string, msg?: string) => void;
2
2
  export declare const isFirmwareVersionAtLeast: (version: string, compareVersion: string) => boolean;
3
3
  export declare const isVersionAtLeast: (version: string, compareVersion: string) => boolean;
4
- export declare const firmwareVersionCompare: (a: string, b: string) => 1 | 0 | -1;
5
- export declare const versionCompare: (a: string, b: string) => 1 | 0 | -1;
4
+ export declare const firmwareVersionCompare: (a: string, b: string) => 0 | 1 | -1;
5
+ export declare const versionCompare: (a: string, b: string) => 0 | 1 | -1;
6
6
  export declare const fixVersionToDots: (version: string) => string;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AxisCameraStationEvents = void 0;
4
+ const errors_1 = require("../../errors/errors");
4
5
  const utils_1 = require("../../internal/utils");
5
6
  const ProxyClient_1 = require("../../internal/ProxyClient");
6
7
  const DefaultClient_1 = require("../DefaultClient");
@@ -36,7 +37,7 @@ class AxisCameraStationEvents {
36
37
  timeout: options?.timeout,
37
38
  });
38
39
  if (!res.ok) {
39
- throw new Error(`ACS status code: ${res.status}`);
40
+ throw new errors_1.ErrorWithResponse(res, `ACS status code: ${res.status}`);
40
41
  }
41
42
  }
42
43
  getDate() {