@photivra/engine 0.5.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (753) hide show
  1. package/AGENTS.md +674 -0
  2. package/CHANGELOG.md +218 -0
  3. package/CITATION.cff +1 -1
  4. package/CONTRIBUTING.md +76 -0
  5. package/DCO +33 -0
  6. package/NODE_SUPPORT.md +37 -0
  7. package/NOTICE +2 -0
  8. package/README.md +157 -56
  9. package/SECURITY.md +55 -0
  10. package/THIRD_PARTY.md +63 -0
  11. package/dist/camera/equivalent-focal-length.d.ts +9 -0
  12. package/dist/camera/equivalent-focal-length.d.ts.map +1 -1
  13. package/dist/camera/equivalent-focal-length.js +9 -0
  14. package/dist/camera/equivalent-focal-length.js.map +1 -1
  15. package/dist/camera/field-of-view.d.ts +13 -0
  16. package/dist/camera/field-of-view.d.ts.map +1 -1
  17. package/dist/camera/field-of-view.js +13 -0
  18. package/dist/camera/field-of-view.js.map +1 -1
  19. package/dist/camera/projected-object-size.d.ts +8 -0
  20. package/dist/camera/projected-object-size.d.ts.map +1 -1
  21. package/dist/camera/projected-object-size.js +8 -0
  22. package/dist/camera/projected-object-size.js.map +1 -1
  23. package/dist/capture/capture-export-metadata.d.ts +60 -0
  24. package/dist/capture/capture-export-metadata.d.ts.map +1 -0
  25. package/dist/capture/capture-export-metadata.js +62 -0
  26. package/dist/capture/capture-export-metadata.js.map +1 -0
  27. package/dist/capture/environment-raw-producer.d.ts +55 -0
  28. package/dist/capture/environment-raw-producer.d.ts.map +1 -0
  29. package/dist/capture/environment-raw-producer.js +88 -0
  30. package/dist/capture/environment-raw-producer.js.map +1 -0
  31. package/dist/capture/export-jpeg.d.ts +12 -0
  32. package/dist/capture/export-jpeg.d.ts.map +1 -0
  33. package/dist/capture/export-jpeg.js +126 -0
  34. package/dist/capture/export-jpeg.js.map +1 -0
  35. package/dist/capture/export-tiff.d.ts +45 -0
  36. package/dist/capture/export-tiff.d.ts.map +1 -0
  37. package/dist/capture/export-tiff.js +129 -0
  38. package/dist/capture/export-tiff.js.map +1 -0
  39. package/dist/capture/focus-control.d.ts +210 -0
  40. package/dist/capture/focus-control.d.ts.map +1 -0
  41. package/dist/capture/focus-control.js +664 -0
  42. package/dist/capture/focus-control.js.map +1 -0
  43. package/dist/capture/linear-encoding.d.ts +59 -0
  44. package/dist/capture/linear-encoding.d.ts.map +1 -0
  45. package/dist/capture/linear-encoding.js +98 -0
  46. package/dist/capture/linear-encoding.js.map +1 -0
  47. package/dist/capture/photographic-export.d.ts +135 -0
  48. package/dist/capture/photographic-export.d.ts.map +1 -0
  49. package/dist/capture/photographic-export.js +273 -0
  50. package/dist/capture/photographic-export.js.map +1 -0
  51. package/dist/capture/raw-frame-limits.d.ts +12 -0
  52. package/dist/capture/raw-frame-limits.d.ts.map +1 -0
  53. package/dist/capture/raw-frame-limits.js +13 -0
  54. package/dist/capture/raw-frame-limits.js.map +1 -0
  55. package/dist/capture/raw-frame-reconstruction.d.ts +48 -0
  56. package/dist/capture/raw-frame-reconstruction.d.ts.map +1 -0
  57. package/dist/capture/raw-frame-reconstruction.js +146 -0
  58. package/dist/capture/raw-frame-reconstruction.js.map +1 -0
  59. package/dist/capture/release-sequence.d.ts +120 -0
  60. package/dist/capture/release-sequence.d.ts.map +1 -0
  61. package/dist/capture/release-sequence.js +446 -0
  62. package/dist/capture/release-sequence.js.map +1 -0
  63. package/dist/capture/sensor-raw-frame.d.ts +34 -0
  64. package/dist/capture/sensor-raw-frame.d.ts.map +1 -0
  65. package/dist/capture/sensor-raw-frame.js +106 -0
  66. package/dist/capture/sensor-raw-frame.js.map +1 -0
  67. package/dist/capture/sensor-raw-producer.d.ts +51 -0
  68. package/dist/capture/sensor-raw-producer.d.ts.map +1 -0
  69. package/dist/capture/sensor-raw-producer.js +235 -0
  70. package/dist/capture/sensor-raw-producer.js.map +1 -0
  71. package/dist/capture/simulated-capture.d.ts +125 -0
  72. package/dist/capture/simulated-capture.d.ts.map +1 -0
  73. package/dist/capture/simulated-capture.js +248 -0
  74. package/dist/capture/simulated-capture.js.map +1 -0
  75. package/dist/color/capture-color.d.ts +73 -0
  76. package/dist/color/capture-color.d.ts.map +1 -0
  77. package/dist/color/capture-color.js +145 -0
  78. package/dist/color/capture-color.js.map +1 -0
  79. package/dist/color/sensor-color-development.d.ts +23 -0
  80. package/dist/color/sensor-color-development.d.ts.map +1 -0
  81. package/dist/color/sensor-color-development.js +56 -0
  82. package/dist/color/sensor-color-development.js.map +1 -0
  83. package/dist/color/white-balance.d.ts +175 -0
  84. package/dist/color/white-balance.d.ts.map +1 -0
  85. package/dist/color/white-balance.js +606 -0
  86. package/dist/color/white-balance.js.map +1 -0
  87. package/dist/composition/image-formation-plan.d.ts +481 -0
  88. package/dist/composition/image-formation-plan.d.ts.map +1 -0
  89. package/dist/composition/image-formation-plan.js +2499 -0
  90. package/dist/composition/image-formation-plan.js.map +1 -0
  91. package/dist/composition/plan-consumer.d.ts +53 -0
  92. package/dist/composition/plan-consumer.d.ts.map +1 -0
  93. package/dist/composition/plan-consumer.js +119 -0
  94. package/dist/composition/plan-consumer.js.map +1 -0
  95. package/dist/core/calculation-result.d.ts.map +1 -1
  96. package/dist/core/calculation-result.js +6 -0
  97. package/dist/core/calculation-result.js.map +1 -1
  98. package/dist/core/canonical-json.d.ts +18 -0
  99. package/dist/core/canonical-json.d.ts.map +1 -0
  100. package/dist/core/canonical-json.js +44 -0
  101. package/dist/core/canonical-json.js.map +1 -0
  102. package/dist/core/configuration-error.d.ts +6 -0
  103. package/dist/core/configuration-error.d.ts.map +1 -1
  104. package/dist/core/configuration-error.js +6 -0
  105. package/dist/core/configuration-error.js.map +1 -1
  106. package/dist/core/evidence-provenance.d.ts +6 -0
  107. package/dist/core/evidence-provenance.d.ts.map +1 -1
  108. package/dist/core/evidence-provenance.js +7 -0
  109. package/dist/core/evidence-provenance.js.map +1 -1
  110. package/dist/core/image-formation.d.ts +9 -3
  111. package/dist/core/image-formation.d.ts.map +1 -1
  112. package/dist/core/image-formation.js +29 -5
  113. package/dist/core/image-formation.js.map +1 -1
  114. package/dist/core/owned-data.d.ts +25 -0
  115. package/dist/core/owned-data.d.ts.map +1 -0
  116. package/dist/core/owned-data.js +34 -0
  117. package/dist/core/owned-data.js.map +1 -0
  118. package/dist/core/record-validation.d.ts +17 -0
  119. package/dist/core/record-validation.d.ts.map +1 -0
  120. package/dist/core/record-validation.js +44 -0
  121. package/dist/core/record-validation.js.map +1 -0
  122. package/dist/core/scientific-assurance.d.ts +101 -0
  123. package/dist/core/scientific-assurance.d.ts.map +1 -0
  124. package/dist/core/scientific-assurance.js +301 -0
  125. package/dist/core/scientific-assurance.js.map +1 -0
  126. package/dist/core/spectral-composition.d.ts +106 -0
  127. package/dist/core/spectral-composition.d.ts.map +1 -0
  128. package/dist/core/spectral-composition.js +334 -0
  129. package/dist/core/spectral-composition.js.map +1 -0
  130. package/dist/core/spectral.d.ts +34 -0
  131. package/dist/core/spectral.d.ts.map +1 -0
  132. package/dist/core/spectral.js +57 -0
  133. package/dist/core/spectral.js.map +1 -0
  134. package/dist/core/validation.d.ts +6 -0
  135. package/dist/core/validation.d.ts.map +1 -1
  136. package/dist/core/validation.js +6 -0
  137. package/dist/core/validation.js.map +1 -1
  138. package/dist/core/version.d.ts +14 -0
  139. package/dist/core/version.d.ts.map +1 -0
  140. package/dist/core/version.js +15 -0
  141. package/dist/core/version.js.map +1 -0
  142. package/dist/equipment/exposure-capabilities.d.ts +125 -0
  143. package/dist/equipment/exposure-capabilities.d.ts.map +1 -0
  144. package/dist/equipment/exposure-capabilities.js +391 -0
  145. package/dist/equipment/exposure-capabilities.js.map +1 -0
  146. package/dist/equipment/generic-tier-assets.d.ts +82 -0
  147. package/dist/equipment/generic-tier-assets.d.ts.map +1 -0
  148. package/dist/equipment/generic-tier-assets.js +119 -0
  149. package/dist/equipment/generic-tier-assets.js.map +1 -0
  150. package/dist/equipment/generic-tier-presets.d.ts +57 -0
  151. package/dist/equipment/generic-tier-presets.d.ts.map +1 -0
  152. package/dist/equipment/generic-tier-presets.js +122 -0
  153. package/dist/equipment/generic-tier-presets.js.map +1 -0
  154. package/dist/equipment/iso-capabilities.d.ts +143 -0
  155. package/dist/equipment/iso-capabilities.d.ts.map +1 -0
  156. package/dist/equipment/iso-capabilities.js +578 -0
  157. package/dist/equipment/iso-capabilities.js.map +1 -0
  158. package/dist/equipment/metering-capabilities.d.ts +58 -0
  159. package/dist/equipment/metering-capabilities.d.ts.map +1 -0
  160. package/dist/equipment/metering-capabilities.js +151 -0
  161. package/dist/equipment/metering-capabilities.js.map +1 -0
  162. package/dist/equipment/release-capabilities.d.ts +33 -0
  163. package/dist/equipment/release-capabilities.d.ts.map +1 -0
  164. package/dist/equipment/release-capabilities.js +176 -0
  165. package/dist/equipment/release-capabilities.js.map +1 -0
  166. package/dist/exposure/exposure-duration-control.d.ts +72 -0
  167. package/dist/exposure/exposure-duration-control.d.ts.map +1 -0
  168. package/dist/exposure/exposure-duration-control.js +161 -0
  169. package/dist/exposure/exposure-duration-control.js.map +1 -0
  170. package/dist/exposure/exposure-mode-resolver.d.ts +637 -0
  171. package/dist/exposure/exposure-mode-resolver.d.ts.map +1 -0
  172. package/dist/exposure/exposure-mode-resolver.js +1905 -0
  173. package/dist/exposure/exposure-mode-resolver.js.map +1 -0
  174. package/dist/exposure/exposure.d.ts +8 -0
  175. package/dist/exposure/exposure.d.ts.map +1 -1
  176. package/dist/exposure/exposure.js +8 -0
  177. package/dist/exposure/exposure.js.map +1 -1
  178. package/dist/exposure/flash.d.ts +179 -0
  179. package/dist/exposure/flash.d.ts.map +1 -0
  180. package/dist/exposure/flash.js +644 -0
  181. package/dist/exposure/flash.js.map +1 -0
  182. package/dist/exposure/metering-scene-radiance.d.ts +72 -0
  183. package/dist/exposure/metering-scene-radiance.d.ts.map +1 -0
  184. package/dist/exposure/metering-scene-radiance.js +222 -0
  185. package/dist/exposure/metering-scene-radiance.js.map +1 -0
  186. package/dist/exposure/metering-target.d.ts +67 -0
  187. package/dist/exposure/metering-target.d.ts.map +1 -0
  188. package/dist/exposure/metering-target.js +265 -0
  189. package/dist/exposure/metering-target.js.map +1 -0
  190. package/dist/exposure/metering-temporal.d.ts +76 -0
  191. package/dist/exposure/metering-temporal.d.ts.map +1 -0
  192. package/dist/exposure/metering-temporal.js +210 -0
  193. package/dist/exposure/metering-temporal.js.map +1 -0
  194. package/dist/exposure/metering.d.ts +124 -0
  195. package/dist/exposure/metering.d.ts.map +1 -0
  196. package/dist/exposure/metering.js +422 -0
  197. package/dist/exposure/metering.js.map +1 -0
  198. package/dist/exposure/program-line.d.ts +29 -0
  199. package/dist/exposure/program-line.d.ts.map +1 -0
  200. package/dist/exposure/program-line.js +126 -0
  201. package/dist/exposure/program-line.js.map +1 -0
  202. package/dist/index.d.ts +101 -7
  203. package/dist/index.d.ts.map +1 -1
  204. package/dist/index.js +99 -7
  205. package/dist/index.js.map +1 -1
  206. package/dist/motion/camera-rotation.d.ts +76 -0
  207. package/dist/motion/camera-rotation.d.ts.map +1 -1
  208. package/dist/motion/camera-rotation.js +111 -0
  209. package/dist/motion/camera-rotation.js.map +1 -1
  210. package/dist/motion/capture-rotation-inverse-mapping.d.ts +113 -0
  211. package/dist/motion/capture-rotation-inverse-mapping.d.ts.map +1 -0
  212. package/dist/motion/capture-rotation-inverse-mapping.js +184 -0
  213. package/dist/motion/capture-rotation-inverse-mapping.js.map +1 -0
  214. package/dist/motion/capture-rotation-temporal-quadrature.d.ts +104 -0
  215. package/dist/motion/capture-rotation-temporal-quadrature.d.ts.map +1 -0
  216. package/dist/motion/capture-rotation-temporal-quadrature.js +131 -0
  217. package/dist/motion/capture-rotation-temporal-quadrature.js.map +1 -0
  218. package/dist/motion/capture-rotation-trajectory.d.ts +113 -0
  219. package/dist/motion/capture-rotation-trajectory.d.ts.map +1 -0
  220. package/dist/motion/capture-rotation-trajectory.js +168 -0
  221. package/dist/motion/capture-rotation-trajectory.js.map +1 -0
  222. package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts +119 -0
  223. package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts.map +1 -0
  224. package/dist/motion/capture-translation-parallax-temporal-quadrature.js +263 -0
  225. package/dist/motion/capture-translation-parallax-temporal-quadrature.js.map +1 -0
  226. package/dist/motion/extended-object-projection.d.ts +175 -0
  227. package/dist/motion/extended-object-projection.d.ts.map +1 -0
  228. package/dist/motion/extended-object-projection.js +402 -0
  229. package/dist/motion/extended-object-projection.js.map +1 -0
  230. package/dist/motion/projected-motion.d.ts +11 -0
  231. package/dist/motion/projected-motion.d.ts.map +1 -1
  232. package/dist/motion/projected-motion.js +11 -0
  233. package/dist/motion/projected-motion.js.map +1 -1
  234. package/dist/optics/aperture.d.ts +9 -0
  235. package/dist/optics/aperture.d.ts.map +1 -1
  236. package/dist/optics/aperture.js +9 -0
  237. package/dist/optics/aperture.js.map +1 -1
  238. package/dist/optics/circle-of-confusion.d.ts +8 -0
  239. package/dist/optics/circle-of-confusion.d.ts.map +1 -1
  240. package/dist/optics/circle-of-confusion.js +8 -0
  241. package/dist/optics/circle-of-confusion.js.map +1 -1
  242. package/dist/optics/complex-pupil-psf.d.ts +128 -0
  243. package/dist/optics/complex-pupil-psf.d.ts.map +1 -0
  244. package/dist/optics/complex-pupil-psf.js +462 -0
  245. package/dist/optics/complex-pupil-psf.js.map +1 -0
  246. package/dist/optics/depth-of-field.d.ts +18 -0
  247. package/dist/optics/depth-of-field.d.ts.map +1 -1
  248. package/dist/optics/depth-of-field.js +29 -4
  249. package/dist/optics/depth-of-field.js.map +1 -1
  250. package/dist/optics/diffraction.d.ts +8 -0
  251. package/dist/optics/diffraction.d.ts.map +1 -1
  252. package/dist/optics/diffraction.js +8 -0
  253. package/dist/optics/diffraction.js.map +1 -1
  254. package/dist/optics/focus-breathing.d.ts +13 -0
  255. package/dist/optics/focus-breathing.d.ts.map +1 -1
  256. package/dist/optics/focus-breathing.js +13 -0
  257. package/dist/optics/focus-breathing.js.map +1 -1
  258. package/dist/optics/focus-state.d.ts +47 -0
  259. package/dist/optics/focus-state.d.ts.map +1 -0
  260. package/dist/optics/focus-state.js +78 -0
  261. package/dist/optics/focus-state.js.map +1 -0
  262. package/dist/optics/front-of-lens-filter.d.ts +114 -0
  263. package/dist/optics/front-of-lens-filter.d.ts.map +1 -0
  264. package/dist/optics/front-of-lens-filter.js +468 -0
  265. package/dist/optics/front-of-lens-filter.js.map +1 -0
  266. package/dist/optics/illumination-vignetting.d.ts +9 -0
  267. package/dist/optics/illumination-vignetting.d.ts.map +1 -1
  268. package/dist/optics/illumination-vignetting.js +9 -0
  269. package/dist/optics/illumination-vignetting.js.map +1 -1
  270. package/dist/optics/lateral-chromatic-aberration.d.ts +11 -0
  271. package/dist/optics/lateral-chromatic-aberration.d.ts.map +1 -1
  272. package/dist/optics/lateral-chromatic-aberration.js +23 -4
  273. package/dist/optics/lateral-chromatic-aberration.js.map +1 -1
  274. package/dist/optics/lens-psf-profile.d.ts +217 -0
  275. package/dist/optics/lens-psf-profile.d.ts.map +1 -0
  276. package/dist/optics/lens-psf-profile.js +823 -0
  277. package/dist/optics/lens-psf-profile.js.map +1 -0
  278. package/dist/optics/polygon-diffraction.d.ts +67 -0
  279. package/dist/optics/polygon-diffraction.d.ts.map +1 -0
  280. package/dist/optics/polygon-diffraction.js +145 -0
  281. package/dist/optics/polygon-diffraction.js.map +1 -0
  282. package/dist/optics/profile-contract.d.ts +42 -0
  283. package/dist/optics/profile-contract.d.ts.map +1 -0
  284. package/dist/optics/profile-contract.js +92 -0
  285. package/dist/optics/profile-contract.js.map +1 -0
  286. package/dist/optics/psf-foundation.d.ts +16 -3
  287. package/dist/optics/psf-foundation.d.ts.map +1 -1
  288. package/dist/optics/psf-foundation.js +28 -15
  289. package/dist/optics/psf-foundation.js.map +1 -1
  290. package/dist/optics/radial-distortion.d.ts +22 -2
  291. package/dist/optics/radial-distortion.d.ts.map +1 -1
  292. package/dist/optics/radial-distortion.js +101 -23
  293. package/dist/optics/radial-distortion.js.map +1 -1
  294. package/dist/optics/scene-to-sensor-irradiance.d.ts +213 -0
  295. package/dist/optics/scene-to-sensor-irradiance.d.ts.map +1 -0
  296. package/dist/optics/scene-to-sensor-irradiance.js +662 -0
  297. package/dist/optics/scene-to-sensor-irradiance.js.map +1 -0
  298. package/dist/optics/scene-to-sensor-quadrature.d.ts +63 -0
  299. package/dist/optics/scene-to-sensor-quadrature.d.ts.map +1 -0
  300. package/dist/optics/scene-to-sensor-quadrature.js +82 -0
  301. package/dist/optics/scene-to-sensor-quadrature.js.map +1 -0
  302. package/dist/optics/sensor-environment-query.d.ts +60 -0
  303. package/dist/optics/sensor-environment-query.d.ts.map +1 -0
  304. package/dist/optics/sensor-environment-query.js +50 -0
  305. package/dist/optics/sensor-environment-query.js.map +1 -0
  306. package/dist/optics/sensor-psf-quadrature.d.ts +70 -0
  307. package/dist/optics/sensor-psf-quadrature.d.ts.map +1 -0
  308. package/dist/optics/sensor-psf-quadrature.js +101 -0
  309. package/dist/optics/sensor-psf-quadrature.js.map +1 -0
  310. package/dist/optics/sensor-psf-support.d.ts +20 -0
  311. package/dist/optics/sensor-psf-support.d.ts.map +1 -0
  312. package/dist/optics/sensor-psf-support.js +13 -0
  313. package/dist/optics/sensor-psf-support.js.map +1 -0
  314. package/dist/optics/stray-light.d.ts +91 -0
  315. package/dist/optics/stray-light.d.ts.map +1 -0
  316. package/dist/optics/stray-light.js +110 -0
  317. package/dist/optics/stray-light.js.map +1 -0
  318. package/dist/optics/thin-lens.d.ts +8 -0
  319. package/dist/optics/thin-lens.d.ts.map +1 -1
  320. package/dist/optics/thin-lens.js +8 -0
  321. package/dist/optics/thin-lens.js.map +1 -1
  322. package/dist/output/capture-corrected-sdr.d.ts +49 -0
  323. package/dist/output/capture-corrected-sdr.d.ts.map +1 -0
  324. package/dist/output/capture-corrected-sdr.js +149 -0
  325. package/dist/output/capture-corrected-sdr.js.map +1 -0
  326. package/dist/output/capture-geometry.d.ts.map +1 -1
  327. package/dist/output/capture-geometry.js +32 -11
  328. package/dist/output/capture-geometry.js.map +1 -1
  329. package/dist/output/capture-sdr.d.ts +49 -0
  330. package/dist/output/capture-sdr.d.ts.map +1 -0
  331. package/dist/output/capture-sdr.js +90 -0
  332. package/dist/output/capture-sdr.js.map +1 -0
  333. package/dist/output/crop.d.ts +6 -0
  334. package/dist/output/crop.d.ts.map +1 -1
  335. package/dist/output/crop.js +6 -0
  336. package/dist/output/crop.js.map +1 -1
  337. package/dist/output/geometric-transforms.d.ts +137 -0
  338. package/dist/output/geometric-transforms.d.ts.map +1 -0
  339. package/dist/output/geometric-transforms.js +225 -0
  340. package/dist/output/geometric-transforms.js.map +1 -0
  341. package/dist/output/lens-corrections.d.ts +121 -0
  342. package/dist/output/lens-corrections.d.ts.map +1 -0
  343. package/dist/output/lens-corrections.js +210 -0
  344. package/dist/output/lens-corrections.js.map +1 -0
  345. package/dist/output/sdr-rendering.d.ts +81 -0
  346. package/dist/output/sdr-rendering.d.ts.map +1 -0
  347. package/dist/output/sdr-rendering.js +106 -0
  348. package/dist/output/sdr-rendering.js.map +1 -0
  349. package/dist/output/subject-framing-crop.d.ts +8 -0
  350. package/dist/output/subject-framing-crop.d.ts.map +1 -1
  351. package/dist/output/subject-framing-crop.js +8 -0
  352. package/dist/output/subject-framing-crop.js.map +1 -1
  353. package/dist/schema/camera.d.ts +6 -0
  354. package/dist/schema/camera.d.ts.map +1 -1
  355. package/dist/schema/illumination-spectral.d.ts +51 -0
  356. package/dist/schema/illumination-spectral.d.ts.map +1 -0
  357. package/dist/schema/illumination-spectral.js +132 -0
  358. package/dist/schema/illumination-spectral.js.map +1 -0
  359. package/dist/schema/illumination-temporal.d.ts +156 -0
  360. package/dist/schema/illumination-temporal.d.ts.map +1 -0
  361. package/dist/schema/illumination-temporal.js +554 -0
  362. package/dist/schema/illumination-temporal.js.map +1 -0
  363. package/dist/schema/illumination.d.ts +138 -0
  364. package/dist/schema/illumination.d.ts.map +1 -0
  365. package/dist/schema/illumination.js +483 -0
  366. package/dist/schema/illumination.js.map +1 -0
  367. package/dist/schema/scene-radiance-temporal.d.ts +107 -0
  368. package/dist/schema/scene-radiance-temporal.d.ts.map +1 -0
  369. package/dist/schema/scene-radiance-temporal.js +259 -0
  370. package/dist/schema/scene-radiance-temporal.js.map +1 -0
  371. package/dist/schema/scene-radiance.d.ts +185 -0
  372. package/dist/schema/scene-radiance.d.ts.map +1 -0
  373. package/dist/schema/scene-radiance.js +535 -0
  374. package/dist/schema/scene-radiance.js.map +1 -0
  375. package/dist/schema/scene.d.ts +7 -0
  376. package/dist/schema/scene.d.ts.map +1 -1
  377. package/dist/schema/validation.d.ts.map +1 -1
  378. package/dist/schema/validation.js +7 -0
  379. package/dist/schema/validation.js.map +1 -1
  380. package/dist/sensor/accumulated-charge.d.ts +199 -0
  381. package/dist/sensor/accumulated-charge.d.ts.map +1 -0
  382. package/dist/sensor/accumulated-charge.js +450 -0
  383. package/dist/sensor/accumulated-charge.js.map +1 -0
  384. package/dist/sensor/architecture.d.ts +48 -13
  385. package/dist/sensor/architecture.d.ts.map +1 -1
  386. package/dist/sensor/architecture.js +58 -16
  387. package/dist/sensor/architecture.js.map +1 -1
  388. package/dist/sensor/camera-saturation-capacity.d.ts +138 -0
  389. package/dist/sensor/camera-saturation-capacity.d.ts.map +1 -0
  390. package/dist/sensor/camera-saturation-capacity.js +356 -0
  391. package/dist/sensor/camera-saturation-capacity.js.map +1 -0
  392. package/dist/sensor/capture-color-sampling-binding.d.ts +212 -0
  393. package/dist/sensor/capture-color-sampling-binding.d.ts.map +1 -0
  394. package/dist/sensor/capture-color-sampling-binding.js +437 -0
  395. package/dist/sensor/capture-color-sampling-binding.js.map +1 -0
  396. package/dist/sensor/capture-mode-timing.d.ts +63 -0
  397. package/dist/sensor/capture-mode-timing.d.ts.map +1 -0
  398. package/dist/sensor/capture-mode-timing.js +270 -0
  399. package/dist/sensor/capture-mode-timing.js.map +1 -0
  400. package/dist/sensor/capture-mode.d.ts +157 -0
  401. package/dist/sensor/capture-mode.d.ts.map +1 -0
  402. package/dist/sensor/capture-mode.js +447 -0
  403. package/dist/sensor/capture-mode.js.map +1 -0
  404. package/dist/sensor/color-sampling.d.ts +133 -0
  405. package/dist/sensor/color-sampling.d.ts.map +1 -0
  406. package/dist/sensor/color-sampling.js +245 -0
  407. package/dist/sensor/color-sampling.js.map +1 -0
  408. package/dist/sensor/constant-rate-temporal-integration.d.ts +126 -0
  409. package/dist/sensor/constant-rate-temporal-integration.d.ts.map +1 -0
  410. package/dist/sensor/constant-rate-temporal-integration.js +382 -0
  411. package/dist/sensor/constant-rate-temporal-integration.js.map +1 -0
  412. package/dist/sensor/dark-current.d.ts +169 -0
  413. package/dist/sensor/dark-current.d.ts.map +1 -0
  414. package/dist/sensor/dark-current.js +427 -0
  415. package/dist/sensor/dark-current.js.map +1 -0
  416. package/dist/sensor/environment-photo-signal.d.ts +123 -0
  417. package/dist/sensor/environment-photo-signal.d.ts.map +1 -0
  418. package/dist/sensor/environment-photo-signal.js +186 -0
  419. package/dist/sensor/environment-photo-signal.js.map +1 -0
  420. package/dist/sensor/eqe-electron-rate.d.ts +107 -0
  421. package/dist/sensor/eqe-electron-rate.d.ts.map +1 -0
  422. package/dist/sensor/eqe-electron-rate.js +561 -0
  423. package/dist/sensor/eqe-electron-rate.js.map +1 -0
  424. package/dist/sensor/eqe-local-exposure.d.ts +65 -0
  425. package/dist/sensor/eqe-local-exposure.d.ts.map +1 -0
  426. package/dist/sensor/eqe-local-exposure.js +84 -0
  427. package/dist/sensor/eqe-local-exposure.js.map +1 -0
  428. package/dist/sensor/eqe-temporal-exposure.d.ts +55 -0
  429. package/dist/sensor/eqe-temporal-exposure.d.ts.map +1 -0
  430. package/dist/sensor/eqe-temporal-exposure.js +62 -0
  431. package/dist/sensor/eqe-temporal-exposure.js.map +1 -0
  432. package/dist/sensor/exposure-window.d.ts +117 -0
  433. package/dist/sensor/exposure-window.d.ts.map +1 -0
  434. package/dist/sensor/exposure-window.js +305 -0
  435. package/dist/sensor/exposure-window.js.map +1 -0
  436. package/dist/sensor/iso-signal-chain.d.ts +148 -0
  437. package/dist/sensor/iso-signal-chain.d.ts.map +1 -0
  438. package/dist/sensor/iso-signal-chain.js +411 -0
  439. package/dist/sensor/iso-signal-chain.js.map +1 -0
  440. package/dist/sensor/local-exposure-binding.d.ts +87 -0
  441. package/dist/sensor/local-exposure-binding.d.ts.map +1 -0
  442. package/dist/sensor/local-exposure-binding.js +214 -0
  443. package/dist/sensor/local-exposure-binding.js.map +1 -0
  444. package/dist/sensor/optical-stack.d.ts +132 -0
  445. package/dist/sensor/optical-stack.d.ts.map +1 -0
  446. package/dist/sensor/optical-stack.js +303 -0
  447. package/dist/sensor/optical-stack.js.map +1 -0
  448. package/dist/sensor/photon-energy.d.ts +97 -0
  449. package/dist/sensor/photon-energy.d.ts.map +1 -0
  450. package/dist/sensor/photon-energy.js +390 -0
  451. package/dist/sensor/photon-energy.js.map +1 -0
  452. package/dist/sensor/physical-charge-capacity.d.ts +130 -0
  453. package/dist/sensor/physical-charge-capacity.d.ts.map +1 -0
  454. package/dist/sensor/physical-charge-capacity.js +345 -0
  455. package/dist/sensor/physical-charge-capacity.js.map +1 -0
  456. package/dist/sensor/pixel-pitch.d.ts +6 -0
  457. package/dist/sensor/pixel-pitch.d.ts.map +1 -1
  458. package/dist/sensor/pixel-pitch.js +6 -0
  459. package/dist/sensor/pixel-pitch.js.map +1 -1
  460. package/dist/sensor/radiometry-readiness.d.ts +10 -0
  461. package/dist/sensor/radiometry-readiness.d.ts.map +1 -1
  462. package/dist/sensor/radiometry-readiness.js +10 -0
  463. package/dist/sensor/radiometry-readiness.js.map +1 -1
  464. package/dist/sensor/raw-readout.d.ts +314 -0
  465. package/dist/sensor/raw-readout.d.ts.map +1 -0
  466. package/dist/sensor/raw-readout.js +914 -0
  467. package/dist/sensor/raw-readout.js.map +1 -0
  468. package/dist/sensor/raw-reconstruction.d.ts +170 -0
  469. package/dist/sensor/raw-reconstruction.d.ts.map +1 -0
  470. package/dist/sensor/raw-reconstruction.js +424 -0
  471. package/dist/sensor/raw-reconstruction.js.map +1 -0
  472. package/dist/sensor/readout-exposure-linkage.d.ts +123 -0
  473. package/dist/sensor/readout-exposure-linkage.d.ts.map +1 -0
  474. package/dist/sensor/readout-exposure-linkage.js +222 -0
  475. package/dist/sensor/readout-exposure-linkage.js.map +1 -0
  476. package/dist/sensor/readout-timing.d.ts +137 -0
  477. package/dist/sensor/readout-timing.d.ts.map +1 -0
  478. package/dist/sensor/readout-timing.js +243 -0
  479. package/dist/sensor/readout-timing.js.map +1 -0
  480. package/dist/sensor/response-application-compatibility.d.ts +136 -0
  481. package/dist/sensor/response-application-compatibility.d.ts.map +1 -0
  482. package/dist/sensor/response-application-compatibility.js +408 -0
  483. package/dist/sensor/response-application-compatibility.js.map +1 -0
  484. package/dist/sensor/response-operating-range.d.ts +173 -0
  485. package/dist/sensor/response-operating-range.d.ts.map +1 -0
  486. package/dist/sensor/response-operating-range.js +672 -0
  487. package/dist/sensor/response-operating-range.js.map +1 -0
  488. package/dist/sensor/responsivity-photocurrent.d.ts +158 -0
  489. package/dist/sensor/responsivity-photocurrent.d.ts.map +1 -0
  490. package/dist/sensor/responsivity-photocurrent.js +644 -0
  491. package/dist/sensor/responsivity-photocurrent.js.map +1 -0
  492. package/dist/sensor/sampling-aperture.d.ts +154 -0
  493. package/dist/sensor/sampling-aperture.d.ts.map +1 -0
  494. package/dist/sensor/sampling-aperture.js +388 -0
  495. package/dist/sensor/sampling-aperture.js.map +1 -0
  496. package/dist/sensor/scene-eqe-temporal-exposure.d.ts +45 -0
  497. package/dist/sensor/scene-eqe-temporal-exposure.d.ts.map +1 -0
  498. package/dist/sensor/scene-eqe-temporal-exposure.js +64 -0
  499. package/dist/sensor/scene-eqe-temporal-exposure.js.map +1 -0
  500. package/dist/sensor/sensor-geometry.d.ts +12 -0
  501. package/dist/sensor/sensor-geometry.d.ts.map +1 -1
  502. package/dist/sensor/sensor-geometry.js +12 -0
  503. package/dist/sensor/sensor-geometry.js.map +1 -1
  504. package/dist/sensor/signal-noise.d.ts +10 -0
  505. package/dist/sensor/signal-noise.d.ts.map +1 -1
  506. package/dist/sensor/signal-noise.js +10 -0
  507. package/dist/sensor/signal-noise.js.map +1 -1
  508. package/dist/sensor/spatial-sample-reduction.d.ts +171 -0
  509. package/dist/sensor/spatial-sample-reduction.d.ts.map +1 -0
  510. package/dist/sensor/spatial-sample-reduction.js +345 -0
  511. package/dist/sensor/spatial-sample-reduction.js.map +1 -0
  512. package/dist/sensor/spatial-sampling-quadrature.d.ts +179 -0
  513. package/dist/sensor/spatial-sampling-quadrature.d.ts.map +1 -0
  514. package/dist/sensor/spatial-sampling-quadrature.js +224 -0
  515. package/dist/sensor/spatial-sampling-quadrature.js.map +1 -0
  516. package/dist/sensor/spatio-spectral-reduction.d.ts +187 -0
  517. package/dist/sensor/spatio-spectral-reduction.d.ts.map +1 -0
  518. package/dist/sensor/spatio-spectral-reduction.js +373 -0
  519. package/dist/sensor/spatio-spectral-reduction.js.map +1 -0
  520. package/dist/sensor/spectral-coverage.d.ts +24 -0
  521. package/dist/sensor/spectral-coverage.d.ts.map +1 -0
  522. package/dist/sensor/spectral-coverage.js +86 -0
  523. package/dist/sensor/spectral-coverage.js.map +1 -0
  524. package/dist/sensor/spectral-quadrature.d.ts +169 -0
  525. package/dist/sensor/spectral-quadrature.d.ts.map +1 -0
  526. package/dist/sensor/spectral-quadrature.js +542 -0
  527. package/dist/sensor/spectral-quadrature.js.map +1 -0
  528. package/dist/sensor/spectral-response.d.ts +192 -0
  529. package/dist/sensor/spectral-response.d.ts.map +1 -0
  530. package/dist/sensor/spectral-response.js +664 -0
  531. package/dist/sensor/spectral-response.js.map +1 -0
  532. package/dist/sensor/temporal-eqe-sum.d.ts +15 -0
  533. package/dist/sensor/temporal-eqe-sum.d.ts.map +1 -0
  534. package/dist/sensor/temporal-eqe-sum.js +30 -0
  535. package/dist/sensor/temporal-eqe-sum.js.map +1 -0
  536. package/dist/sensor/temporal-photo-signal.d.ts +38 -0
  537. package/dist/sensor/temporal-photo-signal.d.ts.map +1 -0
  538. package/dist/sensor/temporal-photo-signal.js +110 -0
  539. package/dist/sensor/temporal-photo-signal.js.map +1 -0
  540. package/dist/sensor/temporal-sample-binding.d.ts +6 -0
  541. package/dist/sensor/temporal-sample-binding.d.ts.map +1 -0
  542. package/dist/sensor/temporal-sample-binding.js +32 -0
  543. package/dist/sensor/temporal-sample-binding.js.map +1 -0
  544. package/dist/simulation/poc-simulation.d.ts.map +1 -1
  545. package/dist/simulation/poc-simulation.js +34 -11
  546. package/dist/simulation/poc-simulation.js.map +1 -1
  547. package/dist/stabilization/camera-shake.d.ts +11 -0
  548. package/dist/stabilization/camera-shake.d.ts.map +1 -1
  549. package/dist/stabilization/camera-shake.js +11 -0
  550. package/dist/stabilization/camera-shake.js.map +1 -1
  551. package/dist/stabilization/system.d.ts +218 -0
  552. package/dist/stabilization/system.d.ts.map +1 -0
  553. package/dist/stabilization/system.js +695 -0
  554. package/dist/stabilization/system.js.map +1 -0
  555. package/docs/API_REFERENCE.md +2017 -0
  556. package/docs/API_STYLE.md +132 -0
  557. package/docs/ARCHITECTURE.md +150 -23
  558. package/docs/AUTOMATION_COORDINATION.md +190 -0
  559. package/docs/CAPTURE_COLOR.md +25 -0
  560. package/docs/CAPTURE_CORRECTED_SDR.md +25 -0
  561. package/docs/CAPTURE_EXPORT_METADATA.md +27 -0
  562. package/docs/CAPTURE_SDR.md +20 -0
  563. package/docs/DEVELOPERS.md +60 -0
  564. package/docs/DIGITAL_OPTICS_FOUNDATION.md +69 -0
  565. package/docs/ENVIRONMENT_RAW_CAPTURE.md +187 -0
  566. package/docs/EXPORT_ACCEPTANCE.md +133 -0
  567. package/docs/GENERIC_TIER_PRESETS.md +269 -0
  568. package/docs/GEOMETRIC_PREPARATION_REUSE.md +141 -0
  569. package/docs/IMAGE_FORMATION.md +105 -9
  570. package/docs/LINEAR_CAPTURE_ENCODING.md +25 -0
  571. package/docs/MOTION_AND_SIGNAL.md +145 -1
  572. package/docs/NUMERICAL_CORRECTNESS.md +191 -0
  573. package/docs/PERFORMANCE_BASELINE.md +56 -0
  574. package/docs/PHOTOGRAPHIC_EXPORT.md +206 -0
  575. package/docs/PHYSICS_FOUNDATION.md +152 -5
  576. package/docs/POC_API.md +2 -0
  577. package/docs/POC_PROJECTION_REUSE.md +124 -0
  578. package/docs/PROCESSED_OUTPUT.md +157 -0
  579. package/docs/PRODUCTION_COMPOSITION.md +373 -0
  580. package/docs/PRODUCTION_ENVIRONMENT_CAPTURE.md +131 -0
  581. package/docs/PROVENANCE.md +4 -0
  582. package/docs/PSF_FOUNDATION.md +110 -88
  583. package/docs/RAW_FRAME_ENVELOPE.md +56 -0
  584. package/docs/RAW_FRAME_RECONSTRUCTION.md +30 -0
  585. package/docs/RELEASE_1_0.md +65 -0
  586. package/docs/RELEASE_AUDIT.md +38 -0
  587. package/docs/SCENE_RADIANCE_AND_ILLUMINATION.md +298 -0
  588. package/docs/SCENE_SENSOR_QUADRATURE.md +98 -0
  589. package/docs/SCENE_SENSOR_TEMPORAL_EXPOSURE.md +86 -0
  590. package/docs/SCIENTIFIC_ASSURANCE.md +280 -0
  591. package/docs/SCIENTIFIC_CONFORMANCE.md +83 -0
  592. package/docs/SDR_RENDERING.md +33 -0
  593. package/docs/SENSOR_ENVIRONMENT_QUERY.md +86 -0
  594. package/docs/SENSOR_EQE_LOCAL_EXPOSURE.md +104 -0
  595. package/docs/SENSOR_EQE_TEMPORAL_EXPOSURE.md +74 -0
  596. package/docs/SENSOR_PSF_QUADRATURE.md +90 -0
  597. package/docs/SENSOR_RAW_FRAME.md +20 -0
  598. package/docs/SENSOR_RAW_PRODUCER.md +77 -0
  599. package/docs/SIGNAL_CONFORMANCE.md +23 -0
  600. package/docs/SIMULATED_CAPTURE.md +65 -0
  601. package/docs/STABILIZATION.md +160 -17
  602. package/docs/TEMPORAL_PHOTO_RAW.md +83 -0
  603. package/docs/TIER_ACCEPTANCE.md +129 -0
  604. package/docs/TIER_PRESET_ACCEPTANCE.md +59 -0
  605. package/docs/USAGE.md +5604 -331
  606. package/docs/V1_COMPOSITION_MAP.md +123 -0
  607. package/docs/V1_HELPER_REUSE_REVIEW.md +60 -0
  608. package/docs/V1_PERFORMANCE_DISPOSITION.md +88 -0
  609. package/docs/api/camera-equivalent-focal-length.md +53 -0
  610. package/docs/api/camera-field-of-view.md +119 -0
  611. package/docs/api/camera-projected-object-size.md +54 -0
  612. package/docs/api/capture-capture-export-metadata.md +107 -0
  613. package/docs/api/capture-environment-raw-producer.md +56 -0
  614. package/docs/api/capture-focus-control.md +419 -0
  615. package/docs/api/capture-linear-encoding.md +99 -0
  616. package/docs/api/capture-photographic-export.md +172 -0
  617. package/docs/api/capture-raw-frame-reconstruction.md +87 -0
  618. package/docs/api/capture-release-sequence.md +252 -0
  619. package/docs/api/capture-sensor-raw-frame.md +66 -0
  620. package/docs/api/capture-sensor-raw-producer.md +98 -0
  621. package/docs/api/capture-simulated-capture.md +179 -0
  622. package/docs/api/color-capture-color.md +122 -0
  623. package/docs/api/color-white-balance.md +386 -0
  624. package/docs/api/composition-image-formation-plan.md +825 -0
  625. package/docs/api/composition-plan-consumer.md +98 -0
  626. package/docs/api/core-calculation-result.md +220 -0
  627. package/docs/api/core-configuration-error.md +19 -0
  628. package/docs/api/core-image-formation.md +204 -0
  629. package/docs/api/core-scientific-assurance.md +214 -0
  630. package/docs/api/core-spectral-composition.md +268 -0
  631. package/docs/api/core-spectral.md +78 -0
  632. package/docs/api/core-validation.md +34 -0
  633. package/docs/api/core-version.md +14 -0
  634. package/docs/api/equipment-exposure-capabilities.md +270 -0
  635. package/docs/api/equipment-generic-tier-assets.md +82 -0
  636. package/docs/api/equipment-generic-tier-presets.md +103 -0
  637. package/docs/api/equipment-iso-capabilities.md +295 -0
  638. package/docs/api/equipment-metering-capabilities.md +126 -0
  639. package/docs/api/equipment-release-capabilities.md +91 -0
  640. package/docs/api/exports.json +5656 -0
  641. package/docs/api/exposure-exposure-duration-control.md +115 -0
  642. package/docs/api/exposure-exposure-mode-resolver.md +966 -0
  643. package/docs/api/exposure-exposure.md +150 -0
  644. package/docs/api/exposure-flash.md +327 -0
  645. package/docs/api/exposure-metering-scene-radiance.md +154 -0
  646. package/docs/api/exposure-metering-target.md +134 -0
  647. package/docs/api/exposure-metering-temporal.md +77 -0
  648. package/docs/api/exposure-metering.md +172 -0
  649. package/docs/api/exposure-program-line.md +64 -0
  650. package/docs/api/motion-camera-rotation.md +215 -0
  651. package/docs/api/motion-capture-rotation-inverse-mapping.md +128 -0
  652. package/docs/api/motion-capture-rotation-temporal-quadrature.md +127 -0
  653. package/docs/api/motion-capture-rotation-trajectory.md +132 -0
  654. package/docs/api/motion-capture-translation-parallax-temporal-quadrature.md +171 -0
  655. package/docs/api/motion-extended-object-projection.md +312 -0
  656. package/docs/api/motion-projected-motion.md +60 -0
  657. package/docs/api/optics-aperture.md +69 -0
  658. package/docs/api/optics-circle-of-confusion.md +46 -0
  659. package/docs/api/optics-complex-pupil-psf.md +193 -0
  660. package/docs/api/optics-depth-of-field.md +92 -0
  661. package/docs/api/optics-diffraction.md +46 -0
  662. package/docs/api/optics-focus-breathing.md +119 -0
  663. package/docs/api/optics-focus-state.md +64 -0
  664. package/docs/api/optics-front-of-lens-filter.md +263 -0
  665. package/docs/api/optics-illumination-vignetting.md +95 -0
  666. package/docs/api/optics-lateral-chromatic-aberration.md +225 -0
  667. package/docs/api/optics-lens-psf-profile.md +380 -0
  668. package/docs/api/optics-polygon-diffraction.md +68 -0
  669. package/docs/api/optics-profile-contract.md +47 -0
  670. package/docs/api/optics-psf-foundation.md +181 -0
  671. package/docs/api/optics-radial-distortion.md +194 -0
  672. package/docs/api/optics-scene-to-sensor-irradiance.md +371 -0
  673. package/docs/api/optics-scene-to-sensor-quadrature.md +78 -0
  674. package/docs/api/optics-sensor-environment-query.md +58 -0
  675. package/docs/api/optics-sensor-psf-quadrature.md +81 -0
  676. package/docs/api/optics-stray-light.md +109 -0
  677. package/docs/api/optics-thin-lens.md +53 -0
  678. package/docs/api/output-capture-corrected-sdr.md +71 -0
  679. package/docs/api/output-capture-geometry.md +500 -0
  680. package/docs/api/output-capture-sdr.md +69 -0
  681. package/docs/api/output-crop.md +47 -0
  682. package/docs/api/output-geometric-transforms.md +199 -0
  683. package/docs/api/output-lens-corrections.md +162 -0
  684. package/docs/api/output-sdr-rendering.md +122 -0
  685. package/docs/api/output-subject-framing-crop.md +59 -0
  686. package/docs/api/schema-camera.md +84 -0
  687. package/docs/api/schema-illumination-spectral.md +77 -0
  688. package/docs/api/schema-illumination-temporal.md +289 -0
  689. package/docs/api/schema-illumination.md +246 -0
  690. package/docs/api/schema-scene-radiance-temporal.md +215 -0
  691. package/docs/api/schema-scene-radiance.md +415 -0
  692. package/docs/api/schema-scene.md +105 -0
  693. package/docs/api/schema-validation.md +25 -0
  694. package/docs/api/sensor-accumulated-charge.md +273 -0
  695. package/docs/api/sensor-architecture.md +155 -0
  696. package/docs/api/sensor-camera-saturation-capacity.md +215 -0
  697. package/docs/api/sensor-capture-color-sampling-binding.md +323 -0
  698. package/docs/api/sensor-capture-mode-timing.md +123 -0
  699. package/docs/api/sensor-capture-mode.md +321 -0
  700. package/docs/api/sensor-color-sampling.md +228 -0
  701. package/docs/api/sensor-constant-rate-temporal-integration.md +152 -0
  702. package/docs/api/sensor-dark-current.md +227 -0
  703. package/docs/api/sensor-environment-photo-signal.md +77 -0
  704. package/docs/api/sensor-eqe-electron-rate.md +166 -0
  705. package/docs/api/sensor-eqe-local-exposure.md +68 -0
  706. package/docs/api/sensor-eqe-temporal-exposure.md +73 -0
  707. package/docs/api/sensor-exposure-window.md +183 -0
  708. package/docs/api/sensor-iso-signal-chain.md +264 -0
  709. package/docs/api/sensor-local-exposure-binding.md +126 -0
  710. package/docs/api/sensor-optical-stack.md +211 -0
  711. package/docs/api/sensor-photon-energy.md +149 -0
  712. package/docs/api/sensor-physical-charge-capacity.md +196 -0
  713. package/docs/api/sensor-pixel-pitch.md +41 -0
  714. package/docs/api/sensor-radiometry-readiness.md +240 -0
  715. package/docs/api/sensor-raw-readout.md +499 -0
  716. package/docs/api/sensor-raw-reconstruction.md +260 -0
  717. package/docs/api/sensor-readout-exposure-linkage.md +172 -0
  718. package/docs/api/sensor-readout-timing.md +209 -0
  719. package/docs/api/sensor-response-application-compatibility.md +256 -0
  720. package/docs/api/sensor-response-operating-range.md +293 -0
  721. package/docs/api/sensor-responsivity-photocurrent.md +245 -0
  722. package/docs/api/sensor-sampling-aperture.md +221 -0
  723. package/docs/api/sensor-scene-eqe-temporal-exposure.md +56 -0
  724. package/docs/api/sensor-sensor-geometry.md +143 -0
  725. package/docs/api/sensor-signal-noise.md +75 -0
  726. package/docs/api/sensor-spatial-sample-reduction.md +186 -0
  727. package/docs/api/sensor-spatial-sampling-quadrature.md +188 -0
  728. package/docs/api/sensor-spatio-spectral-reduction.md +217 -0
  729. package/docs/api/sensor-spectral-coverage.md +33 -0
  730. package/docs/api/sensor-spectral-quadrature.md +183 -0
  731. package/docs/api/sensor-spectral-response.md +291 -0
  732. package/docs/api/sensor-temporal-photo-signal.md +62 -0
  733. package/docs/api/simulation-poc-simulation.md +364 -0
  734. package/docs/api/stabilization-camera-shake.md +71 -0
  735. package/docs/api/stabilization-system.md +442 -0
  736. package/docs/benchmarks/2026-10-01-main-baseline.json +694 -0
  737. package/docs/benchmarks/2026-10-02-geometric-preparation-reuse.json +2190 -0
  738. package/docs/benchmarks/2026-10-02-poc-projection-reuse.json +2423 -0
  739. package/docs/benchmarks/2026-10-02-v1-environment-gc-profile.json +210 -0
  740. package/docs/benchmarks/2026-10-02-v1-environment-ordinary.json +187 -0
  741. package/docs/benchmarks/2026-10-02-v1-geometry-gc-profile.json +756 -0
  742. package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-1.json +711 -0
  743. package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-2.json +711 -0
  744. package/docs/benchmarks/2026-10-02-v1-poc-gc-profile.json +885 -0
  745. package/docs/benchmarks/2026-10-02-v1-poc-ordinary-1.json +868 -0
  746. package/docs/benchmarks/2026-10-02-v1-poc-ordinary-2.json +868 -0
  747. package/docs/examples/production-capture.mjs +34 -0
  748. package/docs/examples/production-request.json +4613 -0
  749. package/docs/examples/quick-start.mjs +12 -0
  750. package/docs/validation/documentation-fragments.json +212 -0
  751. package/docs/validation/release-audit-inventory.json +1306 -0
  752. package/docs/validation/tier-acceptance-report-v1.json +2538 -0
  753. package/package.json +18 -4
@@ -0,0 +1,390 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ /**
3
+ * Module boundary and integration notes.
4
+ * Validate an untrusted declaration and return the normalized typed contract. Unknown enum values,
5
+ * missing required fields and incompatible scientific data fail at this boundary. Photon energy uses
6
+ * exact SI h and c with vacuum wavelength. Air wavelength requires an exact-wavelength sourced phase
7
+ * index and atmosphere compatibility; lambdaVacuum = n*lambdaAir. Retained refractive-index
8
+ * uncertainty is not an automatically propagated photon-energy uncertainty.
9
+ * Convert a valid vacuum wavelength, or explicitly atmosphere-bound air wavelength, into optical
10
+ * frequency and photon energy using exact SI constants. Photon energy uses exact SI h and c with
11
+ * vacuum wavelength. Air wavelength requires an exact-wavelength sourced phase index and atmosphere
12
+ * compatibility; lambdaVacuum = n*lambdaAir. Retained refractive-index uncertainty is not an
13
+ * automatically propagated photon-energy uncertainty.
14
+ * @see docs/MOTION_AND_SIGNAL.md for equations, coordinate/unit conventions, blockers and support
15
+ * limits.
16
+ */
17
+ import { calculatedResult } from "../core/calculation-result.js";
18
+ import { InvalidConfigurationError } from "../core/configuration-error.js";
19
+ import { parseEvidenceList } from "../core/evidence-provenance.js";
20
+ import { InvalidScientificInputError } from "../core/validation.js";
21
+ const PLANCK_CONSTANT_JOULE_SECONDS = 6.62607015e-34;
22
+ const SPEED_OF_LIGHT_METERS_PER_SECOND = 299_792_458;
23
+ const NANOMETERS_TO_METERS = 1e-9;
24
+ function requireRecord(value, path) {
25
+ if (typeof value !== "object" ||
26
+ value === null ||
27
+ Array.isArray(value)) {
28
+ throw new InvalidConfigurationError(path + " must be an object.");
29
+ }
30
+ return value;
31
+ }
32
+ function requireFinite(value, path) {
33
+ if (typeof value !== "number" ||
34
+ !Number.isFinite(value)) {
35
+ throw new InvalidConfigurationError(path + " must be finite.");
36
+ }
37
+ return value;
38
+ }
39
+ function requirePositiveFinite(value, path) {
40
+ const parsed = requireFinite(value, path);
41
+ if (parsed <= 0) {
42
+ throw new InvalidConfigurationError(path +
43
+ " must be greater than zero.");
44
+ }
45
+ return parsed;
46
+ }
47
+ function requireFraction(value, path) {
48
+ const parsed = requireFinite(value, path);
49
+ if (parsed < 0 || parsed > 1) {
50
+ throw new InvalidConfigurationError(path +
51
+ " must be a fraction from 0 through 1.");
52
+ }
53
+ return parsed;
54
+ }
55
+ function parseUncertainty(value, path) {
56
+ const record = requireRecord(value, path);
57
+ if (record.kind === "relative") {
58
+ const fraction = requireFinite(record.fraction, path + ".fraction");
59
+ if (fraction < 0) {
60
+ throw new InvalidConfigurationError(path +
61
+ ".fraction must be greater than or equal to zero.");
62
+ }
63
+ if (typeof record.basis !== "string" ||
64
+ record.basis.trim().length === 0) {
65
+ throw new InvalidConfigurationError(path +
66
+ ".basis must be a non-empty string.");
67
+ }
68
+ return {
69
+ kind: "relative",
70
+ fraction,
71
+ basis: record.basis
72
+ };
73
+ }
74
+ if (record.kind === "not-quantified") {
75
+ if (typeof record.limitation !==
76
+ "string" ||
77
+ record.limitation.trim().length ===
78
+ 0) {
79
+ throw new InvalidConfigurationError(path +
80
+ ".limitation must be a non-empty string.");
81
+ }
82
+ return {
83
+ kind: "not-quantified",
84
+ limitation: record.limitation
85
+ };
86
+ }
87
+ throw new InvalidConfigurationError(path + ".kind is invalid.");
88
+ }
89
+ function parseReferenceConditions(value, path) {
90
+ const record = requireRecord(value, path);
91
+ const temperatureC = requireFinite(record.temperatureC, path + ".temperatureC");
92
+ const pressurePascal = requirePositiveFinite(record.pressurePascal, path + ".pressurePascal");
93
+ const relativeHumidityFraction = record.relativeHumidityFraction ===
94
+ undefined
95
+ ? undefined
96
+ : requireFraction(record.relativeHumidityFraction, path +
97
+ ".relativeHumidityFraction");
98
+ const carbonDioxideMoleFraction = record.carbonDioxideMoleFraction ===
99
+ undefined
100
+ ? undefined
101
+ : requireFraction(record.carbonDioxideMoleFraction, path +
102
+ ".carbonDioxideMoleFraction");
103
+ return {
104
+ temperatureC,
105
+ pressurePascal,
106
+ ...(relativeHumidityFraction ===
107
+ undefined
108
+ ? {}
109
+ : {
110
+ relativeHumidityFraction
111
+ }),
112
+ ...(carbonDioxideMoleFraction ===
113
+ undefined
114
+ ? {}
115
+ : {
116
+ carbonDioxideMoleFraction
117
+ })
118
+ };
119
+ }
120
+ function parseConditionPolicy(value) {
121
+ const record = requireRecord(value, "airConditionPolicy");
122
+ if (record.kind === "exact-match-required") {
123
+ return {
124
+ kind: "exact-match-required"
125
+ };
126
+ }
127
+ if (record.kind === "assume-compatible") {
128
+ if (typeof record.limitation !==
129
+ "string" ||
130
+ record.limitation.trim().length ===
131
+ 0) {
132
+ throw new InvalidConfigurationError("airConditionPolicy.limitation must be a non-empty string.");
133
+ }
134
+ return {
135
+ kind: "assume-compatible",
136
+ limitation: record.limitation,
137
+ evidence: parseEvidenceList(record.evidence, "airConditionPolicy.evidence")
138
+ };
139
+ }
140
+ throw new InvalidConfigurationError("airConditionPolicy.kind is invalid.");
141
+ }
142
+ function conditionsMatch(reference, operating) {
143
+ if (reference.temperatureC !==
144
+ operating.temperatureC ||
145
+ reference.pressurePascal !==
146
+ operating.pressurePascal) {
147
+ return false;
148
+ }
149
+ if (reference.relativeHumidityFraction !==
150
+ undefined &&
151
+ reference.relativeHumidityFraction !==
152
+ operating.relativeHumidityFraction) {
153
+ return false;
154
+ }
155
+ if (reference.carbonDioxideMoleFraction !==
156
+ undefined &&
157
+ reference.carbonDioxideMoleFraction !==
158
+ operating.carbonDioxideMoleFraction) {
159
+ return false;
160
+ }
161
+ return true;
162
+ }
163
+ /**
164
+ * Validate an untrusted declaration and return the normalized typed contract. Unknown enum values,
165
+ * missing required fields and incompatible scientific data fail at this boundary.
166
+ *
167
+ * Photon energy uses exact SI h and c with vacuum wavelength. Air wavelength requires an
168
+ * exact-wavelength sourced phase index and atmosphere compatibility; lambdaVacuum = n*lambdaAir.
169
+ * Retained refractive-index uncertainty is not an automatically propagated photon-energy uncertainty.
170
+ * @param value - unknown. Treated as untrusted data; static typing alone is not validation.
171
+ * @returns SourcedAirPhaseRefractiveIndex. Return shape and scientific status are explicit; no calibration is inferred from successful execution.
172
+ *
173
+ * @see docs/API_REFERENCE.md for the root export and exact type graph.
174
+ */
175
+ export function parseSourcedAirPhaseRefractiveIndex(value) {
176
+ const record = requireRecord(value, "airPhaseRefractiveIndex");
177
+ if (record.wavelengthBasis !== "air") {
178
+ throw new InvalidConfigurationError('airPhaseRefractiveIndex.wavelengthBasis must be "air".');
179
+ }
180
+ if (record.definition !==
181
+ "vacuum-wavelength-divided-by-air-wavelength") {
182
+ throw new InvalidConfigurationError("airPhaseRefractiveIndex.definition is invalid.");
183
+ }
184
+ if (record.scientificStatus !==
185
+ "calibrated" &&
186
+ record.scientificStatus !==
187
+ "approximation") {
188
+ throw new InvalidConfigurationError("airPhaseRefractiveIndex.scientificStatus is invalid.");
189
+ }
190
+ const uncertainty = parseUncertainty(record.uncertainty, "airPhaseRefractiveIndex.uncertainty");
191
+ const referenceConditions = record.referenceConditions ===
192
+ undefined
193
+ ? undefined
194
+ : parseReferenceConditions(record.referenceConditions, "airPhaseRefractiveIndex.referenceConditions");
195
+ if (record.scientificStatus ===
196
+ "calibrated" &&
197
+ uncertainty.kind ===
198
+ "not-quantified") {
199
+ throw new InvalidConfigurationError("A calibrated air phase refractive index must declare quantified relative uncertainty.");
200
+ }
201
+ if (record.scientificStatus ===
202
+ "calibrated" &&
203
+ referenceConditions === undefined) {
204
+ throw new InvalidConfigurationError("A calibrated air phase refractive index must declare temperature and pressure reference conditions.");
205
+ }
206
+ return {
207
+ wavelengthNanometers: requirePositiveFinite(record.wavelengthNanometers, "airPhaseRefractiveIndex.wavelengthNanometers"),
208
+ wavelengthBasis: "air",
209
+ definition: "vacuum-wavelength-divided-by-air-wavelength",
210
+ phaseRefractiveIndex: requirePositiveFinite(record.phaseRefractiveIndex, "airPhaseRefractiveIndex.phaseRefractiveIndex"),
211
+ scientificStatus: record.scientificStatus,
212
+ uncertainty,
213
+ evidence: parseEvidenceList(record.evidence, "airPhaseRefractiveIndex.evidence"),
214
+ ...(referenceConditions ===
215
+ undefined
216
+ ? {}
217
+ : { referenceConditions })
218
+ };
219
+ }
220
+ /**
221
+ * Convert a valid vacuum wavelength, or explicitly atmosphere-bound air wavelength, into optical
222
+ * frequency and photon energy using exact SI constants.
223
+ *
224
+ * Photon energy uses exact SI h and c with vacuum wavelength. Air wavelength requires an
225
+ * exact-wavelength sourced phase index and atmosphere compatibility; lambdaVacuum = n*lambdaAir.
226
+ * Retained refractive-index uncertainty is not an automatically propagated photon-energy uncertainty.
227
+ * @param input - CalculatePhotonEnergyFromWavelengthInput. See the linked contract for coordinate, unit and profile binding semantics.
228
+ * @returns CalculationResult<PhotonEnergyFromWavelength>. Return shape and scientific status are explicit; no calibration is inferred from successful execution.
229
+ *
230
+ * @see docs/API_REFERENCE.md for the root export and exact type graph.
231
+ */
232
+ export function calculatePhotonEnergyFromWavelength(input) {
233
+ const wavelengthNanometers = requirePositiveFinite(input.wavelengthNanometers, "wavelengthNanometers");
234
+ if (input.wavelengthBasis ===
235
+ "unspecified") {
236
+ throw new InvalidScientificInputError("wavelengthBasis must be resolved to air or vacuum before photon-energy calculation.");
237
+ }
238
+ if (input.wavelengthBasis !== "air" &&
239
+ input.wavelengthBasis !== "vacuum") {
240
+ throw new InvalidScientificInputError("wavelengthBasis is invalid.");
241
+ }
242
+ let vacuumWavelengthNanometers;
243
+ let wavelengthConversion;
244
+ let parsedAir;
245
+ let parsedConditionPolicy;
246
+ let parsedOperatingConditions;
247
+ let airConditionCompatibility;
248
+ if (input.wavelengthBasis ===
249
+ "vacuum") {
250
+ if (input.airPhaseRefractiveIndex !==
251
+ undefined ||
252
+ input.airOperatingConditions !==
253
+ undefined ||
254
+ input.airConditionPolicy !==
255
+ undefined) {
256
+ throw new InvalidScientificInputError("Air refractive-index inputs must be omitted for vacuum-basis wavelengths.");
257
+ }
258
+ vacuumWavelengthNanometers =
259
+ wavelengthNanometers;
260
+ wavelengthConversion =
261
+ "vacuum-identity";
262
+ }
263
+ else {
264
+ if (input.airPhaseRefractiveIndex ===
265
+ undefined) {
266
+ throw new InvalidScientificInputError("airPhaseRefractiveIndex is required for air-basis photon-energy calculation.");
267
+ }
268
+ parsedAir =
269
+ parseSourcedAirPhaseRefractiveIndex(input.airPhaseRefractiveIndex);
270
+ if (parsedAir.wavelengthNanometers !==
271
+ wavelengthNanometers) {
272
+ throw new InvalidScientificInputError("airPhaseRefractiveIndex wavelength must exactly match wavelengthNanometers.");
273
+ }
274
+ if (input.airConditionPolicy ===
275
+ undefined) {
276
+ throw new InvalidScientificInputError("airConditionPolicy is required for air-basis photon-energy calculation.");
277
+ }
278
+ parsedConditionPolicy =
279
+ parseConditionPolicy(input.airConditionPolicy);
280
+ if (parsedConditionPolicy.kind ===
281
+ "exact-match-required") {
282
+ if (parsedAir.referenceConditions ===
283
+ undefined) {
284
+ throw new InvalidScientificInputError("Exact air-condition matching requires refractive-index reference conditions.");
285
+ }
286
+ if (input.airOperatingConditions ===
287
+ undefined) {
288
+ throw new InvalidScientificInputError("airOperatingConditions is required when exact air-condition matching is selected.");
289
+ }
290
+ parsedOperatingConditions =
291
+ parseReferenceConditions(input.airOperatingConditions, "airOperatingConditions");
292
+ if (!conditionsMatch(parsedAir.referenceConditions, parsedOperatingConditions)) {
293
+ throw new InvalidScientificInputError("airOperatingConditions must match the refractive-index reference conditions.");
294
+ }
295
+ airConditionCompatibility =
296
+ "exact-match";
297
+ }
298
+ else {
299
+ parsedOperatingConditions =
300
+ input.airOperatingConditions ===
301
+ undefined
302
+ ? undefined
303
+ : parseReferenceConditions(input.airOperatingConditions, "airOperatingConditions");
304
+ airConditionCompatibility =
305
+ "assumed-compatible";
306
+ }
307
+ vacuumWavelengthNanometers =
308
+ wavelengthNanometers *
309
+ parsedAir.phaseRefractiveIndex;
310
+ wavelengthConversion =
311
+ "air-to-vacuum-via-phase-refractive-index";
312
+ }
313
+ const vacuumWavelengthMeters = vacuumWavelengthNanometers *
314
+ NANOMETERS_TO_METERS;
315
+ const frequencyHertz = SPEED_OF_LIGHT_METERS_PER_SECOND /
316
+ vacuumWavelengthMeters;
317
+ const photonEnergyJoules = PLANCK_CONSTANT_JOULE_SECONDS *
318
+ frequencyHertz;
319
+ if (!Number.isFinite(vacuumWavelengthNanometers) ||
320
+ !Number.isFinite(frequencyHertz) ||
321
+ !Number.isFinite(photonEnergyJoules)) {
322
+ throw new InvalidScientificInputError("Photon-energy calculation must remain finite.");
323
+ }
324
+ return calculatedResult({
325
+ inputWavelengthNanometers: wavelengthNanometers,
326
+ inputWavelengthBasis: input.wavelengthBasis,
327
+ vacuumWavelengthNanometers,
328
+ frequencyHertz,
329
+ photonEnergyJoules,
330
+ wavelengthConversion,
331
+ exactSiConstants: {
332
+ planckConstantJouleSeconds: PLANCK_CONSTANT_JOULE_SECONDS,
333
+ speedOfLightMetersPerSecond: SPEED_OF_LIGHT_METERS_PER_SECOND
334
+ },
335
+ ...(parsedAir === undefined
336
+ ? {}
337
+ : {
338
+ phaseRefractiveIndexUsed: parsedAir
339
+ .phaseRefractiveIndex,
340
+ airRefractiveIndexScientificStatus: parsedAir
341
+ .scientificStatus,
342
+ airRefractiveIndexUncertainty: parsedAir.uncertainty,
343
+ ...(parsedAir
344
+ .referenceConditions ===
345
+ undefined
346
+ ? {}
347
+ : {
348
+ airRefractiveIndexReferenceConditions: parsedAir
349
+ .referenceConditions
350
+ }),
351
+ airRefractiveIndexEvidence: parsedAir.evidence,
352
+ ...(parsedOperatingConditions ===
353
+ undefined
354
+ ? {}
355
+ : {
356
+ airOperatingConditions: parsedOperatingConditions
357
+ }),
358
+ ...(parsedConditionPolicy ===
359
+ undefined
360
+ ? {}
361
+ : {
362
+ airConditionPolicy: parsedConditionPolicy
363
+ }),
364
+ ...(airConditionCompatibility ===
365
+ undefined
366
+ ? {}
367
+ : {
368
+ airConditionCompatibility
369
+ }),
370
+ ...(parsedConditionPolicy?.kind ===
371
+ "assume-compatible"
372
+ ? {
373
+ airConditionAssumptionEvidence: parsedConditionPolicy
374
+ .evidence
375
+ }
376
+ : {})
377
+ }),
378
+ inputUncertaintyPropagated: false
379
+ }, "photon-energy-from-spectral-wavelength", "1.0.0", [
380
+ "Planck constant h and vacuum speed of light c use their exact SI defining values.",
381
+ "Photon energy is h times optical frequency; frequency is derived from vacuum wavelength.",
382
+ "Vacuum-basis wavelength requires no refractive-index correction.",
383
+ "Air-basis wavelength is converted with the phase refractive index definition n = lambda_vacuum / lambda_air at the exact requested wavelength.",
384
+ "Air refractive index varies with wavelength and atmospheric conditions; this function never substitutes n = 1.",
385
+ "Air-basis conversion requires either exact matching to the refractive-index reference atmosphere or an explicit evidence-backed compatibility assumption.",
386
+ "Input refractive-index uncertainty is preserved as metadata but is not propagated into photon-energy uncertainty by this foundation.",
387
+ "This calculation does not apply QE, calculate photon rate, generate electrons, integrate exposure time, or model saturation/noise."
388
+ ]);
389
+ }
390
+ //# sourceMappingURL=photon-energy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"photon-energy.js","sourceRoot":"","sources":["../../src/sensor/photon-energy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Module boundary and integration notes.
3
+ * Validate an untrusted declaration and return the normalized typed contract. Unknown enum values,
4
+ * missing required fields and incompatible scientific data fail at this boundary. Physical storage
5
+ * capacity is a source-specific total stored-electron limit tied to site, operating state and
6
+ * temperature. The assessment compares complete expected charge; it does not clamp realizations or
7
+ * infer overflow/blooming. Camera saturation and ADC/readout thresholds remain distinct.
8
+ * Compare complete expected stored electrons to the explicitly applicable physical capacity and report
9
+ * expectation-domain headroom without nonlinear storage simulation. Physical storage capacity is a
10
+ * source-specific total stored-electron limit tied to site, operating state and temperature. The
11
+ * assessment compares complete expected charge; it does not clamp realizations or infer
12
+ * overflow/blooming. Camera saturation and ADC/readout thresholds remain distinct.
13
+ * @see docs/MOTION_AND_SIGNAL.md for equations, coordinate/unit conventions, blockers and support
14
+ * limits.
15
+ */
16
+ import { type CalculationResult } from "../core/calculation-result.js";
17
+ import { type EvidenceProvenance } from "../core/evidence-provenance.js";
18
+ import type { SensorPhotoAccumulatedChargeComposition as SensorAccumulatedChargeComposition } from "./accumulated-charge.js";
19
+ import type { SensorSpectralResponseScientificStatus, SensorSpectralResponseUncertainty } from "./spectral-response.js";
20
+ export type SensorPhysicalChargeCapacitySiteApplicability = {
21
+ kind: "exact-site";
22
+ site: {
23
+ x: number;
24
+ y: number;
25
+ };
26
+ } | {
27
+ kind: "uniform-site-capacity-approximation";
28
+ limitation: string;
29
+ evidence: readonly EvidenceProvenance[];
30
+ };
31
+ export type SensorPhysicalChargeCapacityTemperatureApplicability = {
32
+ kind: "exact-reference-temperature";
33
+ temperatureC: number;
34
+ } | {
35
+ kind: "not-modeled";
36
+ limitation: string;
37
+ evidence: readonly EvidenceProvenance[];
38
+ };
39
+ export interface SensorPhysicalChargeCapacityProfile {
40
+ schemaVersion: "0.1.0";
41
+ profileId: string;
42
+ colorSamplingProfileId: string;
43
+ channelId: string;
44
+ capacityMeaning: "physical-charge-storage-capacity-electrons";
45
+ capacityElectrons: number;
46
+ scientificStatus: SensorSpectralResponseScientificStatus;
47
+ uncertainty: SensorSpectralResponseUncertainty;
48
+ evidence: readonly EvidenceProvenance[];
49
+ siteApplicability: SensorPhysicalChargeCapacitySiteApplicability;
50
+ operatingState: {
51
+ stateId: string;
52
+ evidence: readonly EvidenceProvenance[];
53
+ };
54
+ temperatureApplicability: SensorPhysicalChargeCapacityTemperatureApplicability;
55
+ }
56
+ export interface AssessSensorPhysicalChargeCapacityInput {
57
+ accumulatedCharge: SensorAccumulatedChargeComposition;
58
+ capacityProfile: SensorPhysicalChargeCapacityProfile;
59
+ operatingStateId: string;
60
+ operatingTemperatureC: number;
61
+ }
62
+ export interface SensorPhysicalChargeCapacityAssessment {
63
+ capacityProfileId: string;
64
+ completenessProfileId: string;
65
+ colorSamplingProfileId: string;
66
+ channelId: string;
67
+ site: {
68
+ x: number;
69
+ y: number;
70
+ };
71
+ bindingId: string;
72
+ operatingStateId: string;
73
+ operatingTemperatureC: number;
74
+ capacityMeaning: "physical-charge-storage-capacity-electrons";
75
+ physicalChargeCapacityElectrons: number;
76
+ totalExpectedStoredElectronCount: number;
77
+ expectedChargeToCapacityRatio: number;
78
+ expectedChargeHeadroomElectrons: number;
79
+ expectedChargeCapacityStatus: "below-capacity" | "at-capacity" | "above-capacity";
80
+ expectedChargeExceedsCapacity: boolean;
81
+ physicalChargeCapacityAssessmentPerformed: true;
82
+ assessmentMeaning: "expected-charge-vs-physical-storage-capacity";
83
+ actualStochasticSaturationStateKnown: false;
84
+ stochasticSaturationProbabilityAssessed: false;
85
+ storedChargeAfterPhysicalSaturationCalculated: false;
86
+ overflowChargeCalculated: false;
87
+ bloomingModeled: false;
88
+ clampApplied: false;
89
+ cameraSaturationAssessmentAuthorized: false;
90
+ adcQuantizationApplied: false;
91
+ rawCodeValueProduced: false;
92
+ capacityUncertaintyPropagated: false;
93
+ accumulatedChargeUncertaintyPropagated: false;
94
+ componentEvidence: {
95
+ capacity: readonly EvidenceProvenance[];
96
+ operatingState: readonly EvidenceProvenance[];
97
+ siteApproximation: readonly EvidenceProvenance[];
98
+ temperatureApproximation: readonly EvidenceProvenance[];
99
+ chargeCompleteness: SensorAccumulatedChargeComposition["componentEvidence"]["completeness"];
100
+ };
101
+ }
102
+ /**
103
+ * Validate an untrusted declaration and return the normalized typed contract. Unknown enum values,
104
+ * missing required fields and incompatible scientific data fail at this boundary.
105
+ *
106
+ * Physical storage capacity is a source-specific total stored-electron limit tied to site, operating
107
+ * state and temperature. The assessment compares complete expected charge; it does not clamp
108
+ * realizations or infer overflow/blooming. Camera saturation and ADC/readout thresholds remain
109
+ * distinct.
110
+ * @param value - unknown. Treated as untrusted data; static typing alone is not validation.
111
+ * @returns SensorPhysicalChargeCapacityProfile. Return shape and scientific status are explicit; no calibration is inferred from successful execution.
112
+ *
113
+ * @see docs/API_REFERENCE.md for the root export and exact type graph.
114
+ */
115
+ export declare function parseSensorPhysicalChargeCapacityProfile(value: unknown): SensorPhysicalChargeCapacityProfile;
116
+ /**
117
+ * Compare complete expected stored electrons to the explicitly applicable physical capacity and report
118
+ * expectation-domain headroom without nonlinear storage simulation.
119
+ *
120
+ * Physical storage capacity is a source-specific total stored-electron limit tied to site, operating
121
+ * state and temperature. The assessment compares complete expected charge; it does not clamp
122
+ * realizations or infer overflow/blooming. Camera saturation and ADC/readout thresholds remain
123
+ * distinct.
124
+ * @param input - AssessSensorPhysicalChargeCapacityInput. See the linked contract for coordinate, unit and profile binding semantics.
125
+ * @returns CalculationResult<SensorPhysicalChargeCapacityAssessment>. Read structured blockers before consuming an authorization.
126
+ *
127
+ * @see docs/API_REFERENCE.md for the root export and exact type graph.
128
+ */
129
+ export declare function assessSensorPhysicalChargeCapacity(input: AssessSensorPhysicalChargeCapacityInput): CalculationResult<SensorPhysicalChargeCapacityAssessment>;
130
+ //# sourceMappingURL=physical-charge-capacity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"physical-charge-capacity.d.ts","sourceRoot":"","sources":["../../src/sensor/physical-charge-capacity.ts"],"names":[],"mappings":"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"}