@camera.ui/server 2.1.7 → 2.1.9

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 (425) hide show
  1. package/dist/interface/assets/{404-D0lfw52Y.js → 404-BEb5gvkW.js} +1 -1
  2. package/dist/interface/assets/{About-DaaVZ9Cn.js → About-BKkjuIVJ.js} +1 -1
  3. package/dist/interface/assets/Automation-DA89AEEI.js +3 -0
  4. package/dist/interface/assets/AutomationImport-hYr3Lp8F.js +2 -0
  5. package/dist/interface/assets/{AutomationStore-CeRF0iz6.js → AutomationStore-DKhnExZn.js} +2 -2
  6. package/dist/interface/assets/{AutomationStoreDetail-DcCFUBJf.js → AutomationStoreDetail-DmqqEOir.js} +2 -2
  7. package/dist/interface/assets/{Automations-GMWeSNQv.js → Automations-B6WFJyxS.js} +2 -2
  8. package/dist/interface/assets/Camera-DmsSKvpY.js +2 -0
  9. package/dist/interface/assets/{CameraConsole-B0crXI59.js → CameraConsole-DVpyGhx8.js} +1 -1
  10. package/dist/interface/assets/Cameras-KOOphtlx.js +652 -0
  11. package/dist/interface/assets/Camview-BPQIinyP.js +1 -0
  12. package/dist/interface/assets/{Camview-DxxONfeK.css → Camview-Lp3QU0de.css} +1 -1
  13. package/dist/interface/assets/Config-DeUec_TN.js +2 -0
  14. package/dist/interface/assets/ConfigActionCameraControl-DWHg-YEU.js +1 -0
  15. package/dist/interface/assets/{ConfigActionDelay-DjFp5qpw.js → ConfigActionDelay-C8nNA7TC.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionHttp-Cmjz4iAV.js → ConfigActionHttp-Dc97gItH.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionImageInput-B0Hll2M3.js → ConfigActionImageInput-DpOGqlzA.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionMqtt-D2boY4u0.js → ConfigActionMqtt-D5DJ21oe.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionNotification-7iRd0L5l.js → ConfigActionNotification-4wKfanGB.js} +1 -1
  20. package/dist/interface/assets/ConfigActionNotificationControl-jSgxCZmV.js +1 -0
  21. package/dist/interface/assets/{ConfigActionOutput-BTGUzNQW.js → ConfigActionOutput-C8Esieni.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionPlugin-CzspRdJx.js → ConfigActionPlugin-C_cv60d3.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionSensor-CPK-s1E2.js → ConfigActionSensor-CFIKoJ3-.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionSnapshot-CcSw9Yw-.js → ConfigActionSnapshot-BqaTwtN3.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionVariable-BCDtM13I.js → ConfigActionVariable-De9RCGU4.js} +1 -1
  26. package/dist/interface/assets/{ConfigConditionIfElse-DZJkBeHI.js → ConfigConditionIfElse-CeNDIucw.js} +1 -1
  27. package/dist/interface/assets/{ConfigConditionSensorState-CxWutq1T.js → ConfigConditionSensorState-C_Q9gU23.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionSwitch-DBRR9cW4.js → ConfigConditionSwitch-DR63IGcD.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionTime-B-5s6QW2.js → ConfigConditionTime-C9iuSxxe.js} +1 -1
  30. package/dist/interface/assets/{ConfigSensorValueInput-B9MmHF-E.js → ConfigSensorValueInput-DnMlFzil.js} +1 -1
  31. package/dist/interface/assets/{ConfigTriggerDetection-DlY8ne3V.js → ConfigTriggerDetection-iThbCKOO.js} +1 -1
  32. package/dist/interface/assets/ConfigTriggerGeofence-BeKwVWvS.js +1 -0
  33. package/dist/interface/assets/{ConfigTriggerManual-BSxA9fGt.js → ConfigTriggerManual-DPkRlUqD.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerMqtt-C7sFSgYi.js → ConfigTriggerMqtt-kd65tGJE.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerSchedule-fqVY5k3V.js → ConfigTriggerSchedule-D6MoVDPc.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSensor-BMZ74d8e.js → ConfigTriggerSensor-AMQM6f2r.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSystem-B8zwJpaY.js → ConfigTriggerSystem-CNBgtDF1.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerWebhook-SklqcrZq.js → ConfigTriggerWebhook-B70DobSi.js} +1 -1
  39. package/dist/interface/assets/Console-N_2Vornl.js +1 -0
  40. package/dist/interface/assets/{CuiAutomationRunsDialog-N6NFABq2.js → CuiAutomationRunsDialog-Cp6Apki9.js} +1 -1
  41. package/dist/interface/assets/CuiBottomSheet-CIR_fmSk.js +1 -0
  42. package/dist/interface/assets/{CuiBottomSheet-BuK_lFkK.js → CuiBottomSheet-D5N8X1K-.js} +1 -1
  43. package/dist/interface/assets/CuiCameraPipCard-DP6X45oq.js +1 -0
  44. package/dist/interface/assets/CuiCameraRecordings-CRjXsdO4.js +1 -0
  45. package/dist/interface/assets/CuiCameraShares-DMHwZEf1.js +1 -0
  46. package/dist/interface/assets/{CuiCameraTable-DOPSHZ28.js → CuiCameraTable-AnEPu3XS.js} +1 -1
  47. package/dist/interface/assets/CuiCameraTable-D5ZqTLVt.js +1 -0
  48. package/dist/interface/assets/CuiConsole-CqEvNGe_.js +5 -0
  49. package/dist/interface/assets/{CuiDataTable-DBNU5MJ_.js → CuiDataTable-wA_LbHH8.js} +1 -1
  50. package/dist/interface/assets/{CuiLightControl-CCwkaMEn.js → CuiLightControl-CB_Tp4tI.js} +1 -1
  51. package/dist/interface/assets/{CuiList-BOMdGNXj.js → CuiList-DrYuFhK4.js} +1 -1
  52. package/dist/interface/assets/CuiPluginCard-DEuNt5ni.js +2 -0
  53. package/dist/interface/assets/CuiPluginCategoryChip-BbkbkYj6.js +1 -0
  54. package/dist/interface/assets/{CuiPluginOAuthButton-6HQLdlfg.js → CuiPluginOAuthButton-vMuRa9Qd.js} +2 -2
  55. package/dist/interface/assets/{CuiPluginTrustBadge-BS9iEcZr.js → CuiPluginTrustBadge-2wsPzYZA.js} +1 -1
  56. package/dist/interface/assets/CuiQRCode-Dh9EcaVc.js +1 -0
  57. package/dist/interface/assets/CuiRecordingsGrid-HjZEiSyp.js +1 -0
  58. package/dist/interface/assets/{CuiRecordingsGrid-Sv3uyj9a.css → CuiRecordingsGrid-Q4C3aeLo.css} +1 -1
  59. package/dist/interface/assets/CuiSchema-CSFoI6cg.js +1 -0
  60. package/dist/interface/assets/{CuiTopNavbarItem-MCdYsYHh.js → CuiTopNavbarItem-CSdvkKHR.js} +1 -1
  61. package/dist/interface/assets/{Faces-DDTbgPtz.js → Faces-CPZ5RA68.js} +1 -1
  62. package/dist/interface/assets/FirstSteps-CaF8STWH.js +1 -0
  63. package/dist/interface/assets/Instances-Cw7A4I7E.js +1 -0
  64. package/dist/interface/assets/{Logs-DEQlc2WM.js → Logs-4Mgj7YWu.js} +2 -2
  65. package/dist/interface/assets/{Menu-0EVo1-xs.js → Menu-T-54ZSSD.js} +1 -1
  66. package/dist/interface/assets/Metrics-CQGKmHev.css +1 -0
  67. package/dist/interface/assets/Metrics-Dgm5qpzh.js +6 -0
  68. package/dist/interface/assets/{OAuthDeviceFlow--YqcKa9u.js → OAuthDeviceFlow-DGikOkgK.js} +1 -1
  69. package/dist/interface/assets/Plugin-YxqbMbUc.js +1 -0
  70. package/dist/interface/assets/{PluginConsole-BB_dbd25.js → PluginConsole-ZZvJlgIh.js} +1 -1
  71. package/dist/interface/assets/PluginDetail-B9NgbzkJ.js +2 -0
  72. package/dist/interface/assets/{PluginSchema-C4dQGJOV.js → PluginSchema-Cx_LInpM.js} +1 -1
  73. package/dist/interface/assets/PluginSearch-5AgSWlmi.js +1 -0
  74. package/dist/interface/assets/{PluginSearch-gY-PHMyu.js → PluginSearch-P274oMvy.js} +2 -2
  75. package/dist/interface/assets/{PluginUpdateProgress-BjeH5abL.js → PluginUpdateProgress-0nV-8LvI.js} +1 -1
  76. package/dist/interface/assets/{Plugins-Kz1A-VUA.js → Plugins-Bvru3q2P.js} +1 -1
  77. package/dist/interface/assets/Recordings-BWGWC6Kq.js +1 -0
  78. package/dist/interface/assets/Recordings-cR4_6aGN.css +1 -0
  79. package/dist/interface/assets/{SensorEdit-CZyv_BYp.js → SensorEdit-gEw6HHZs.js} +1 -1
  80. package/dist/interface/assets/{SensorHistory-Mr03IqiL.js → SensorHistory-IgMpuLdC.js} +1 -1
  81. package/dist/interface/assets/Sensors-BUpob7LU.css +1 -0
  82. package/dist/interface/assets/Sensors-DukA8Xqx.js +2 -0
  83. package/dist/interface/assets/{Settings-CIv_iZ_m.js → Settings-DWpeWPJh.js} +1 -1
  84. package/dist/interface/assets/{Settings-B1MnGPuf.css → Settings-jQIhZFRY.css} +1 -1
  85. package/dist/interface/assets/SettingsAccount-C1OpCtob.js +1 -0
  86. package/dist/interface/assets/SettingsAccount-CrLcqzSn.js +1 -0
  87. package/dist/interface/assets/SettingsAppearance-AhUjml5E.js +1 -0
  88. package/dist/interface/assets/{SettingsAppearance-DEQyCR5b.js → SettingsAppearance-C8EEBVZN.js} +1 -1
  89. package/dist/interface/assets/{SettingsBackup-4y9MuseJ.js → SettingsBackup-BJupyZCJ.js} +1 -1
  90. package/dist/interface/assets/{SettingsList-DqyvUuS3.js → SettingsList-MXYSQMZ3.js} +1 -1
  91. package/dist/interface/assets/SettingsMqtt-F3pV1Bvo.js +1 -0
  92. package/dist/interface/assets/SettingsNotifications-BmaAccX9.js +1 -0
  93. package/dist/interface/assets/SettingsPermissions-Dd_yfNlk.js +1 -0
  94. package/dist/interface/assets/{SettingsRecordings-r9AwjQZX.js → SettingsRecordings-85B2bQIf.js} +1 -1
  95. package/dist/interface/assets/SettingsRemote-C_ikoXW7.js +2 -0
  96. package/dist/interface/assets/SettingsRemote-DzrfpHjw.css +1 -0
  97. package/dist/interface/assets/SettingsSystem-Ct3qms5O.js +2 -0
  98. package/dist/interface/assets/SettingsUsers-D36vZ8Zf.js +1 -0
  99. package/dist/interface/assets/{Terminal-Xo2uy0RX.js → Terminal-ltPiB9CB.js} +3 -3
  100. package/dist/interface/assets/{VariableInput-C3Jbe-vC.js → VariableInput-7c7Px-DM.js} +1 -1
  101. package/dist/interface/assets/{VariableSuggestions-pOrYkqys.js → VariableSuggestions-CrEa2zN-.js} +1 -1
  102. package/dist/interface/assets/{VersionsHandler-BhBynPF8.js → VersionsHandler-BFuLGk6Y.js} +1 -1
  103. package/dist/interface/assets/{VirtualSensorCreate-B3bwlAJz.js → VirtualSensorCreate-uumfOHgB.js} +1 -1
  104. package/dist/interface/assets/Workers-Bowrc1AF.js +2 -0
  105. package/dist/interface/assets/{api-B7yg8bdk.js → api-DLVsQBAO.js} +1 -1
  106. package/dist/interface/assets/api-daCggwpn.css +2 -0
  107. package/dist/interface/assets/api-py5HP4SF.js +2 -0
  108. package/dist/interface/assets/{auth-y-X5RKO6.js → auth-uQlIia9h.js} +1 -1
  109. package/dist/interface/assets/{automations-h1Wvnh36.js → automations-ChG1qcO7.js} +1 -1
  110. package/dist/interface/assets/cameras.schema-Cv7cjMz3.js +1 -0
  111. package/dist/interface/assets/cloudHandoff-CL4sircA.js +1 -0
  112. package/dist/interface/assets/{config-BZTZOfxI.js → config-B1aWtF-N.js} +1 -1
  113. package/dist/interface/assets/content-copy-CLkJTA4w.js +1 -0
  114. package/dist/interface/assets/eventLabels-BsPoPWS9.js +1 -0
  115. package/dist/interface/assets/{flowSchema-Dxxlrn77.js → flowSchema-CNnBxcwy.js} +1 -1
  116. package/dist/interface/assets/intercomService-DJHBix4X.js +1 -0
  117. package/dist/interface/assets/main-CLvcwWW7.js +3 -0
  118. package/dist/interface/assets/main-mJXdi_gx.css +1 -0
  119. package/dist/interface/assets/mqtt-Cyhv8shC.js +1 -0
  120. package/dist/interface/assets/{nodeDefinitions-DQQlFmPN.js → nodeDefinitions-c5rXs9EW.js} +1 -1
  121. package/dist/interface/assets/{notifications-C8eyTPRM.js → notifications-DniREnpL.js} +1 -1
  122. package/dist/interface/assets/{plugins-D0Txz0BA.js → plugins-5gXj0utE.js} +1 -1
  123. package/dist/interface/assets/round-alt-arrow-left-bold-CfccdiWp.js +1 -0
  124. package/dist/interface/assets/round-restart-alt-D3jT5i_T.js +1 -0
  125. package/dist/interface/assets/round-restart-alt-DdIfy7mU.css +1 -0
  126. package/dist/interface/assets/{sensorIcons-r5wmAxeD.js → sensorIcons-BXauWntX.js} +1 -1
  127. package/dist/interface/assets/{sensors-MIbrTUSa.js → sensors-Bc02Z1G9.js} +1 -1
  128. package/dist/interface/assets/{server-alwZXRo-.js → server-D2KGja0u.js} +1 -1
  129. package/dist/interface/assets/{theme-qmnHJ2WT.js → theme-vkX_uBgJ.js} +1 -1
  130. package/dist/interface/assets/types-CrvnT4-i.js +1 -0
  131. package/dist/interface/assets/types-D6IQ6ssc.js +1 -0
  132. package/dist/interface/assets/{types-DBWHsh0W.js → types-fCQkAGfW.js} +1 -1
  133. package/dist/interface/assets/useAppVersion-9zH_FspP.js +1 -0
  134. package/dist/interface/assets/useBackupRestore-Dbf24OqP.js +1 -0
  135. package/dist/interface/assets/{useCameraOptions-DYZKQx7X.js → useCameraOptions-BIaDXHeq.js} +1 -1
  136. package/dist/interface/assets/{useLogsSocket-DvwkpzT2.js → useLogsSocket-BLV7dWSG.js} +1 -1
  137. package/dist/interface/assets/{useNavLayout-CTX4KBkz.js → useNavLayout-wq-6JyWK.js} +1 -1
  138. package/dist/interface/assets/usePermissions-BiBlyeQl.js +1 -0
  139. package/dist/interface/assets/{usePluginUpdates-CiqRTrjF.js → usePluginUpdates-BZJSqnSF.js} +1 -1
  140. package/dist/interface/assets/usePushRegistration-CGFiyCuv.js +2 -0
  141. package/dist/interface/assets/{useServerRestart-Bqpn8N4T.js → useServerRestart-CjPAgzoX.js} +1 -1
  142. package/dist/interface/assets/{useStreamStatus-BWCnwuaj.js → useStreamStatus-BFCF1B3T.js} +1 -1
  143. package/dist/interface/assets/{useUpdateChannel-Cxm4QR-6.js → useUpdateChannel-F4WpbMJR.js} +1 -1
  144. package/dist/interface/assets/{useUserOptions-B2LNsU9C.js → useUserOptions-GbSC7_qt.js} +1 -1
  145. package/dist/interface/assets/{vendor-cameraui-C6beJsya.js → vendor-cameraui-0EJfDg8o.js} +56 -56
  146. package/dist/interface/assets/vendor-core-RnPzfwaA.js +1 -0
  147. package/dist/interface/assets/{vendor-primevue-DfyAPSov.js → vendor-primevue-b9CB9Uh0.js} +1 -1
  148. package/dist/interface/index.html +27 -27
  149. package/dist/interface/sw.js +1 -1
  150. package/dist/server/package.json +7 -7
  151. package/dist/server/requirements.txt +2 -2
  152. package/dist/server/src/_camera_ui_tools/camera_ui_rpc/client.py +8 -0
  153. package/dist/server/src/_camera_ui_tools/camera_ui_rpc/types.py +20 -0
  154. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +12 -4
  155. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +16 -4
  156. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +7 -10
  157. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +96 -15
  158. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +7 -13
  159. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/enums.py +0 -7
  160. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/events.py +2 -0
  161. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/notification.py +28 -0
  162. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +4 -0
  163. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +18 -0
  164. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/spec.py +27 -3
  165. package/dist/server/src/api/controllers/auth.controller.js +5 -0
  166. package/dist/server/src/api/controllers/auth.controller.js.map +1 -1
  167. package/dist/server/src/api/controllers/cameras.controller.d.ts +2 -7
  168. package/dist/server/src/api/controllers/cameras.controller.js +2 -94
  169. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  170. package/dist/server/src/api/controllers/frameWorkers.controller.d.ts +14 -0
  171. package/dist/server/src/api/controllers/frameWorkers.controller.js +120 -1
  172. package/dist/server/src/api/controllers/frameWorkers.controller.js.map +1 -1
  173. package/dist/server/src/api/controllers/remote.controller.js +3 -0
  174. package/dist/server/src/api/controllers/remote.controller.js.map +1 -1
  175. package/dist/server/src/api/controllers/server.controller.js +1 -0
  176. package/dist/server/src/api/controllers/server.controller.js.map +1 -1
  177. package/dist/server/src/api/database/constants.d.ts +0 -1
  178. package/dist/server/src/api/database/constants.js +0 -1
  179. package/dist/server/src/api/database/constants.js.map +1 -1
  180. package/dist/server/src/api/database/index.d.ts +2 -3
  181. package/dist/server/src/api/database/index.js +3 -6
  182. package/dist/server/src/api/database/index.js.map +1 -1
  183. package/dist/server/src/api/database/migrations/v2-1-10.js +33 -0
  184. package/dist/server/src/api/database/migrations/v2-1-10.js.map +1 -0
  185. package/dist/server/src/api/database/migrations/v2-1-11.js +31 -0
  186. package/dist/server/src/api/database/migrations/v2-1-11.js.map +1 -0
  187. package/dist/server/src/api/database/migrations/v2-1-12.js +25 -0
  188. package/dist/server/src/api/database/migrations/v2-1-12.js.map +1 -0
  189. package/dist/server/src/api/database/migrations/v2-1-6.d.ts +3 -0
  190. package/dist/server/src/api/database/migrations/v2-1-6.js +62 -0
  191. package/dist/server/src/api/database/migrations/v2-1-6.js.map +1 -0
  192. package/dist/server/src/api/database/migrations/v2-1-7.d.ts +3 -0
  193. package/dist/server/src/api/database/migrations/v2-1-7.js +44 -0
  194. package/dist/server/src/api/database/migrations/v2-1-7.js.map +1 -0
  195. package/dist/server/src/api/database/migrations/v2-1-9.d.ts +3 -0
  196. package/dist/server/src/api/database/migrations/v2-1-9.js +38 -0
  197. package/dist/server/src/api/database/migrations/v2-1-9.js.map +1 -0
  198. package/dist/server/src/api/database/record-schemas.d.ts +18 -13
  199. package/dist/server/src/api/database/record-schemas.js +3 -3
  200. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  201. package/dist/server/src/api/database/types.d.ts +4 -11
  202. package/dist/server/src/api/routes/cameras.routes.js +5 -62
  203. package/dist/server/src/api/routes/cameras.routes.js.map +1 -1
  204. package/dist/server/src/api/routes/frameWorkers.routes.js +22 -1
  205. package/dist/server/src/api/routes/frameWorkers.routes.js.map +1 -1
  206. package/dist/server/src/api/schemas/cameras.schema.d.ts +466 -154
  207. package/dist/server/src/api/schemas/cameras.schema.js +85 -43
  208. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  209. package/dist/server/src/api/schemas/frameWorkers.schema.d.ts +6 -0
  210. package/dist/server/src/api/schemas/frameWorkers.schema.js +7 -0
  211. package/dist/server/src/api/schemas/frameWorkers.schema.js.map +1 -1
  212. package/dist/server/src/api/schemas/server.schema.d.ts +1 -0
  213. package/dist/server/src/api/schemas/server.schema.js +4 -0
  214. package/dist/server/src/api/schemas/server.schema.js.map +1 -1
  215. package/dist/server/src/api/schemas/users.schema.d.ts +119 -84
  216. package/dist/server/src/api/schemas/users.schema.js +3 -0
  217. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  218. package/dist/server/src/api/services/cameras.service.d.ts +2 -4
  219. package/dist/server/src/api/services/cameras.service.js +2 -32
  220. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  221. package/dist/server/src/api/types/index.d.ts +4 -9
  222. package/dist/server/src/api/types/index.js.map +1 -1
  223. package/dist/server/src/api/websocket/nsp/metrics.d.ts +1 -1
  224. package/dist/server/src/api/websocket/nsp/metrics.js +54 -33
  225. package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
  226. package/dist/server/src/api/websocket/nsp/server.js +2 -2
  227. package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
  228. package/dist/server/src/api/websocket/types.d.ts +20 -17
  229. package/dist/server/src/automations/actions/cameraControl.js +15 -1
  230. package/dist/server/src/automations/actions/cameraControl.js.map +1 -1
  231. package/dist/server/src/automations/actions/notificationControl.js +10 -1
  232. package/dist/server/src/automations/actions/notificationControl.js.map +1 -1
  233. package/dist/server/src/camera/controller.d.ts +1 -0
  234. package/dist/server/src/camera/controller.js +22 -8
  235. package/dist/server/src/camera/controller.js.map +1 -1
  236. package/dist/server/src/camera/decoder/audio-loop.d.ts +0 -1
  237. package/dist/server/src/camera/decoder/audio-loop.js +38 -68
  238. package/dist/server/src/camera/decoder/audio-loop.js.map +1 -1
  239. package/dist/server/src/camera/decoder/child.d.ts +6 -5
  240. package/dist/server/src/camera/decoder/child.js +31 -22
  241. package/dist/server/src/camera/decoder/child.js.map +1 -1
  242. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +12 -10
  243. package/dist/server/src/camera/decoder/detection-coordinator.js +274 -163
  244. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  245. package/dist/server/src/camera/decoder/detection-pipeline.d.ts +12 -4
  246. package/dist/server/src/camera/decoder/detection-pipeline.js +71 -14
  247. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  248. package/dist/server/src/camera/decoder/event-manager.d.ts +2 -0
  249. package/dist/server/src/camera/decoder/event-manager.js +14 -0
  250. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  251. package/dist/server/src/camera/decoder/event-thumbnailer.d.ts +4 -2
  252. package/dist/server/src/camera/decoder/event-thumbnailer.js +3 -3
  253. package/dist/server/src/camera/decoder/event-thumbnailer.js.map +1 -1
  254. package/dist/server/src/camera/decoder/frame-scaler.d.ts +10 -3
  255. package/dist/server/src/camera/decoder/frame-scaler.js +76 -13
  256. package/dist/server/src/camera/decoder/frame-scaler.js.map +1 -1
  257. package/dist/server/src/camera/decoder/perf-tracker.d.ts +27 -8
  258. package/dist/server/src/camera/decoder/perf-tracker.js +72 -50
  259. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  260. package/dist/server/src/camera/decoder/plugin-registry.d.ts +1 -0
  261. package/dist/server/src/camera/decoder/plugin-registry.js +7 -0
  262. package/dist/server/src/camera/decoder/plugin-registry.js.map +1 -1
  263. package/dist/server/src/camera/decoder/ptz/autotracker.d.ts +4 -0
  264. package/dist/server/src/camera/decoder/ptz/autotracker.js +97 -18
  265. package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -1
  266. package/dist/server/src/camera/decoder/secondary-stage.d.ts +4 -1
  267. package/dist/server/src/camera/decoder/secondary-stage.js +26 -3
  268. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
  269. package/dist/server/src/camera/decoder/sources/analysis-source.d.ts +14 -1
  270. package/dist/server/src/camera/decoder/sources/audio-source.d.ts +7 -3
  271. package/dist/server/src/camera/decoder/sources/audio-source.js +89 -78
  272. package/dist/server/src/camera/decoder/sources/audio-source.js.map +1 -1
  273. package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +28 -9
  274. package/dist/server/src/camera/decoder/sources/buffered-source.js +114 -66
  275. package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
  276. package/dist/server/src/camera/decoder/sources/frame-handle.d.ts +13 -0
  277. package/dist/server/src/camera/decoder/sources/frame-handle.js +106 -0
  278. package/dist/server/src/camera/decoder/sources/frame-handle.js.map +1 -0
  279. package/dist/server/src/camera/decoder/sources/frame-source.d.ts +25 -26
  280. package/dist/server/src/camera/decoder/sources/frame-source.js +213 -268
  281. package/dist/server/src/camera/decoder/sources/frame-source.js.map +1 -1
  282. package/dist/server/src/camera/decoder/sources/reconnect-loop.d.ts +17 -0
  283. package/dist/server/src/camera/decoder/sources/reconnect-loop.js +59 -0
  284. package/dist/server/src/camera/decoder/sources/reconnect-loop.js.map +1 -0
  285. package/dist/server/src/camera/decoder/sources/snapshot-fetcher.d.ts +15 -0
  286. package/dist/server/src/camera/decoder/sources/snapshot-fetcher.js +58 -0
  287. package/dist/server/src/camera/decoder/sources/snapshot-fetcher.js.map +1 -0
  288. package/dist/server/src/camera/decoder/sources/video-input.d.ts +18 -0
  289. package/dist/server/src/camera/decoder/sources/video-input.js +55 -0
  290. package/dist/server/src/camera/decoder/sources/video-input.js.map +1 -0
  291. package/dist/server/src/camera/decoder/types.d.ts +74 -18
  292. package/dist/server/src/camera/decoder/types.js +5 -0
  293. package/dist/server/src/camera/decoder/types.js.map +1 -1
  294. package/dist/server/src/camera/decoder/worker.d.ts +5 -1
  295. package/dist/server/src/camera/decoder/worker.js +39 -29
  296. package/dist/server/src/camera/decoder/worker.js.map +1 -1
  297. package/dist/server/src/camera/index.d.ts +3 -4
  298. package/dist/server/src/camera/index.js +6 -8
  299. package/dist/server/src/camera/index.js.map +1 -1
  300. package/dist/server/src/camera/privacy/mask.d.ts +27 -0
  301. package/dist/server/src/camera/privacy/mask.js +204 -0
  302. package/dist/server/src/camera/privacy/mask.js.map +1 -0
  303. package/dist/server/src/camera/privacy/snapshot.d.ts +13 -0
  304. package/dist/server/src/camera/privacy/snapshot.js +126 -0
  305. package/dist/server/src/camera/privacy/snapshot.js.map +1 -0
  306. package/dist/server/src/camera/streaming/fmp4-session.js +1 -1
  307. package/dist/server/src/camera/streaming/fmp4-session.js.map +1 -1
  308. package/dist/server/src/camera/streaming/rtp-session.js +1 -1
  309. package/dist/server/src/camera/streaming/rtp-session.js.map +1 -1
  310. package/dist/server/src/camera/utils/filter.d.ts +3 -3
  311. package/dist/server/src/camera/utils/filter.js.map +1 -1
  312. package/dist/server/src/camera/zones.d.ts +2 -0
  313. package/dist/server/src/camera/zones.js +11 -0
  314. package/dist/server/src/camera/zones.js.map +1 -0
  315. package/dist/server/src/manager/notificationManager.d.ts +2 -0
  316. package/dist/server/src/manager/notificationManager.js +21 -2
  317. package/dist/server/src/manager/notificationManager.js.map +1 -1
  318. package/dist/server/src/mqtt/bridge.d.ts +0 -1
  319. package/dist/server/src/mqtt/bridge.js +0 -33
  320. package/dist/server/src/mqtt/bridge.js.map +1 -1
  321. package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js +9 -0
  322. package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js.map +1 -1
  323. package/dist/server/src/plugins/runtime/node/proxy/sensorManager.js +8 -0
  324. package/dist/server/src/plugins/runtime/node/proxy/sensorManager.js.map +1 -1
  325. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +22 -13
  326. package/dist/server/src/plugins/runtime/python/proxy/sensor.py +1 -0
  327. package/dist/server/src/plugins/runtime/python/proxy/sensor_manager.py +13 -0
  328. package/dist/server/src/plugins/schema.js +1 -1
  329. package/dist/server/src/plugins/schema.js.map +1 -1
  330. package/dist/server/src/remote/services/cloudflare-managed.d.ts +2 -0
  331. package/dist/server/src/remote/services/cloudflare-managed.js +9 -2
  332. package/dist/server/src/remote/services/cloudflare-managed.js.map +1 -1
  333. package/dist/server/src/remote/services/cloudflare.d.ts +3 -0
  334. package/dist/server/src/remote/services/cloudflare.js +11 -0
  335. package/dist/server/src/remote/services/cloudflare.js.map +1 -1
  336. package/dist/server/src/remote/services/index.d.ts +2 -0
  337. package/dist/server/src/remote/services/index.js +60 -8
  338. package/dist/server/src/remote/services/index.js.map +1 -1
  339. package/dist/server/src/remote/services/tunnelConnections.d.ts +9 -0
  340. package/dist/server/src/remote/services/tunnelConnections.js +45 -0
  341. package/dist/server/src/remote/services/tunnelConnections.js.map +1 -0
  342. package/dist/server/src/remote/services/urlReadiness.d.ts +2 -0
  343. package/dist/server/src/remote/services/urlReadiness.js +7 -4
  344. package/dist/server/src/remote/services/urlReadiness.js.map +1 -1
  345. package/dist/server/src/rpc/interfaces/frameworker.d.ts +6 -5
  346. package/dist/server/src/rpc/interfaces/sensor.d.ts +1 -0
  347. package/dist/server/src/sensors/registry.d.ts +2 -0
  348. package/dist/server/src/sensors/registry.js +16 -0
  349. package/dist/server/src/sensors/registry.js.map +1 -1
  350. package/dist/server/src/utils/plugin-registry/index.js +1 -1
  351. package/dist/server/src/utils/plugin-registry/index.js.map +1 -1
  352. package/dist/server/src/workers/agent.js +1 -1
  353. package/dist/server/src/workers/agent.js.map +1 -1
  354. package/package.json +7 -7
  355. package/dist/interface/assets/Automation-DQyPNAzK.js +0 -3
  356. package/dist/interface/assets/AutomationImport-BDD_LuC1.js +0 -2
  357. package/dist/interface/assets/Camera-CYxRoESX.js +0 -2
  358. package/dist/interface/assets/Cameras-V_twilcC.js +0 -652
  359. package/dist/interface/assets/Camview-CSb2iVBf.js +0 -1
  360. package/dist/interface/assets/Config-BKuXgZxF.js +0 -2
  361. package/dist/interface/assets/ConfigActionCameraControl-TFe1_K6j.js +0 -1
  362. package/dist/interface/assets/ConfigActionNotificationControl-DI_t2wHh.js +0 -1
  363. package/dist/interface/assets/ConfigTriggerGeofence-DJt-3FpV.js +0 -1
  364. package/dist/interface/assets/Console-BZB3MZKj.js +0 -1
  365. package/dist/interface/assets/CuiBottomSheet-BnKYWBBA.js +0 -1
  366. package/dist/interface/assets/CuiCameraPipCard-DaJlFY1g.js +0 -1
  367. package/dist/interface/assets/CuiCameraRecordings-z4WblFJ9.js +0 -1
  368. package/dist/interface/assets/CuiCameraShares-CvKMe_kX.js +0 -1
  369. package/dist/interface/assets/CuiCameraTable-_7KwbPyM.js +0 -1
  370. package/dist/interface/assets/CuiConsole-BOfQ5I3b.js +0 -5
  371. package/dist/interface/assets/CuiPluginCard-CvNfBRhG.js +0 -2
  372. package/dist/interface/assets/CuiPluginCategoryChip-JG_8D7Wt.js +0 -1
  373. package/dist/interface/assets/CuiQRCode-Vd-1ssJK.js +0 -1
  374. package/dist/interface/assets/CuiRecordingsGrid-skKnK074.js +0 -1
  375. package/dist/interface/assets/CuiSchema-DvY3Bdnz.js +0 -1
  376. package/dist/interface/assets/FirstSteps-T4ra4jxE.js +0 -1
  377. package/dist/interface/assets/Instances-D_Td0oJ-.js +0 -1
  378. package/dist/interface/assets/Metrics-BstlZavQ.css +0 -1
  379. package/dist/interface/assets/Metrics-FFvFP2kR.js +0 -1
  380. package/dist/interface/assets/Plugin-CKcptqV9.js +0 -1
  381. package/dist/interface/assets/PluginDetail-Y_jg8hAX.js +0 -2
  382. package/dist/interface/assets/PluginSearch-D2efYsof.js +0 -1
  383. package/dist/interface/assets/Recordings-80Xd1V3L.css +0 -1
  384. package/dist/interface/assets/Recordings-BlBmyZlM.js +0 -1
  385. package/dist/interface/assets/Sensors-B-Qhfr5i.css +0 -1
  386. package/dist/interface/assets/Sensors-CHbtecpf.js +0 -2
  387. package/dist/interface/assets/SettingsAccount-DA67jXmp.js +0 -1
  388. package/dist/interface/assets/SettingsAccount-DPPwXOlM.js +0 -1
  389. package/dist/interface/assets/SettingsAppearance-C92Nlobb.js +0 -1
  390. package/dist/interface/assets/SettingsMqtt-CuTZBTrA.js +0 -1
  391. package/dist/interface/assets/SettingsNotifications-D7Vs6NoU.js +0 -1
  392. package/dist/interface/assets/SettingsPermissions-C_8g_nff.js +0 -1
  393. package/dist/interface/assets/SettingsRemote-DYld6-1F.css +0 -1
  394. package/dist/interface/assets/SettingsRemote-oDVzvhmy.js +0 -1
  395. package/dist/interface/assets/SettingsSystem-QfBIPq4i.js +0 -2
  396. package/dist/interface/assets/SettingsUsers-CqRJ8-7H.js +0 -1
  397. package/dist/interface/assets/Workers-tgzMqP3o.js +0 -2
  398. package/dist/interface/assets/api-1K2Gzz8B.js +0 -2
  399. package/dist/interface/assets/api-Bj4QRftG.css +0 -2
  400. package/dist/interface/assets/cameras.schema-CKnsFYBP.js +0 -1
  401. package/dist/interface/assets/cctv-BA5DvNlE.js +0 -1
  402. package/dist/interface/assets/cloudHandoff-qezHiAZI.js +0 -1
  403. package/dist/interface/assets/main-Ei2ORV9y.js +0 -3
  404. package/dist/interface/assets/main-kdyR9bI7.css +0 -1
  405. package/dist/interface/assets/mqtt-CCq5JGGk.js +0 -1
  406. package/dist/interface/assets/round-alt-arrow-left-bold-BxX4ufd0.js +0 -1
  407. package/dist/interface/assets/round-restart-alt-Bw-T1H6w.js +0 -1
  408. package/dist/interface/assets/round-restart-alt-CmrjVFat.css +0 -1
  409. package/dist/interface/assets/types-BTVMzSuj.js +0 -1
  410. package/dist/interface/assets/types-vaT6wuY0.js +0 -1
  411. package/dist/interface/assets/useAppVersion-BRc6OWZP.js +0 -1
  412. package/dist/interface/assets/useBackupRestore-DCO_Pw9q.js +0 -1
  413. package/dist/interface/assets/useElectron-CtslU_0f.js +0 -1
  414. package/dist/interface/assets/usePermissions-DpsfFydh.js +0 -1
  415. package/dist/interface/assets/usePushRegistration-Coz8RZob.js +0 -2
  416. package/dist/interface/assets/vendor-core-_ft7qIgH.js +0 -1
  417. package/dist/server/src/api/database/migrations/v2-0-50.js +0 -45
  418. package/dist/server/src/api/database/migrations/v2-0-50.js.map +0 -1
  419. package/dist/server/src/api/database/migrations/v2-0-51.js +0 -43
  420. package/dist/server/src/api/database/migrations/v2-0-51.js.map +0 -1
  421. package/dist/server/src/api/database/migrations/v2-1-0.js +0 -72
  422. package/dist/server/src/api/database/migrations/v2-1-0.js.map +0 -1
  423. /package/dist/server/src/api/database/migrations/{v2-0-50.d.ts → v2-1-10.d.ts} +0 -0
  424. /package/dist/server/src/api/database/migrations/{v2-0-51.d.ts → v2-1-11.d.ts} +0 -0
  425. /package/dist/server/src/api/database/migrations/{v2-1-0.d.ts → v2-1-12.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  import * as zod from 'zod';
2
- import type { CameraAspectRatio, DetectionLabel, VideoStreamingMode } from '@camera.ui/sdk';
2
+ import type { CameraAspectRatio, DetectionLabel, VideoStreamingMode, ZoneLabel } from '@camera.ui/sdk';
3
3
  export declare function hasCloudProtocol(urls: string[]): boolean;
4
4
  export declare const recordingSettingsSchema: zod.ZodObject<{
5
5
  enabled: zod.ZodDefault<zod.ZodBoolean>;
@@ -16,21 +16,45 @@ export declare const recordingSettingsSchema: zod.ZodObject<{
16
16
  }>>>;
17
17
  }, zod.z.core.$strict>;
18
18
  export declare const DEFAULT_RECORDING_SETTINGS: zod.infer<typeof recordingSettingsSchema>;
19
+ export declare const notificationSettingsSchema: zod.ZodObject<{
20
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
21
+ video: zod.ZodDefault<zod.ZodBoolean>;
22
+ audio: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
23
+ sensors: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
24
+ cooldown: zod.ZodDefault<zod.ZodNumber>;
25
+ speed: zod.ZodDefault<zod.ZodEnum<{
26
+ immediate: "immediate";
27
+ balanced: "balanced";
28
+ best: "best";
29
+ }>>;
30
+ }, zod.z.core.$strict>;
31
+ export declare const DEFAULT_NOTIFICATION_SETTINGS: zod.infer<typeof notificationSettingsSchema>;
19
32
  export declare const detectionLabelSchema: zod.ZodType<DetectionLabel>;
33
+ export declare const zoneLabelSchema: zod.ZodType<ZoneLabel>;
20
34
  export declare const pointsSchema: zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>;
21
- export declare const detectionZoneSchema: zod.ZodArray<zod.ZodObject<{
35
+ export declare const motionZoneSchema: zod.ZodArray<zod.ZodObject<{
22
36
  name: zod.ZodString;
23
37
  points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
24
- type: zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>;
25
- filter: zod.ZodUnion<readonly [zod.ZodLiteral<"include">, zod.ZodLiteral<"exclude">]>;
26
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
27
- isPrivacyMask: zod.ZodBoolean;
28
38
  color: zod.ZodDefault<zod.ZodString>;
29
39
  }, zod.z.core.$strip>>;
40
+ export declare const objectZoneSchema: zod.ZodArray<zod.ZodObject<{
41
+ name: zod.ZodString;
42
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
43
+ type: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
44
+ labels: zod.ZodArray<zod.ZodType<ZoneLabel, unknown, zod.z.core.$ZodTypeInternals<ZoneLabel, unknown>>>;
45
+ color: zod.ZodDefault<zod.ZodString>;
46
+ }, zod.z.core.$strip>>;
47
+ export declare const privacyZoneSchema: zod.ZodArray<zod.ZodObject<{
48
+ name: zod.ZodString;
49
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
50
+ dropDetections: zod.ZodDefault<zod.ZodBoolean>;
51
+ }, zod.z.core.$strip>>;
30
52
  export declare const alertZoneSchema: zod.ZodArray<zod.ZodObject<{
31
53
  name: zod.ZodString;
32
54
  points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
33
55
  labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
56
+ faces: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
57
+ plates: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
34
58
  match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
35
59
  color: zod.ZodDefault<zod.ZodString>;
36
60
  }, zod.z.core.$strip>>;
@@ -41,6 +65,42 @@ export declare const detectionLineSchema: zod.ZodArray<zod.ZodObject<{
41
65
  labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
42
66
  color: zod.ZodDefault<zod.ZodString>;
43
67
  }, zod.z.core.$strip>>;
68
+ export declare const zoneConfigSchema: zod.ZodObject<{
69
+ privacyFallback: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"send">, zod.ZodLiteral<"drop">]>>;
70
+ motion: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
71
+ name: zod.ZodString;
72
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
73
+ color: zod.ZodDefault<zod.ZodString>;
74
+ }, zod.z.core.$strip>>>;
75
+ object: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
76
+ name: zod.ZodString;
77
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
78
+ type: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
79
+ labels: zod.ZodArray<zod.ZodType<ZoneLabel, unknown, zod.z.core.$ZodTypeInternals<ZoneLabel, unknown>>>;
80
+ color: zod.ZodDefault<zod.ZodString>;
81
+ }, zod.z.core.$strip>>>;
82
+ privacy: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
83
+ name: zod.ZodString;
84
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
85
+ dropDetections: zod.ZodDefault<zod.ZodBoolean>;
86
+ }, zod.z.core.$strip>>>;
87
+ alert: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
88
+ name: zod.ZodString;
89
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
90
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
91
+ faces: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
92
+ plates: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
93
+ match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
94
+ color: zod.ZodDefault<zod.ZodString>;
95
+ }, zod.z.core.$strip>>>;
96
+ lines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
97
+ name: zod.ZodString;
98
+ points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
99
+ direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
100
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
101
+ color: zod.ZodDefault<zod.ZodString>;
102
+ }, zod.z.core.$strip>>>;
103
+ }, zod.z.core.$strict>;
44
104
  export declare const detectionSettingsSchema: zod.ZodObject<{
45
105
  motion: zod.ZodObject<{
46
106
  resolution: zod.ZodUnion<readonly [zod.ZodLiteral<"low">, zod.ZodLiteral<"medium">, zod.ZodLiteral<"high">]>;
@@ -48,7 +108,6 @@ export declare const detectionSettingsSchema: zod.ZodObject<{
48
108
  }, zod.z.core.$strip>;
49
109
  object: zod.ZodObject<{
50
110
  confidence: zod.ZodNumber;
51
- labels: zod.ZodOptional<zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>>;
52
111
  suppressStatic: zod.ZodDefault<zod.ZodBoolean>;
53
112
  timeout: zod.ZodDefault<zod.ZodNumber>;
54
113
  }, zod.z.core.$strip>;
@@ -59,9 +118,11 @@ export declare const detectionSettingsSchema: zod.ZodObject<{
59
118
  }, zod.z.core.$strip>;
60
119
  face: zod.ZodDefault<zod.ZodObject<{
61
120
  confidence: zod.ZodDefault<zod.ZodNumber>;
121
+ matchThreshold: zod.ZodDefault<zod.ZodNumber>;
62
122
  }, zod.z.core.$strip>>;
63
123
  licensePlate: zod.ZodDefault<zod.ZodObject<{
64
124
  confidence: zod.ZodDefault<zod.ZodNumber>;
125
+ ocrConfidence: zod.ZodDefault<zod.ZodNumber>;
65
126
  minLength: zod.ZodDefault<zod.ZodNumber>;
66
127
  }, zod.z.core.$strip>>;
67
128
  sensor: zod.ZodObject<{
@@ -72,6 +133,11 @@ export declare const detectionSettingsSchema: zod.ZodObject<{
72
133
  cascadeTimeout: zod.ZodDefault<zod.ZodNumber>;
73
134
  snooze: zod.ZodDefault<zod.ZodBoolean>;
74
135
  }, zod.z.core.$strip>;
136
+ export declare const timeWindowSchema: zod.ZodObject<{
137
+ from: zod.ZodString;
138
+ to: zod.ZodString;
139
+ timezone: zod.ZodString;
140
+ }, zod.z.core.$strip>;
75
141
  export declare const DEFAULT_PTZ_AUTOTRACK_SETTINGS: {
76
142
  enabled: boolean;
77
143
  targetLabels: string[];
@@ -82,6 +148,8 @@ export declare const DEFAULT_PTZ_AUTOTRACK_SETTINGS: {
82
148
  panRate: number;
83
149
  returnToHome: boolean;
84
150
  homeWaitMs: number;
151
+ minTargetSize: number;
152
+ maxTargetSize: number;
85
153
  };
86
154
  export declare const ptzAutotrackSettingsSchema: zod.ZodObject<{
87
155
  enabled: zod.ZodDefault<zod.ZodBoolean>;
@@ -93,6 +161,13 @@ export declare const ptzAutotrackSettingsSchema: zod.ZodObject<{
93
161
  panRate: zod.ZodDefault<zod.ZodNumber>;
94
162
  returnToHome: zod.ZodDefault<zod.ZodBoolean>;
95
163
  homeWaitMs: zod.ZodDefault<zod.ZodNumber>;
164
+ minTargetSize: zod.ZodDefault<zod.ZodNumber>;
165
+ maxTargetSize: zod.ZodDefault<zod.ZodNumber>;
166
+ activeHours: zod.ZodOptional<zod.ZodObject<{
167
+ from: zod.ZodString;
168
+ to: zod.ZodString;
169
+ timezone: zod.ZodString;
170
+ }, zod.z.core.$strip>>;
96
171
  }, zod.z.core.$strip>;
97
172
  export declare const inputRoleSchema: zod.ZodUnion<readonly [zod.ZodLiteral<"high-resolution">, zod.ZodLiteral<"mid-resolution">, zod.ZodLiteral<"low-resolution">, zod.ZodLiteral<"snapshot">]>;
98
173
  export declare const streamingSourceRole: zod.ZodUnion<readonly [zod.ZodLiteral<"high-resolution">, zod.ZodLiteral<"mid-resolution">, zod.ZodLiteral<"low-resolution">]>;
@@ -601,29 +676,42 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
601
676
  streamingSource: zod.ZodUnion<readonly [zod.ZodLiteral<"high-resolution">, zod.ZodLiteral<"mid-resolution">, zod.ZodLiteral<"low-resolution">]>;
602
677
  aspectRatio: zod.ZodType<`${number}:${number}`, unknown, zod.z.core.$ZodTypeInternals<`${number}:${number}`, unknown>>;
603
678
  }, zod.z.core.$strip>>;
604
- detectionZones: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
605
- name: zod.ZodString;
606
- points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
607
- type: zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>;
608
- filter: zod.ZodUnion<readonly [zod.ZodLiteral<"include">, zod.ZodLiteral<"exclude">]>;
609
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
610
- isPrivacyMask: zod.ZodBoolean;
611
- color: zod.ZodDefault<zod.ZodString>;
612
- }, zod.z.core.$strip>>>;
613
- alertZones: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
614
- name: zod.ZodString;
615
- points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
616
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
617
- match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
618
- color: zod.ZodDefault<zod.ZodString>;
619
- }, zod.z.core.$strip>>>;
620
- detectionLines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
621
- name: zod.ZodString;
622
- points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
623
- direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
624
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
625
- color: zod.ZodDefault<zod.ZodString>;
626
- }, zod.z.core.$strip>>>;
679
+ zones: zod.ZodDefault<zod.ZodObject<{
680
+ privacyFallback: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"send">, zod.ZodLiteral<"drop">]>>;
681
+ motion: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
682
+ name: zod.ZodString;
683
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
684
+ color: zod.ZodDefault<zod.ZodString>;
685
+ }, zod.z.core.$strip>>>;
686
+ object: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
687
+ name: zod.ZodString;
688
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
689
+ type: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
690
+ labels: zod.ZodArray<zod.ZodType<ZoneLabel, unknown, zod.z.core.$ZodTypeInternals<ZoneLabel, unknown>>>;
691
+ color: zod.ZodDefault<zod.ZodString>;
692
+ }, zod.z.core.$strip>>>;
693
+ privacy: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
694
+ name: zod.ZodString;
695
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
696
+ dropDetections: zod.ZodDefault<zod.ZodBoolean>;
697
+ }, zod.z.core.$strip>>>;
698
+ alert: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
699
+ name: zod.ZodString;
700
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
701
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
702
+ faces: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
703
+ plates: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
704
+ match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
705
+ color: zod.ZodDefault<zod.ZodString>;
706
+ }, zod.z.core.$strip>>>;
707
+ lines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
708
+ name: zod.ZodString;
709
+ points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
710
+ direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
711
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
712
+ color: zod.ZodDefault<zod.ZodString>;
713
+ }, zod.z.core.$strip>>>;
714
+ }, zod.z.core.$strict>>;
627
715
  detectionSettings: zod.ZodDefault<zod.ZodObject<{
628
716
  motion: zod.ZodObject<{
629
717
  resolution: zod.ZodUnion<readonly [zod.ZodLiteral<"low">, zod.ZodLiteral<"medium">, zod.ZodLiteral<"high">]>;
@@ -631,7 +719,6 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
631
719
  }, zod.z.core.$strip>;
632
720
  object: zod.ZodObject<{
633
721
  confidence: zod.ZodNumber;
634
- labels: zod.ZodOptional<zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>>;
635
722
  suppressStatic: zod.ZodDefault<zod.ZodBoolean>;
636
723
  timeout: zod.ZodDefault<zod.ZodNumber>;
637
724
  }, zod.z.core.$strip>;
@@ -642,9 +729,11 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
642
729
  }, zod.z.core.$strip>;
643
730
  face: zod.ZodDefault<zod.ZodObject<{
644
731
  confidence: zod.ZodDefault<zod.ZodNumber>;
732
+ matchThreshold: zod.ZodDefault<zod.ZodNumber>;
645
733
  }, zod.z.core.$strip>>;
646
734
  licensePlate: zod.ZodDefault<zod.ZodObject<{
647
735
  confidence: zod.ZodDefault<zod.ZodNumber>;
736
+ ocrConfidence: zod.ZodDefault<zod.ZodNumber>;
648
737
  minLength: zod.ZodDefault<zod.ZodNumber>;
649
738
  }, zod.z.core.$strip>>;
650
739
  sensor: zod.ZodObject<{
@@ -665,6 +754,13 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
665
754
  panRate: zod.ZodDefault<zod.ZodNumber>;
666
755
  returnToHome: zod.ZodDefault<zod.ZodBoolean>;
667
756
  homeWaitMs: zod.ZodDefault<zod.ZodNumber>;
757
+ minTargetSize: zod.ZodDefault<zod.ZodNumber>;
758
+ maxTargetSize: zod.ZodDefault<zod.ZodNumber>;
759
+ activeHours: zod.ZodOptional<zod.ZodObject<{
760
+ from: zod.ZodString;
761
+ to: zod.ZodString;
762
+ timezone: zod.ZodString;
763
+ }, zod.z.core.$strip>>;
668
764
  }, zod.z.core.$strip>>;
669
765
  recordingSettings: zod.ZodDefault<zod.ZodObject<{
670
766
  enabled: zod.ZodDefault<zod.ZodBoolean>;
@@ -680,6 +776,18 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
680
776
  low: "low";
681
777
  }>>>;
682
778
  }, zod.z.core.$strict>>;
779
+ notificationSettings: zod.ZodDefault<zod.ZodObject<{
780
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
781
+ video: zod.ZodDefault<zod.ZodBoolean>;
782
+ audio: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
783
+ sensors: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
784
+ cooldown: zod.ZodDefault<zod.ZodNumber>;
785
+ speed: zod.ZodDefault<zod.ZodEnum<{
786
+ immediate: "immediate";
787
+ balanced: "balanced";
788
+ best: "best";
789
+ }>>;
790
+ }, zod.z.core.$strict>>;
683
791
  frameWorkerSettings: zod.ZodDefault<zod.ZodObject<{
684
792
  mainStreamAnalysis: zod.ZodDefault<zod.ZodBoolean>;
685
793
  decoder: zod.ZodOptional<zod.ZodObject<{
@@ -726,6 +834,7 @@ export declare const createCameraBaseSchema: zod.ZodObject<{
726
834
  } | null>>>;
727
835
  }, zod.z.core.$strip>>;
728
836
  }, zod.z.core.$strict>;
837
+ export declare function defaultCameraSettings(): Omit<zod.output<typeof createCameraBaseSchema>, '_id' | 'name' | 'sources' | 'nativeId' | 'pluginInfo'>;
729
838
  export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
730
839
  _id: zod.ZodPipe<zod.ZodDefault<zod.ZodString>, zod.ZodTransform<string, string>>;
731
840
  nativeId: zod.ZodOptional<zod.ZodString>;
@@ -933,29 +1042,42 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
933
1042
  streamingSource: zod.ZodUnion<readonly [zod.ZodLiteral<"high-resolution">, zod.ZodLiteral<"mid-resolution">, zod.ZodLiteral<"low-resolution">]>;
934
1043
  aspectRatio: zod.ZodType<`${number}:${number}`, unknown, zod.z.core.$ZodTypeInternals<`${number}:${number}`, unknown>>;
935
1044
  }, zod.z.core.$strip>>;
936
- detectionZones: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
937
- name: zod.ZodString;
938
- points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
939
- type: zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>;
940
- filter: zod.ZodUnion<readonly [zod.ZodLiteral<"include">, zod.ZodLiteral<"exclude">]>;
941
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
942
- isPrivacyMask: zod.ZodBoolean;
943
- color: zod.ZodDefault<zod.ZodString>;
944
- }, zod.z.core.$strip>>>;
945
- alertZones: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
946
- name: zod.ZodString;
947
- points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
948
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
949
- match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
950
- color: zod.ZodDefault<zod.ZodString>;
951
- }, zod.z.core.$strip>>>;
952
- detectionLines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
953
- name: zod.ZodString;
954
- points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
955
- direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
956
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
957
- color: zod.ZodDefault<zod.ZodString>;
958
- }, zod.z.core.$strip>>>;
1045
+ zones: zod.ZodDefault<zod.ZodObject<{
1046
+ privacyFallback: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"send">, zod.ZodLiteral<"drop">]>>;
1047
+ motion: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
1048
+ name: zod.ZodString;
1049
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
1050
+ color: zod.ZodDefault<zod.ZodString>;
1051
+ }, zod.z.core.$strip>>>;
1052
+ object: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
1053
+ name: zod.ZodString;
1054
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
1055
+ type: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
1056
+ labels: zod.ZodArray<zod.ZodType<ZoneLabel, unknown, zod.z.core.$ZodTypeInternals<ZoneLabel, unknown>>>;
1057
+ color: zod.ZodDefault<zod.ZodString>;
1058
+ }, zod.z.core.$strip>>>;
1059
+ privacy: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
1060
+ name: zod.ZodString;
1061
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
1062
+ dropDetections: zod.ZodDefault<zod.ZodBoolean>;
1063
+ }, zod.z.core.$strip>>>;
1064
+ alert: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
1065
+ name: zod.ZodString;
1066
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
1067
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
1068
+ faces: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
1069
+ plates: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
1070
+ match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
1071
+ color: zod.ZodDefault<zod.ZodString>;
1072
+ }, zod.z.core.$strip>>>;
1073
+ lines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
1074
+ name: zod.ZodString;
1075
+ points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
1076
+ direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
1077
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
1078
+ color: zod.ZodDefault<zod.ZodString>;
1079
+ }, zod.z.core.$strip>>>;
1080
+ }, zod.z.core.$strict>>;
959
1081
  detectionSettings: zod.ZodDefault<zod.ZodObject<{
960
1082
  motion: zod.ZodObject<{
961
1083
  resolution: zod.ZodUnion<readonly [zod.ZodLiteral<"low">, zod.ZodLiteral<"medium">, zod.ZodLiteral<"high">]>;
@@ -963,7 +1085,6 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
963
1085
  }, zod.z.core.$strip>;
964
1086
  object: zod.ZodObject<{
965
1087
  confidence: zod.ZodNumber;
966
- labels: zod.ZodOptional<zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>>;
967
1088
  suppressStatic: zod.ZodDefault<zod.ZodBoolean>;
968
1089
  timeout: zod.ZodDefault<zod.ZodNumber>;
969
1090
  }, zod.z.core.$strip>;
@@ -974,9 +1095,11 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
974
1095
  }, zod.z.core.$strip>;
975
1096
  face: zod.ZodDefault<zod.ZodObject<{
976
1097
  confidence: zod.ZodDefault<zod.ZodNumber>;
1098
+ matchThreshold: zod.ZodDefault<zod.ZodNumber>;
977
1099
  }, zod.z.core.$strip>>;
978
1100
  licensePlate: zod.ZodDefault<zod.ZodObject<{
979
1101
  confidence: zod.ZodDefault<zod.ZodNumber>;
1102
+ ocrConfidence: zod.ZodDefault<zod.ZodNumber>;
980
1103
  minLength: zod.ZodDefault<zod.ZodNumber>;
981
1104
  }, zod.z.core.$strip>>;
982
1105
  sensor: zod.ZodObject<{
@@ -997,6 +1120,13 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
997
1120
  panRate: zod.ZodDefault<zod.ZodNumber>;
998
1121
  returnToHome: zod.ZodDefault<zod.ZodBoolean>;
999
1122
  homeWaitMs: zod.ZodDefault<zod.ZodNumber>;
1123
+ minTargetSize: zod.ZodDefault<zod.ZodNumber>;
1124
+ maxTargetSize: zod.ZodDefault<zod.ZodNumber>;
1125
+ activeHours: zod.ZodOptional<zod.ZodObject<{
1126
+ from: zod.ZodString;
1127
+ to: zod.ZodString;
1128
+ timezone: zod.ZodString;
1129
+ }, zod.z.core.$strip>>;
1000
1130
  }, zod.z.core.$strip>>;
1001
1131
  recordingSettings: zod.ZodDefault<zod.ZodObject<{
1002
1132
  enabled: zod.ZodDefault<zod.ZodBoolean>;
@@ -1012,6 +1142,18 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1012
1142
  low: "low";
1013
1143
  }>>>;
1014
1144
  }, zod.z.core.$strict>>;
1145
+ notificationSettings: zod.ZodDefault<zod.ZodObject<{
1146
+ enabled: zod.ZodDefault<zod.ZodBoolean>;
1147
+ video: zod.ZodDefault<zod.ZodBoolean>;
1148
+ audio: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
1149
+ sensors: zod.ZodDefault<zod.ZodArray<zod.ZodString>>;
1150
+ cooldown: zod.ZodDefault<zod.ZodNumber>;
1151
+ speed: zod.ZodDefault<zod.ZodEnum<{
1152
+ immediate: "immediate";
1153
+ balanced: "balanced";
1154
+ best: "best";
1155
+ }>>;
1156
+ }, zod.z.core.$strict>>;
1015
1157
  frameWorkerSettings: zod.ZodDefault<zod.ZodObject<{
1016
1158
  mainStreamAnalysis: zod.ZodDefault<zod.ZodBoolean>;
1017
1159
  decoder: zod.ZodOptional<zod.ZodObject<{
@@ -1059,15 +1201,6 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1059
1201
  }, zod.z.core.$strip>>;
1060
1202
  }, zod.z.core.$strict>, zod.ZodTransform<{
1061
1203
  isCloud: boolean;
1062
- detectionZones: {
1063
- name: string;
1064
- points: [number, number][];
1065
- type: "intersect" | "contain";
1066
- filter: "include" | "exclude";
1067
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1068
- isPrivacyMask: boolean;
1069
- color: string;
1070
- }[];
1071
1204
  _id: string;
1072
1205
  disabled: boolean;
1073
1206
  name: string;
@@ -1248,20 +1381,42 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1248
1381
  streamingSource: "high-resolution" | "mid-resolution" | "low-resolution";
1249
1382
  aspectRatio: `${number}:${number}`;
1250
1383
  };
1251
- alertZones: {
1252
- name: string;
1253
- points: [number, number][];
1254
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1255
- match: "anchor" | "intersect" | "contain";
1256
- color: string;
1257
- }[];
1258
- detectionLines: {
1259
- name: string;
1260
- points: [[number, number], [number, number]];
1261
- direction: "both" | "a-to-b" | "b-to-a";
1262
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1263
- color: string;
1264
- }[];
1384
+ zones: {
1385
+ privacyFallback: "drop" | "send";
1386
+ motion: {
1387
+ name: string;
1388
+ points: [number, number][];
1389
+ color: string;
1390
+ }[];
1391
+ object: {
1392
+ name: string;
1393
+ points: [number, number][];
1394
+ type: "intersect" | "contain";
1395
+ labels: ZoneLabel[];
1396
+ color: string;
1397
+ }[];
1398
+ privacy: {
1399
+ name: string;
1400
+ points: [number, number][];
1401
+ dropDetections: boolean;
1402
+ }[];
1403
+ alert: {
1404
+ name: string;
1405
+ points: [number, number][];
1406
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1407
+ match: "anchor" | "intersect" | "contain";
1408
+ color: string;
1409
+ faces?: string[] | undefined;
1410
+ plates?: string[] | undefined;
1411
+ }[];
1412
+ lines: {
1413
+ name: string;
1414
+ points: [[number, number], [number, number]];
1415
+ direction: "both" | "a-to-b" | "b-to-a";
1416
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1417
+ color: string;
1418
+ }[];
1419
+ };
1265
1420
  detectionSettings: {
1266
1421
  motion: {
1267
1422
  resolution: "high" | "low" | "medium";
@@ -1271,7 +1426,6 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1271
1426
  confidence: number;
1272
1427
  suppressStatic: boolean;
1273
1428
  timeout: number;
1274
- labels?: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[] | undefined;
1275
1429
  };
1276
1430
  audio: {
1277
1431
  minDecibels: number;
@@ -1280,9 +1434,11 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1280
1434
  };
1281
1435
  face: {
1282
1436
  confidence: number;
1437
+ matchThreshold: number;
1283
1438
  };
1284
1439
  licensePlate: {
1285
1440
  confidence: number;
1441
+ ocrConfidence: number;
1286
1442
  minLength: number;
1287
1443
  };
1288
1444
  sensor: {
@@ -1303,6 +1459,13 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1303
1459
  panRate: number;
1304
1460
  returnToHome: boolean;
1305
1461
  homeWaitMs: number;
1462
+ minTargetSize: number;
1463
+ maxTargetSize: number;
1464
+ activeHours?: {
1465
+ from: string;
1466
+ to: string;
1467
+ timezone: string;
1468
+ } | undefined;
1306
1469
  };
1307
1470
  recordingSettings: {
1308
1471
  enabled: boolean;
@@ -1310,6 +1473,14 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1310
1473
  preBuffer: number;
1311
1474
  sources: ("high" | "mid" | "low")[];
1312
1475
  };
1476
+ notificationSettings: {
1477
+ enabled: boolean;
1478
+ video: boolean;
1479
+ audio: string[];
1480
+ sensors: string[];
1481
+ cooldown: number;
1482
+ speed: "immediate" | "balanced" | "best";
1483
+ };
1313
1484
  frameWorkerSettings: {
1314
1485
  mainStreamAnalysis: boolean;
1315
1486
  decoder?: {
@@ -1508,29 +1679,42 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1508
1679
  streamingSource: "high-resolution" | "mid-resolution" | "low-resolution";
1509
1680
  aspectRatio: `${number}:${number}`;
1510
1681
  };
1511
- detectionZones: {
1512
- name: string;
1513
- points: [number, number][];
1514
- type: "intersect" | "contain";
1515
- filter: "include" | "exclude";
1516
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1517
- isPrivacyMask: boolean;
1518
- color: string;
1519
- }[];
1520
- alertZones: {
1521
- name: string;
1522
- points: [number, number][];
1523
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1524
- match: "anchor" | "intersect" | "contain";
1525
- color: string;
1526
- }[];
1527
- detectionLines: {
1528
- name: string;
1529
- points: [[number, number], [number, number]];
1530
- direction: "both" | "a-to-b" | "b-to-a";
1531
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1532
- color: string;
1533
- }[];
1682
+ zones: {
1683
+ privacyFallback: "drop" | "send";
1684
+ motion: {
1685
+ name: string;
1686
+ points: [number, number][];
1687
+ color: string;
1688
+ }[];
1689
+ object: {
1690
+ name: string;
1691
+ points: [number, number][];
1692
+ type: "intersect" | "contain";
1693
+ labels: ZoneLabel[];
1694
+ color: string;
1695
+ }[];
1696
+ privacy: {
1697
+ name: string;
1698
+ points: [number, number][];
1699
+ dropDetections: boolean;
1700
+ }[];
1701
+ alert: {
1702
+ name: string;
1703
+ points: [number, number][];
1704
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1705
+ match: "anchor" | "intersect" | "contain";
1706
+ color: string;
1707
+ faces?: string[] | undefined;
1708
+ plates?: string[] | undefined;
1709
+ }[];
1710
+ lines: {
1711
+ name: string;
1712
+ points: [[number, number], [number, number]];
1713
+ direction: "both" | "a-to-b" | "b-to-a";
1714
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
1715
+ color: string;
1716
+ }[];
1717
+ };
1534
1718
  detectionSettings: {
1535
1719
  motion: {
1536
1720
  resolution: "high" | "low" | "medium";
@@ -1540,7 +1724,6 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1540
1724
  confidence: number;
1541
1725
  suppressStatic: boolean;
1542
1726
  timeout: number;
1543
- labels?: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[] | undefined;
1544
1727
  };
1545
1728
  audio: {
1546
1729
  minDecibels: number;
@@ -1549,9 +1732,11 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1549
1732
  };
1550
1733
  face: {
1551
1734
  confidence: number;
1735
+ matchThreshold: number;
1552
1736
  };
1553
1737
  licensePlate: {
1554
1738
  confidence: number;
1739
+ ocrConfidence: number;
1555
1740
  minLength: number;
1556
1741
  };
1557
1742
  sensor: {
@@ -1572,6 +1757,13 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1572
1757
  panRate: number;
1573
1758
  returnToHome: boolean;
1574
1759
  homeWaitMs: number;
1760
+ minTargetSize: number;
1761
+ maxTargetSize: number;
1762
+ activeHours?: {
1763
+ from: string;
1764
+ to: string;
1765
+ timezone: string;
1766
+ } | undefined;
1575
1767
  };
1576
1768
  recordingSettings: {
1577
1769
  enabled: boolean;
@@ -1579,6 +1771,14 @@ export declare const createCameraSchema: zod.ZodPipe<zod.ZodObject<{
1579
1771
  preBuffer: number;
1580
1772
  sources: ("high" | "mid" | "low")[];
1581
1773
  };
1774
+ notificationSettings: {
1775
+ enabled: boolean;
1776
+ video: boolean;
1777
+ audio: string[];
1778
+ sensors: string[];
1779
+ cooldown: number;
1780
+ speed: "immediate" | "balanced" | "best";
1781
+ };
1582
1782
  frameWorkerSettings: {
1583
1783
  mainStreamAnalysis: boolean;
1584
1784
  decoder?: {
@@ -1797,22 +1997,42 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
1797
1997
  streamingSource: zod.ZodOptional<zod.ZodUnion<readonly [zod.ZodLiteral<"high-resolution">, zod.ZodLiteral<"mid-resolution">, zod.ZodLiteral<"low-resolution">]>>;
1798
1998
  aspectRatio: zod.ZodOptional<zod.ZodType<`${number}:${number}`, unknown, zod.z.core.$ZodTypeInternals<`${number}:${number}`, unknown>>>;
1799
1999
  }, zod.z.core.$strip>>;
1800
- detectionZones: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1801
- name: zod.ZodString;
1802
- points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
1803
- type: zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>;
1804
- filter: zod.ZodUnion<readonly [zod.ZodLiteral<"include">, zod.ZodLiteral<"exclude">]>;
1805
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
1806
- isPrivacyMask: zod.ZodBoolean;
1807
- color: zod.ZodDefault<zod.ZodString>;
1808
- }, zod.z.core.$strip>>>;
1809
- detectionLines: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
1810
- name: zod.ZodString;
1811
- points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
1812
- direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
1813
- labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
1814
- color: zod.ZodDefault<zod.ZodString>;
1815
- }, zod.z.core.$strip>>>;
2000
+ zones: zod.ZodOptional<zod.ZodObject<{
2001
+ privacyFallback: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"send">, zod.ZodLiteral<"drop">]>>;
2002
+ motion: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
2003
+ name: zod.ZodString;
2004
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
2005
+ color: zod.ZodDefault<zod.ZodString>;
2006
+ }, zod.z.core.$strip>>>;
2007
+ object: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
2008
+ name: zod.ZodString;
2009
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
2010
+ type: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
2011
+ labels: zod.ZodArray<zod.ZodType<ZoneLabel, unknown, zod.z.core.$ZodTypeInternals<ZoneLabel, unknown>>>;
2012
+ color: zod.ZodDefault<zod.ZodString>;
2013
+ }, zod.z.core.$strip>>>;
2014
+ privacy: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
2015
+ name: zod.ZodString;
2016
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
2017
+ dropDetections: zod.ZodDefault<zod.ZodBoolean>;
2018
+ }, zod.z.core.$strip>>>;
2019
+ alert: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
2020
+ name: zod.ZodString;
2021
+ points: zod.ZodArray<zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>>;
2022
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
2023
+ faces: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
2024
+ plates: zod.ZodOptional<zod.ZodArray<zod.ZodString>>;
2025
+ match: zod.ZodDefault<zod.ZodUnion<readonly [zod.ZodLiteral<"anchor">, zod.ZodLiteral<"intersect">, zod.ZodLiteral<"contain">]>>;
2026
+ color: zod.ZodDefault<zod.ZodString>;
2027
+ }, zod.z.core.$strip>>>;
2028
+ lines: zod.ZodDefault<zod.ZodArray<zod.ZodObject<{
2029
+ name: zod.ZodString;
2030
+ points: zod.ZodTuple<[zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>, zod.ZodTuple<[zod.ZodNumber, zod.ZodNumber], null>], null>;
2031
+ direction: zod.ZodUnion<readonly [zod.ZodLiteral<"both">, zod.ZodLiteral<"a-to-b">, zod.ZodLiteral<"b-to-a">]>;
2032
+ labels: zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>;
2033
+ color: zod.ZodDefault<zod.ZodString>;
2034
+ }, zod.z.core.$strip>>>;
2035
+ }, zod.z.core.$strict>>;
1816
2036
  detectionSettings: zod.ZodOptional<zod.ZodObject<{
1817
2037
  motion: zod.ZodOptional<zod.ZodObject<{
1818
2038
  resolution: zod.ZodUnion<readonly [zod.ZodLiteral<"low">, zod.ZodLiteral<"medium">, zod.ZodLiteral<"high">]>;
@@ -1820,7 +2040,6 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
1820
2040
  }, zod.z.core.$strip>>;
1821
2041
  object: zod.ZodOptional<zod.ZodObject<{
1822
2042
  confidence: zod.ZodNumber;
1823
- labels: zod.ZodOptional<zod.ZodArray<zod.ZodType<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown, zod.z.core.$ZodTypeInternals<"audio" | "motion" | "person" | "vehicle" | "animal" | "package", unknown>>>>;
1824
2043
  suppressStatic: zod.ZodDefault<zod.ZodBoolean>;
1825
2044
  timeout: zod.ZodDefault<zod.ZodNumber>;
1826
2045
  }, zod.z.core.$strip>>;
@@ -1831,9 +2050,11 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
1831
2050
  }, zod.z.core.$strip>>;
1832
2051
  face: zod.ZodOptional<zod.ZodDefault<zod.ZodObject<{
1833
2052
  confidence: zod.ZodDefault<zod.ZodNumber>;
2053
+ matchThreshold: zod.ZodDefault<zod.ZodNumber>;
1834
2054
  }, zod.z.core.$strip>>>;
1835
2055
  licensePlate: zod.ZodOptional<zod.ZodDefault<zod.ZodObject<{
1836
2056
  confidence: zod.ZodDefault<zod.ZodNumber>;
2057
+ ocrConfidence: zod.ZodDefault<zod.ZodNumber>;
1837
2058
  minLength: zod.ZodDefault<zod.ZodNumber>;
1838
2059
  }, zod.z.core.$strip>>>;
1839
2060
  sensor: zod.ZodOptional<zod.ZodObject<{
@@ -1854,6 +2075,13 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
1854
2075
  panRate: zod.ZodOptional<zod.ZodDefault<zod.ZodNumber>>;
1855
2076
  returnToHome: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
1856
2077
  homeWaitMs: zod.ZodOptional<zod.ZodDefault<zod.ZodNumber>>;
2078
+ minTargetSize: zod.ZodOptional<zod.ZodDefault<zod.ZodNumber>>;
2079
+ maxTargetSize: zod.ZodOptional<zod.ZodDefault<zod.ZodNumber>>;
2080
+ activeHours: zod.ZodOptional<zod.ZodOptional<zod.ZodObject<{
2081
+ from: zod.ZodString;
2082
+ to: zod.ZodString;
2083
+ timezone: zod.ZodString;
2084
+ }, zod.z.core.$strip>>>;
1857
2085
  }, zod.z.core.$strip>>;
1858
2086
  recordingSettings: zod.ZodOptional<zod.ZodObject<{
1859
2087
  enabled: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
@@ -1869,6 +2097,18 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
1869
2097
  low: "low";
1870
2098
  }>>>>;
1871
2099
  }, zod.z.core.$strict>>;
2100
+ notificationSettings: zod.ZodOptional<zod.ZodObject<{
2101
+ enabled: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
2102
+ video: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
2103
+ audio: zod.ZodOptional<zod.ZodDefault<zod.ZodArray<zod.ZodString>>>;
2104
+ sensors: zod.ZodOptional<zod.ZodDefault<zod.ZodArray<zod.ZodString>>>;
2105
+ cooldown: zod.ZodOptional<zod.ZodDefault<zod.ZodNumber>>;
2106
+ speed: zod.ZodOptional<zod.ZodDefault<zod.ZodEnum<{
2107
+ immediate: "immediate";
2108
+ balanced: "balanced";
2109
+ best: "best";
2110
+ }>>>;
2111
+ }, zod.z.core.$strict>>;
1872
2112
  frameWorkerSettings: zod.ZodOptional<zod.ZodObject<{
1873
2113
  mainStreamAnalysis: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
1874
2114
  decoder: zod.ZodOptional<zod.ZodOptional<zod.ZodObject<{
@@ -2095,22 +2335,42 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2095
2335
  streamingSource?: "high-resolution" | "mid-resolution" | "low-resolution" | undefined;
2096
2336
  aspectRatio?: `${number}:${number}` | undefined;
2097
2337
  } | undefined;
2098
- detectionZones?: {
2099
- name: string;
2100
- points: [number, number][];
2101
- type: "intersect" | "contain";
2102
- filter: "include" | "exclude";
2103
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2104
- isPrivacyMask: boolean;
2105
- color: string;
2106
- }[] | undefined;
2107
- detectionLines?: {
2108
- name: string;
2109
- points: [[number, number], [number, number]];
2110
- direction: "both" | "a-to-b" | "b-to-a";
2111
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2112
- color: string;
2113
- }[] | undefined;
2338
+ zones?: {
2339
+ privacyFallback: "drop" | "send";
2340
+ motion: {
2341
+ name: string;
2342
+ points: [number, number][];
2343
+ color: string;
2344
+ }[];
2345
+ object: {
2346
+ name: string;
2347
+ points: [number, number][];
2348
+ type: "intersect" | "contain";
2349
+ labels: ZoneLabel[];
2350
+ color: string;
2351
+ }[];
2352
+ privacy: {
2353
+ name: string;
2354
+ points: [number, number][];
2355
+ dropDetections: boolean;
2356
+ }[];
2357
+ alert: {
2358
+ name: string;
2359
+ points: [number, number][];
2360
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2361
+ match: "anchor" | "intersect" | "contain";
2362
+ color: string;
2363
+ faces?: string[] | undefined;
2364
+ plates?: string[] | undefined;
2365
+ }[];
2366
+ lines: {
2367
+ name: string;
2368
+ points: [[number, number], [number, number]];
2369
+ direction: "both" | "a-to-b" | "b-to-a";
2370
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2371
+ color: string;
2372
+ }[];
2373
+ } | undefined;
2114
2374
  detectionSettings?: {
2115
2375
  motion?: {
2116
2376
  resolution: "high" | "low" | "medium";
@@ -2120,7 +2380,6 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2120
2380
  confidence: number;
2121
2381
  suppressStatic: boolean;
2122
2382
  timeout: number;
2123
- labels?: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[] | undefined;
2124
2383
  } | undefined;
2125
2384
  audio?: {
2126
2385
  minDecibels: number;
@@ -2129,9 +2388,11 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2129
2388
  } | undefined;
2130
2389
  face?: {
2131
2390
  confidence: number;
2391
+ matchThreshold: number;
2132
2392
  } | undefined;
2133
2393
  licensePlate?: {
2134
2394
  confidence: number;
2395
+ ocrConfidence: number;
2135
2396
  minLength: number;
2136
2397
  } | undefined;
2137
2398
  sensor?: {
@@ -2152,6 +2413,13 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2152
2413
  panRate?: number | undefined;
2153
2414
  returnToHome?: boolean | undefined;
2154
2415
  homeWaitMs?: number | undefined;
2416
+ minTargetSize?: number | undefined;
2417
+ maxTargetSize?: number | undefined;
2418
+ activeHours?: {
2419
+ from: string;
2420
+ to: string;
2421
+ timezone: string;
2422
+ } | undefined;
2155
2423
  } | undefined;
2156
2424
  recordingSettings?: {
2157
2425
  enabled?: boolean | undefined;
@@ -2159,6 +2427,14 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2159
2427
  preBuffer?: number | undefined;
2160
2428
  sources?: ("high" | "mid" | "low")[] | undefined;
2161
2429
  } | undefined;
2430
+ notificationSettings?: {
2431
+ enabled?: boolean | undefined;
2432
+ video?: boolean | undefined;
2433
+ audio?: string[] | undefined;
2434
+ sensors?: string[] | undefined;
2435
+ cooldown?: number | undefined;
2436
+ speed?: "immediate" | "balanced" | "best" | undefined;
2437
+ } | undefined;
2162
2438
  frameWorkerSettings?: {
2163
2439
  mainStreamAnalysis?: boolean | undefined;
2164
2440
  decoder?: {
@@ -2351,22 +2627,42 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2351
2627
  streamingSource?: "high-resolution" | "mid-resolution" | "low-resolution" | undefined;
2352
2628
  aspectRatio?: `${number}:${number}` | undefined;
2353
2629
  } | undefined;
2354
- detectionZones?: {
2355
- name: string;
2356
- points: [number, number][];
2357
- type: "intersect" | "contain";
2358
- filter: "include" | "exclude";
2359
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2360
- isPrivacyMask: boolean;
2361
- color: string;
2362
- }[] | undefined;
2363
- detectionLines?: {
2364
- name: string;
2365
- points: [[number, number], [number, number]];
2366
- direction: "both" | "a-to-b" | "b-to-a";
2367
- labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2368
- color: string;
2369
- }[] | undefined;
2630
+ zones?: {
2631
+ privacyFallback: "drop" | "send";
2632
+ motion: {
2633
+ name: string;
2634
+ points: [number, number][];
2635
+ color: string;
2636
+ }[];
2637
+ object: {
2638
+ name: string;
2639
+ points: [number, number][];
2640
+ type: "intersect" | "contain";
2641
+ labels: ZoneLabel[];
2642
+ color: string;
2643
+ }[];
2644
+ privacy: {
2645
+ name: string;
2646
+ points: [number, number][];
2647
+ dropDetections: boolean;
2648
+ }[];
2649
+ alert: {
2650
+ name: string;
2651
+ points: [number, number][];
2652
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2653
+ match: "anchor" | "intersect" | "contain";
2654
+ color: string;
2655
+ faces?: string[] | undefined;
2656
+ plates?: string[] | undefined;
2657
+ }[];
2658
+ lines: {
2659
+ name: string;
2660
+ points: [[number, number], [number, number]];
2661
+ direction: "both" | "a-to-b" | "b-to-a";
2662
+ labels: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[];
2663
+ color: string;
2664
+ }[];
2665
+ } | undefined;
2370
2666
  detectionSettings?: {
2371
2667
  motion?: {
2372
2668
  resolution: "high" | "low" | "medium";
@@ -2376,7 +2672,6 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2376
2672
  confidence: number;
2377
2673
  suppressStatic: boolean;
2378
2674
  timeout: number;
2379
- labels?: ("audio" | "motion" | "person" | "vehicle" | "animal" | "package")[] | undefined;
2380
2675
  } | undefined;
2381
2676
  audio?: {
2382
2677
  minDecibels: number;
@@ -2385,9 +2680,11 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2385
2680
  } | undefined;
2386
2681
  face?: {
2387
2682
  confidence: number;
2683
+ matchThreshold: number;
2388
2684
  } | undefined;
2389
2685
  licensePlate?: {
2390
2686
  confidence: number;
2687
+ ocrConfidence: number;
2391
2688
  minLength: number;
2392
2689
  } | undefined;
2393
2690
  sensor?: {
@@ -2408,6 +2705,13 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2408
2705
  panRate?: number | undefined;
2409
2706
  returnToHome?: boolean | undefined;
2410
2707
  homeWaitMs?: number | undefined;
2708
+ minTargetSize?: number | undefined;
2709
+ maxTargetSize?: number | undefined;
2710
+ activeHours?: {
2711
+ from: string;
2712
+ to: string;
2713
+ timezone: string;
2714
+ } | undefined;
2411
2715
  } | undefined;
2412
2716
  recordingSettings?: {
2413
2717
  enabled?: boolean | undefined;
@@ -2415,6 +2719,14 @@ export declare const patchCameraSchema: zod.ZodPipe<zod.ZodObject<{
2415
2719
  preBuffer?: number | undefined;
2416
2720
  sources?: ("high" | "mid" | "low")[] | undefined;
2417
2721
  } | undefined;
2722
+ notificationSettings?: {
2723
+ enabled?: boolean | undefined;
2724
+ video?: boolean | undefined;
2725
+ audio?: string[] | undefined;
2726
+ sensors?: string[] | undefined;
2727
+ cooldown?: number | undefined;
2728
+ speed?: "immediate" | "balanced" | "best" | undefined;
2729
+ } | undefined;
2418
2730
  frameWorkerSettings?: {
2419
2731
  mainStreamAnalysis?: boolean | undefined;
2420
2732
  decoder?: {