@photivra/engine 0.6.0 → 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.
- package/AGENTS.md +674 -0
- package/CHANGELOG.md +186 -0
- package/CITATION.cff +1 -1
- package/CONTRIBUTING.md +76 -0
- package/DCO +33 -0
- package/NODE_SUPPORT.md +37 -0
- package/NOTICE +2 -0
- package/README.md +138 -71
- package/SECURITY.md +55 -0
- package/THIRD_PARTY.md +63 -0
- package/dist/camera/equivalent-focal-length.d.ts +9 -0
- package/dist/camera/equivalent-focal-length.d.ts.map +1 -1
- package/dist/camera/equivalent-focal-length.js +9 -0
- package/dist/camera/equivalent-focal-length.js.map +1 -1
- package/dist/camera/field-of-view.d.ts +13 -0
- package/dist/camera/field-of-view.d.ts.map +1 -1
- package/dist/camera/field-of-view.js +13 -0
- package/dist/camera/field-of-view.js.map +1 -1
- package/dist/camera/projected-object-size.d.ts +8 -0
- package/dist/camera/projected-object-size.d.ts.map +1 -1
- package/dist/camera/projected-object-size.js +8 -0
- package/dist/camera/projected-object-size.js.map +1 -1
- package/dist/capture/capture-export-metadata.d.ts +60 -0
- package/dist/capture/capture-export-metadata.d.ts.map +1 -0
- package/dist/capture/capture-export-metadata.js +62 -0
- package/dist/capture/capture-export-metadata.js.map +1 -0
- package/dist/capture/environment-raw-producer.d.ts +55 -0
- package/dist/capture/environment-raw-producer.d.ts.map +1 -0
- package/dist/capture/environment-raw-producer.js +88 -0
- package/dist/capture/environment-raw-producer.js.map +1 -0
- package/dist/capture/export-jpeg.d.ts +12 -0
- package/dist/capture/export-jpeg.d.ts.map +1 -0
- package/dist/capture/export-jpeg.js +126 -0
- package/dist/capture/export-jpeg.js.map +1 -0
- package/dist/capture/export-tiff.d.ts +45 -0
- package/dist/capture/export-tiff.d.ts.map +1 -0
- package/dist/capture/export-tiff.js +129 -0
- package/dist/capture/export-tiff.js.map +1 -0
- package/dist/capture/focus-control.d.ts +210 -0
- package/dist/capture/focus-control.d.ts.map +1 -0
- package/dist/capture/focus-control.js +664 -0
- package/dist/capture/focus-control.js.map +1 -0
- package/dist/capture/linear-encoding.d.ts +59 -0
- package/dist/capture/linear-encoding.d.ts.map +1 -0
- package/dist/capture/linear-encoding.js +98 -0
- package/dist/capture/linear-encoding.js.map +1 -0
- package/dist/capture/photographic-export.d.ts +135 -0
- package/dist/capture/photographic-export.d.ts.map +1 -0
- package/dist/capture/photographic-export.js +273 -0
- package/dist/capture/photographic-export.js.map +1 -0
- package/dist/capture/raw-frame-limits.d.ts +12 -0
- package/dist/capture/raw-frame-limits.d.ts.map +1 -0
- package/dist/capture/raw-frame-limits.js +13 -0
- package/dist/capture/raw-frame-limits.js.map +1 -0
- package/dist/capture/raw-frame-reconstruction.d.ts +48 -0
- package/dist/capture/raw-frame-reconstruction.d.ts.map +1 -0
- package/dist/capture/raw-frame-reconstruction.js +146 -0
- package/dist/capture/raw-frame-reconstruction.js.map +1 -0
- package/dist/capture/release-sequence.d.ts +120 -0
- package/dist/capture/release-sequence.d.ts.map +1 -0
- package/dist/capture/release-sequence.js +446 -0
- package/dist/capture/release-sequence.js.map +1 -0
- package/dist/capture/sensor-raw-frame.d.ts +34 -0
- package/dist/capture/sensor-raw-frame.d.ts.map +1 -0
- package/dist/capture/sensor-raw-frame.js +106 -0
- package/dist/capture/sensor-raw-frame.js.map +1 -0
- package/dist/capture/sensor-raw-producer.d.ts +51 -0
- package/dist/capture/sensor-raw-producer.d.ts.map +1 -0
- package/dist/capture/sensor-raw-producer.js +235 -0
- package/dist/capture/sensor-raw-producer.js.map +1 -0
- package/dist/capture/simulated-capture.d.ts +125 -0
- package/dist/capture/simulated-capture.d.ts.map +1 -0
- package/dist/capture/simulated-capture.js +248 -0
- package/dist/capture/simulated-capture.js.map +1 -0
- package/dist/color/capture-color.d.ts +73 -0
- package/dist/color/capture-color.d.ts.map +1 -0
- package/dist/color/capture-color.js +145 -0
- package/dist/color/capture-color.js.map +1 -0
- package/dist/color/sensor-color-development.d.ts +23 -0
- package/dist/color/sensor-color-development.d.ts.map +1 -0
- package/dist/color/sensor-color-development.js +56 -0
- package/dist/color/sensor-color-development.js.map +1 -0
- package/dist/color/white-balance.d.ts +175 -0
- package/dist/color/white-balance.d.ts.map +1 -0
- package/dist/color/white-balance.js +606 -0
- package/dist/color/white-balance.js.map +1 -0
- package/dist/composition/image-formation-plan.d.ts +481 -0
- package/dist/composition/image-formation-plan.d.ts.map +1 -0
- package/dist/composition/image-formation-plan.js +2499 -0
- package/dist/composition/image-formation-plan.js.map +1 -0
- package/dist/composition/plan-consumer.d.ts +53 -0
- package/dist/composition/plan-consumer.d.ts.map +1 -0
- package/dist/composition/plan-consumer.js +119 -0
- package/dist/composition/plan-consumer.js.map +1 -0
- package/dist/core/calculation-result.d.ts.map +1 -1
- package/dist/core/calculation-result.js +6 -0
- package/dist/core/calculation-result.js.map +1 -1
- package/dist/core/canonical-json.d.ts +18 -0
- package/dist/core/canonical-json.d.ts.map +1 -0
- package/dist/core/canonical-json.js +44 -0
- package/dist/core/canonical-json.js.map +1 -0
- package/dist/core/configuration-error.d.ts +6 -0
- package/dist/core/configuration-error.d.ts.map +1 -1
- package/dist/core/configuration-error.js +6 -0
- package/dist/core/configuration-error.js.map +1 -1
- package/dist/core/evidence-provenance.d.ts +6 -0
- package/dist/core/evidence-provenance.d.ts.map +1 -1
- package/dist/core/evidence-provenance.js +7 -0
- package/dist/core/evidence-provenance.js.map +1 -1
- package/dist/core/image-formation.d.ts +9 -3
- package/dist/core/image-formation.d.ts.map +1 -1
- package/dist/core/image-formation.js +29 -5
- package/dist/core/image-formation.js.map +1 -1
- package/dist/core/owned-data.d.ts +25 -0
- package/dist/core/owned-data.d.ts.map +1 -0
- package/dist/core/owned-data.js +34 -0
- package/dist/core/owned-data.js.map +1 -0
- package/dist/core/record-validation.d.ts +17 -0
- package/dist/core/record-validation.d.ts.map +1 -0
- package/dist/core/record-validation.js +44 -0
- package/dist/core/record-validation.js.map +1 -0
- package/dist/core/scientific-assurance.d.ts +101 -0
- package/dist/core/scientific-assurance.d.ts.map +1 -0
- package/dist/core/scientific-assurance.js +301 -0
- package/dist/core/scientific-assurance.js.map +1 -0
- package/dist/core/spectral-composition.d.ts +106 -0
- package/dist/core/spectral-composition.d.ts.map +1 -0
- package/dist/core/spectral-composition.js +334 -0
- package/dist/core/spectral-composition.js.map +1 -0
- package/dist/core/spectral.d.ts +34 -0
- package/dist/core/spectral.d.ts.map +1 -0
- package/dist/core/spectral.js +57 -0
- package/dist/core/spectral.js.map +1 -0
- package/dist/core/validation.d.ts +6 -0
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +6 -0
- package/dist/core/validation.js.map +1 -1
- package/dist/core/version.d.ts +14 -0
- package/dist/core/version.d.ts.map +1 -0
- package/dist/core/version.js +15 -0
- package/dist/core/version.js.map +1 -0
- package/dist/equipment/exposure-capabilities.d.ts +125 -0
- package/dist/equipment/exposure-capabilities.d.ts.map +1 -0
- package/dist/equipment/exposure-capabilities.js +391 -0
- package/dist/equipment/exposure-capabilities.js.map +1 -0
- package/dist/equipment/generic-tier-assets.d.ts +82 -0
- package/dist/equipment/generic-tier-assets.d.ts.map +1 -0
- package/dist/equipment/generic-tier-assets.js +119 -0
- package/dist/equipment/generic-tier-assets.js.map +1 -0
- package/dist/equipment/generic-tier-presets.d.ts +57 -0
- package/dist/equipment/generic-tier-presets.d.ts.map +1 -0
- package/dist/equipment/generic-tier-presets.js +122 -0
- package/dist/equipment/generic-tier-presets.js.map +1 -0
- package/dist/equipment/iso-capabilities.d.ts +143 -0
- package/dist/equipment/iso-capabilities.d.ts.map +1 -0
- package/dist/equipment/iso-capabilities.js +578 -0
- package/dist/equipment/iso-capabilities.js.map +1 -0
- package/dist/equipment/metering-capabilities.d.ts +58 -0
- package/dist/equipment/metering-capabilities.d.ts.map +1 -0
- package/dist/equipment/metering-capabilities.js +151 -0
- package/dist/equipment/metering-capabilities.js.map +1 -0
- package/dist/equipment/release-capabilities.d.ts +33 -0
- package/dist/equipment/release-capabilities.d.ts.map +1 -0
- package/dist/equipment/release-capabilities.js +176 -0
- package/dist/equipment/release-capabilities.js.map +1 -0
- package/dist/exposure/exposure-duration-control.d.ts +72 -0
- package/dist/exposure/exposure-duration-control.d.ts.map +1 -0
- package/dist/exposure/exposure-duration-control.js +161 -0
- package/dist/exposure/exposure-duration-control.js.map +1 -0
- package/dist/exposure/exposure-mode-resolver.d.ts +637 -0
- package/dist/exposure/exposure-mode-resolver.d.ts.map +1 -0
- package/dist/exposure/exposure-mode-resolver.js +1905 -0
- package/dist/exposure/exposure-mode-resolver.js.map +1 -0
- package/dist/exposure/exposure.d.ts +8 -0
- package/dist/exposure/exposure.d.ts.map +1 -1
- package/dist/exposure/exposure.js +8 -0
- package/dist/exposure/exposure.js.map +1 -1
- package/dist/exposure/flash.d.ts +179 -0
- package/dist/exposure/flash.d.ts.map +1 -0
- package/dist/exposure/flash.js +644 -0
- package/dist/exposure/flash.js.map +1 -0
- package/dist/exposure/metering-scene-radiance.d.ts +72 -0
- package/dist/exposure/metering-scene-radiance.d.ts.map +1 -0
- package/dist/exposure/metering-scene-radiance.js +222 -0
- package/dist/exposure/metering-scene-radiance.js.map +1 -0
- package/dist/exposure/metering-target.d.ts +67 -0
- package/dist/exposure/metering-target.d.ts.map +1 -0
- package/dist/exposure/metering-target.js +265 -0
- package/dist/exposure/metering-target.js.map +1 -0
- package/dist/exposure/metering-temporal.d.ts +76 -0
- package/dist/exposure/metering-temporal.d.ts.map +1 -0
- package/dist/exposure/metering-temporal.js +210 -0
- package/dist/exposure/metering-temporal.js.map +1 -0
- package/dist/exposure/metering.d.ts +124 -0
- package/dist/exposure/metering.d.ts.map +1 -0
- package/dist/exposure/metering.js +422 -0
- package/dist/exposure/metering.js.map +1 -0
- package/dist/exposure/program-line.d.ts +29 -0
- package/dist/exposure/program-line.d.ts.map +1 -0
- package/dist/exposure/program-line.js +126 -0
- package/dist/exposure/program-line.js.map +1 -0
- package/dist/index.d.ts +87 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +85 -6
- package/dist/index.js.map +1 -1
- package/dist/motion/camera-rotation.d.ts +16 -0
- package/dist/motion/camera-rotation.d.ts.map +1 -1
- package/dist/motion/camera-rotation.js +16 -0
- package/dist/motion/camera-rotation.js.map +1 -1
- package/dist/motion/capture-rotation-inverse-mapping.d.ts +13 -0
- package/dist/motion/capture-rotation-inverse-mapping.d.ts.map +1 -1
- package/dist/motion/capture-rotation-inverse-mapping.js +13 -0
- package/dist/motion/capture-rotation-inverse-mapping.js.map +1 -1
- package/dist/motion/capture-rotation-temporal-quadrature.d.ts +15 -0
- package/dist/motion/capture-rotation-temporal-quadrature.d.ts.map +1 -1
- package/dist/motion/capture-rotation-temporal-quadrature.js +15 -0
- package/dist/motion/capture-rotation-temporal-quadrature.js.map +1 -1
- package/dist/motion/capture-rotation-trajectory.d.ts +15 -0
- package/dist/motion/capture-rotation-trajectory.d.ts.map +1 -1
- package/dist/motion/capture-rotation-trajectory.js +15 -0
- package/dist/motion/capture-rotation-trajectory.js.map +1 -1
- package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts +119 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.d.ts.map +1 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.js +263 -0
- package/dist/motion/capture-translation-parallax-temporal-quadrature.js.map +1 -0
- package/dist/motion/extended-object-projection.d.ts +175 -0
- package/dist/motion/extended-object-projection.d.ts.map +1 -0
- package/dist/motion/extended-object-projection.js +402 -0
- package/dist/motion/extended-object-projection.js.map +1 -0
- package/dist/motion/projected-motion.d.ts +11 -0
- package/dist/motion/projected-motion.d.ts.map +1 -1
- package/dist/motion/projected-motion.js +11 -0
- package/dist/motion/projected-motion.js.map +1 -1
- package/dist/optics/aperture.d.ts +9 -0
- package/dist/optics/aperture.d.ts.map +1 -1
- package/dist/optics/aperture.js +9 -0
- package/dist/optics/aperture.js.map +1 -1
- package/dist/optics/circle-of-confusion.d.ts +8 -0
- package/dist/optics/circle-of-confusion.d.ts.map +1 -1
- package/dist/optics/circle-of-confusion.js +8 -0
- package/dist/optics/circle-of-confusion.js.map +1 -1
- package/dist/optics/complex-pupil-psf.d.ts +128 -0
- package/dist/optics/complex-pupil-psf.d.ts.map +1 -0
- package/dist/optics/complex-pupil-psf.js +462 -0
- package/dist/optics/complex-pupil-psf.js.map +1 -0
- package/dist/optics/depth-of-field.d.ts +18 -0
- package/dist/optics/depth-of-field.d.ts.map +1 -1
- package/dist/optics/depth-of-field.js +29 -4
- package/dist/optics/depth-of-field.js.map +1 -1
- package/dist/optics/diffraction.d.ts +8 -0
- package/dist/optics/diffraction.d.ts.map +1 -1
- package/dist/optics/diffraction.js +8 -0
- package/dist/optics/diffraction.js.map +1 -1
- package/dist/optics/focus-breathing.d.ts +13 -0
- package/dist/optics/focus-breathing.d.ts.map +1 -1
- package/dist/optics/focus-breathing.js +13 -0
- package/dist/optics/focus-breathing.js.map +1 -1
- package/dist/optics/focus-state.d.ts +47 -0
- package/dist/optics/focus-state.d.ts.map +1 -0
- package/dist/optics/focus-state.js +78 -0
- package/dist/optics/focus-state.js.map +1 -0
- package/dist/optics/front-of-lens-filter.d.ts +114 -0
- package/dist/optics/front-of-lens-filter.d.ts.map +1 -0
- package/dist/optics/front-of-lens-filter.js +468 -0
- package/dist/optics/front-of-lens-filter.js.map +1 -0
- package/dist/optics/illumination-vignetting.d.ts +9 -0
- package/dist/optics/illumination-vignetting.d.ts.map +1 -1
- package/dist/optics/illumination-vignetting.js +9 -0
- package/dist/optics/illumination-vignetting.js.map +1 -1
- package/dist/optics/lateral-chromatic-aberration.d.ts +11 -0
- package/dist/optics/lateral-chromatic-aberration.d.ts.map +1 -1
- package/dist/optics/lateral-chromatic-aberration.js +11 -0
- package/dist/optics/lateral-chromatic-aberration.js.map +1 -1
- package/dist/optics/lens-psf-profile.d.ts +217 -0
- package/dist/optics/lens-psf-profile.d.ts.map +1 -0
- package/dist/optics/lens-psf-profile.js +823 -0
- package/dist/optics/lens-psf-profile.js.map +1 -0
- package/dist/optics/polygon-diffraction.d.ts +67 -0
- package/dist/optics/polygon-diffraction.d.ts.map +1 -0
- package/dist/optics/polygon-diffraction.js +145 -0
- package/dist/optics/polygon-diffraction.js.map +1 -0
- package/dist/optics/profile-contract.d.ts +42 -0
- package/dist/optics/profile-contract.d.ts.map +1 -0
- package/dist/optics/profile-contract.js +92 -0
- package/dist/optics/profile-contract.js.map +1 -0
- package/dist/optics/psf-foundation.d.ts +16 -3
- package/dist/optics/psf-foundation.d.ts.map +1 -1
- package/dist/optics/psf-foundation.js +28 -15
- package/dist/optics/psf-foundation.js.map +1 -1
- package/dist/optics/radial-distortion.d.ts +18 -0
- package/dist/optics/radial-distortion.d.ts.map +1 -1
- package/dist/optics/radial-distortion.js +18 -0
- package/dist/optics/radial-distortion.js.map +1 -1
- package/dist/optics/scene-to-sensor-irradiance.d.ts +213 -0
- package/dist/optics/scene-to-sensor-irradiance.d.ts.map +1 -0
- package/dist/optics/scene-to-sensor-irradiance.js +662 -0
- package/dist/optics/scene-to-sensor-irradiance.js.map +1 -0
- package/dist/optics/scene-to-sensor-quadrature.d.ts +63 -0
- package/dist/optics/scene-to-sensor-quadrature.d.ts.map +1 -0
- package/dist/optics/scene-to-sensor-quadrature.js +82 -0
- package/dist/optics/scene-to-sensor-quadrature.js.map +1 -0
- package/dist/optics/sensor-environment-query.d.ts +60 -0
- package/dist/optics/sensor-environment-query.d.ts.map +1 -0
- package/dist/optics/sensor-environment-query.js +50 -0
- package/dist/optics/sensor-environment-query.js.map +1 -0
- package/dist/optics/sensor-psf-quadrature.d.ts +70 -0
- package/dist/optics/sensor-psf-quadrature.d.ts.map +1 -0
- package/dist/optics/sensor-psf-quadrature.js +101 -0
- package/dist/optics/sensor-psf-quadrature.js.map +1 -0
- package/dist/optics/sensor-psf-support.d.ts +20 -0
- package/dist/optics/sensor-psf-support.d.ts.map +1 -0
- package/dist/optics/sensor-psf-support.js +13 -0
- package/dist/optics/sensor-psf-support.js.map +1 -0
- package/dist/optics/stray-light.d.ts +91 -0
- package/dist/optics/stray-light.d.ts.map +1 -0
- package/dist/optics/stray-light.js +110 -0
- package/dist/optics/stray-light.js.map +1 -0
- package/dist/optics/thin-lens.d.ts +8 -0
- package/dist/optics/thin-lens.d.ts.map +1 -1
- package/dist/optics/thin-lens.js +8 -0
- package/dist/optics/thin-lens.js.map +1 -1
- package/dist/output/capture-corrected-sdr.d.ts +49 -0
- package/dist/output/capture-corrected-sdr.d.ts.map +1 -0
- package/dist/output/capture-corrected-sdr.js +149 -0
- package/dist/output/capture-corrected-sdr.js.map +1 -0
- package/dist/output/capture-geometry.d.ts.map +1 -1
- package/dist/output/capture-geometry.js +8 -0
- package/dist/output/capture-geometry.js.map +1 -1
- package/dist/output/capture-sdr.d.ts +49 -0
- package/dist/output/capture-sdr.d.ts.map +1 -0
- package/dist/output/capture-sdr.js +90 -0
- package/dist/output/capture-sdr.js.map +1 -0
- package/dist/output/crop.d.ts +6 -0
- package/dist/output/crop.d.ts.map +1 -1
- package/dist/output/crop.js +6 -0
- package/dist/output/crop.js.map +1 -1
- package/dist/output/geometric-transforms.d.ts +137 -0
- package/dist/output/geometric-transforms.d.ts.map +1 -0
- package/dist/output/geometric-transforms.js +225 -0
- package/dist/output/geometric-transforms.js.map +1 -0
- package/dist/output/lens-corrections.d.ts +121 -0
- package/dist/output/lens-corrections.d.ts.map +1 -0
- package/dist/output/lens-corrections.js +210 -0
- package/dist/output/lens-corrections.js.map +1 -0
- package/dist/output/sdr-rendering.d.ts +81 -0
- package/dist/output/sdr-rendering.d.ts.map +1 -0
- package/dist/output/sdr-rendering.js +106 -0
- package/dist/output/sdr-rendering.js.map +1 -0
- package/dist/output/subject-framing-crop.d.ts +8 -0
- package/dist/output/subject-framing-crop.d.ts.map +1 -1
- package/dist/output/subject-framing-crop.js +8 -0
- package/dist/output/subject-framing-crop.js.map +1 -1
- package/dist/schema/camera.d.ts +6 -0
- package/dist/schema/camera.d.ts.map +1 -1
- package/dist/schema/illumination-spectral.d.ts +51 -0
- package/dist/schema/illumination-spectral.d.ts.map +1 -0
- package/dist/schema/illumination-spectral.js +132 -0
- package/dist/schema/illumination-spectral.js.map +1 -0
- package/dist/schema/illumination-temporal.d.ts +156 -0
- package/dist/schema/illumination-temporal.d.ts.map +1 -0
- package/dist/schema/illumination-temporal.js +554 -0
- package/dist/schema/illumination-temporal.js.map +1 -0
- package/dist/schema/illumination.d.ts +138 -0
- package/dist/schema/illumination.d.ts.map +1 -0
- package/dist/schema/illumination.js +483 -0
- package/dist/schema/illumination.js.map +1 -0
- package/dist/schema/scene-radiance-temporal.d.ts +107 -0
- package/dist/schema/scene-radiance-temporal.d.ts.map +1 -0
- package/dist/schema/scene-radiance-temporal.js +259 -0
- package/dist/schema/scene-radiance-temporal.js.map +1 -0
- package/dist/schema/scene-radiance.d.ts +185 -0
- package/dist/schema/scene-radiance.d.ts.map +1 -0
- package/dist/schema/scene-radiance.js +535 -0
- package/dist/schema/scene-radiance.js.map +1 -0
- package/dist/schema/scene.d.ts +7 -0
- package/dist/schema/scene.d.ts.map +1 -1
- package/dist/schema/validation.d.ts.map +1 -1
- package/dist/schema/validation.js +7 -0
- package/dist/schema/validation.js.map +1 -1
- package/dist/sensor/accumulated-charge.d.ts +199 -0
- package/dist/sensor/accumulated-charge.d.ts.map +1 -0
- package/dist/sensor/accumulated-charge.js +450 -0
- package/dist/sensor/accumulated-charge.js.map +1 -0
- package/dist/sensor/architecture.d.ts +48 -13
- package/dist/sensor/architecture.d.ts.map +1 -1
- package/dist/sensor/architecture.js +58 -16
- package/dist/sensor/architecture.js.map +1 -1
- package/dist/sensor/camera-saturation-capacity.d.ts +138 -0
- package/dist/sensor/camera-saturation-capacity.d.ts.map +1 -0
- package/dist/sensor/camera-saturation-capacity.js +356 -0
- package/dist/sensor/camera-saturation-capacity.js.map +1 -0
- package/dist/sensor/capture-color-sampling-binding.d.ts +1 -0
- package/dist/sensor/capture-color-sampling-binding.d.ts.map +1 -1
- package/dist/sensor/capture-color-sampling-binding.js +14 -0
- package/dist/sensor/capture-color-sampling-binding.js.map +1 -1
- package/dist/sensor/capture-mode-timing.d.ts +63 -0
- package/dist/sensor/capture-mode-timing.d.ts.map +1 -0
- package/dist/sensor/capture-mode-timing.js +270 -0
- package/dist/sensor/capture-mode-timing.js.map +1 -0
- package/dist/sensor/capture-mode.d.ts.map +1 -1
- package/dist/sensor/capture-mode.js +13 -0
- package/dist/sensor/capture-mode.js.map +1 -1
- package/dist/sensor/color-sampling.d.ts.map +1 -1
- package/dist/sensor/color-sampling.js +19 -0
- package/dist/sensor/color-sampling.js.map +1 -1
- package/dist/sensor/constant-rate-temporal-integration.d.ts +126 -0
- package/dist/sensor/constant-rate-temporal-integration.d.ts.map +1 -0
- package/dist/sensor/constant-rate-temporal-integration.js +382 -0
- package/dist/sensor/constant-rate-temporal-integration.js.map +1 -0
- package/dist/sensor/dark-current.d.ts +169 -0
- package/dist/sensor/dark-current.d.ts.map +1 -0
- package/dist/sensor/dark-current.js +427 -0
- package/dist/sensor/dark-current.js.map +1 -0
- package/dist/sensor/environment-photo-signal.d.ts +123 -0
- package/dist/sensor/environment-photo-signal.d.ts.map +1 -0
- package/dist/sensor/environment-photo-signal.js +186 -0
- package/dist/sensor/environment-photo-signal.js.map +1 -0
- package/dist/sensor/eqe-electron-rate.d.ts +107 -0
- package/dist/sensor/eqe-electron-rate.d.ts.map +1 -0
- package/dist/sensor/eqe-electron-rate.js +561 -0
- package/dist/sensor/eqe-electron-rate.js.map +1 -0
- package/dist/sensor/eqe-local-exposure.d.ts +65 -0
- package/dist/sensor/eqe-local-exposure.d.ts.map +1 -0
- package/dist/sensor/eqe-local-exposure.js +84 -0
- package/dist/sensor/eqe-local-exposure.js.map +1 -0
- package/dist/sensor/eqe-temporal-exposure.d.ts +55 -0
- package/dist/sensor/eqe-temporal-exposure.d.ts.map +1 -0
- package/dist/sensor/eqe-temporal-exposure.js +62 -0
- package/dist/sensor/eqe-temporal-exposure.js.map +1 -0
- package/dist/sensor/exposure-window.d.ts +14 -0
- package/dist/sensor/exposure-window.d.ts.map +1 -1
- package/dist/sensor/exposure-window.js +14 -0
- package/dist/sensor/exposure-window.js.map +1 -1
- package/dist/sensor/iso-signal-chain.d.ts +148 -0
- package/dist/sensor/iso-signal-chain.d.ts.map +1 -0
- package/dist/sensor/iso-signal-chain.js +411 -0
- package/dist/sensor/iso-signal-chain.js.map +1 -0
- package/dist/sensor/local-exposure-binding.d.ts +87 -0
- package/dist/sensor/local-exposure-binding.d.ts.map +1 -0
- package/dist/sensor/local-exposure-binding.js +214 -0
- package/dist/sensor/local-exposure-binding.js.map +1 -0
- package/dist/sensor/optical-stack.d.ts.map +1 -1
- package/dist/sensor/optical-stack.js +17 -0
- package/dist/sensor/optical-stack.js.map +1 -1
- package/dist/sensor/photon-energy.d.ts +97 -0
- package/dist/sensor/photon-energy.d.ts.map +1 -0
- package/dist/sensor/photon-energy.js +390 -0
- package/dist/sensor/photon-energy.js.map +1 -0
- package/dist/sensor/physical-charge-capacity.d.ts +130 -0
- package/dist/sensor/physical-charge-capacity.d.ts.map +1 -0
- package/dist/sensor/physical-charge-capacity.js +345 -0
- package/dist/sensor/physical-charge-capacity.js.map +1 -0
- package/dist/sensor/pixel-pitch.d.ts +6 -0
- package/dist/sensor/pixel-pitch.d.ts.map +1 -1
- package/dist/sensor/pixel-pitch.js +6 -0
- package/dist/sensor/pixel-pitch.js.map +1 -1
- package/dist/sensor/radiometry-readiness.d.ts +10 -0
- package/dist/sensor/radiometry-readiness.d.ts.map +1 -1
- package/dist/sensor/radiometry-readiness.js +10 -0
- package/dist/sensor/radiometry-readiness.js.map +1 -1
- package/dist/sensor/raw-readout.d.ts +314 -0
- package/dist/sensor/raw-readout.d.ts.map +1 -0
- package/dist/sensor/raw-readout.js +914 -0
- package/dist/sensor/raw-readout.js.map +1 -0
- package/dist/sensor/raw-reconstruction.d.ts +170 -0
- package/dist/sensor/raw-reconstruction.d.ts.map +1 -0
- package/dist/sensor/raw-reconstruction.js +424 -0
- package/dist/sensor/raw-reconstruction.js.map +1 -0
- package/dist/sensor/readout-exposure-linkage.d.ts +12 -0
- package/dist/sensor/readout-exposure-linkage.d.ts.map +1 -1
- package/dist/sensor/readout-exposure-linkage.js +12 -0
- package/dist/sensor/readout-exposure-linkage.js.map +1 -1
- package/dist/sensor/readout-timing.d.ts +13 -0
- package/dist/sensor/readout-timing.d.ts.map +1 -1
- package/dist/sensor/readout-timing.js +13 -0
- package/dist/sensor/readout-timing.js.map +1 -1
- package/dist/sensor/response-application-compatibility.d.ts +136 -0
- package/dist/sensor/response-application-compatibility.d.ts.map +1 -0
- package/dist/sensor/response-application-compatibility.js +408 -0
- package/dist/sensor/response-application-compatibility.js.map +1 -0
- package/dist/sensor/response-operating-range.d.ts +173 -0
- package/dist/sensor/response-operating-range.d.ts.map +1 -0
- package/dist/sensor/response-operating-range.js +672 -0
- package/dist/sensor/response-operating-range.js.map +1 -0
- package/dist/sensor/responsivity-photocurrent.d.ts +158 -0
- package/dist/sensor/responsivity-photocurrent.d.ts.map +1 -0
- package/dist/sensor/responsivity-photocurrent.js +644 -0
- package/dist/sensor/responsivity-photocurrent.js.map +1 -0
- package/dist/sensor/sampling-aperture.d.ts.map +1 -1
- package/dist/sensor/sampling-aperture.js +14 -0
- package/dist/sensor/sampling-aperture.js.map +1 -1
- package/dist/sensor/scene-eqe-temporal-exposure.d.ts +45 -0
- package/dist/sensor/scene-eqe-temporal-exposure.d.ts.map +1 -0
- package/dist/sensor/scene-eqe-temporal-exposure.js +64 -0
- package/dist/sensor/scene-eqe-temporal-exposure.js.map +1 -0
- package/dist/sensor/sensor-geometry.d.ts +12 -0
- package/dist/sensor/sensor-geometry.d.ts.map +1 -1
- package/dist/sensor/sensor-geometry.js +12 -0
- package/dist/sensor/sensor-geometry.js.map +1 -1
- package/dist/sensor/signal-noise.d.ts +10 -0
- package/dist/sensor/signal-noise.d.ts.map +1 -1
- package/dist/sensor/signal-noise.js +10 -0
- package/dist/sensor/signal-noise.js.map +1 -1
- package/dist/sensor/spatial-sample-reduction.d.ts +44 -1
- package/dist/sensor/spatial-sample-reduction.d.ts.map +1 -1
- package/dist/sensor/spatial-sample-reduction.js +51 -5
- package/dist/sensor/spatial-sample-reduction.js.map +1 -1
- package/dist/sensor/spatial-sampling-quadrature.d.ts +24 -0
- package/dist/sensor/spatial-sampling-quadrature.d.ts.map +1 -1
- package/dist/sensor/spatial-sampling-quadrature.js +27 -0
- package/dist/sensor/spatial-sampling-quadrature.js.map +1 -1
- package/dist/sensor/spatio-spectral-reduction.d.ts +187 -0
- package/dist/sensor/spatio-spectral-reduction.d.ts.map +1 -0
- package/dist/sensor/spatio-spectral-reduction.js +373 -0
- package/dist/sensor/spatio-spectral-reduction.js.map +1 -0
- package/dist/sensor/spectral-coverage.d.ts +24 -0
- package/dist/sensor/spectral-coverage.d.ts.map +1 -0
- package/dist/sensor/spectral-coverage.js +86 -0
- package/dist/sensor/spectral-coverage.js.map +1 -0
- package/dist/sensor/spectral-quadrature.d.ts +169 -0
- package/dist/sensor/spectral-quadrature.d.ts.map +1 -0
- package/dist/sensor/spectral-quadrature.js +542 -0
- package/dist/sensor/spectral-quadrature.js.map +1 -0
- package/dist/sensor/spectral-response.d.ts +192 -0
- package/dist/sensor/spectral-response.d.ts.map +1 -0
- package/dist/sensor/spectral-response.js +664 -0
- package/dist/sensor/spectral-response.js.map +1 -0
- package/dist/sensor/temporal-eqe-sum.d.ts +15 -0
- package/dist/sensor/temporal-eqe-sum.d.ts.map +1 -0
- package/dist/sensor/temporal-eqe-sum.js +30 -0
- package/dist/sensor/temporal-eqe-sum.js.map +1 -0
- package/dist/sensor/temporal-photo-signal.d.ts +38 -0
- package/dist/sensor/temporal-photo-signal.d.ts.map +1 -0
- package/dist/sensor/temporal-photo-signal.js +110 -0
- package/dist/sensor/temporal-photo-signal.js.map +1 -0
- package/dist/sensor/temporal-sample-binding.d.ts +6 -0
- package/dist/sensor/temporal-sample-binding.d.ts.map +1 -0
- package/dist/sensor/temporal-sample-binding.js +32 -0
- package/dist/sensor/temporal-sample-binding.js.map +1 -0
- package/dist/simulation/poc-simulation.d.ts.map +1 -1
- package/dist/simulation/poc-simulation.js +34 -11
- package/dist/simulation/poc-simulation.js.map +1 -1
- package/dist/stabilization/camera-shake.d.ts +11 -0
- package/dist/stabilization/camera-shake.d.ts.map +1 -1
- package/dist/stabilization/camera-shake.js +11 -0
- package/dist/stabilization/camera-shake.js.map +1 -1
- package/dist/stabilization/system.d.ts +218 -0
- package/dist/stabilization/system.d.ts.map +1 -0
- package/dist/stabilization/system.js +695 -0
- package/dist/stabilization/system.js.map +1 -0
- package/docs/API_REFERENCE.md +2017 -0
- package/docs/API_STYLE.md +132 -0
- package/docs/ARCHITECTURE.md +134 -24
- package/docs/AUTOMATION_COORDINATION.md +2 -0
- package/docs/CAPTURE_COLOR.md +25 -0
- package/docs/CAPTURE_CORRECTED_SDR.md +25 -0
- package/docs/CAPTURE_EXPORT_METADATA.md +27 -0
- package/docs/CAPTURE_SDR.md +20 -0
- package/docs/DEVELOPERS.md +60 -0
- package/docs/DIGITAL_OPTICS_FOUNDATION.md +69 -0
- package/docs/ENVIRONMENT_RAW_CAPTURE.md +187 -0
- package/docs/EXPORT_ACCEPTANCE.md +133 -0
- package/docs/GENERIC_TIER_PRESETS.md +269 -0
- package/docs/GEOMETRIC_PREPARATION_REUSE.md +141 -0
- package/docs/IMAGE_FORMATION.md +80 -10
- package/docs/LINEAR_CAPTURE_ENCODING.md +25 -0
- package/docs/MOTION_AND_SIGNAL.md +5 -3
- package/docs/NUMERICAL_CORRECTNESS.md +191 -0
- package/docs/PERFORMANCE_BASELINE.md +56 -0
- package/docs/PHOTOGRAPHIC_EXPORT.md +206 -0
- package/docs/PHYSICS_FOUNDATION.md +152 -5
- package/docs/POC_API.md +2 -0
- package/docs/POC_PROJECTION_REUSE.md +124 -0
- package/docs/PROCESSED_OUTPUT.md +157 -0
- package/docs/PRODUCTION_COMPOSITION.md +373 -0
- package/docs/PRODUCTION_ENVIRONMENT_CAPTURE.md +131 -0
- package/docs/PROVENANCE.md +4 -0
- package/docs/PSF_FOUNDATION.md +110 -88
- package/docs/RAW_FRAME_ENVELOPE.md +56 -0
- package/docs/RAW_FRAME_RECONSTRUCTION.md +30 -0
- package/docs/RELEASE_1_0.md +65 -0
- package/docs/RELEASE_AUDIT.md +38 -0
- package/docs/SCENE_RADIANCE_AND_ILLUMINATION.md +298 -0
- package/docs/SCENE_SENSOR_QUADRATURE.md +98 -0
- package/docs/SCENE_SENSOR_TEMPORAL_EXPOSURE.md +86 -0
- package/docs/SCIENTIFIC_ASSURANCE.md +280 -0
- package/docs/SCIENTIFIC_CONFORMANCE.md +83 -0
- package/docs/SDR_RENDERING.md +33 -0
- package/docs/SENSOR_ENVIRONMENT_QUERY.md +86 -0
- package/docs/SENSOR_EQE_LOCAL_EXPOSURE.md +104 -0
- package/docs/SENSOR_EQE_TEMPORAL_EXPOSURE.md +74 -0
- package/docs/SENSOR_PSF_QUADRATURE.md +90 -0
- package/docs/SENSOR_RAW_FRAME.md +20 -0
- package/docs/SENSOR_RAW_PRODUCER.md +77 -0
- package/docs/SIGNAL_CONFORMANCE.md +23 -0
- package/docs/SIMULATED_CAPTURE.md +65 -0
- package/docs/STABILIZATION.md +160 -17
- package/docs/TEMPORAL_PHOTO_RAW.md +83 -0
- package/docs/TIER_ACCEPTANCE.md +129 -0
- package/docs/TIER_PRESET_ACCEPTANCE.md +59 -0
- package/docs/USAGE.md +5050 -1047
- package/docs/V1_COMPOSITION_MAP.md +123 -0
- package/docs/V1_HELPER_REUSE_REVIEW.md +60 -0
- package/docs/V1_PERFORMANCE_DISPOSITION.md +88 -0
- package/docs/api/camera-equivalent-focal-length.md +53 -0
- package/docs/api/camera-field-of-view.md +119 -0
- package/docs/api/camera-projected-object-size.md +54 -0
- package/docs/api/capture-capture-export-metadata.md +107 -0
- package/docs/api/capture-environment-raw-producer.md +56 -0
- package/docs/api/capture-focus-control.md +419 -0
- package/docs/api/capture-linear-encoding.md +99 -0
- package/docs/api/capture-photographic-export.md +172 -0
- package/docs/api/capture-raw-frame-reconstruction.md +87 -0
- package/docs/api/capture-release-sequence.md +252 -0
- package/docs/api/capture-sensor-raw-frame.md +66 -0
- package/docs/api/capture-sensor-raw-producer.md +98 -0
- package/docs/api/capture-simulated-capture.md +179 -0
- package/docs/api/color-capture-color.md +122 -0
- package/docs/api/color-white-balance.md +386 -0
- package/docs/api/composition-image-formation-plan.md +825 -0
- package/docs/api/composition-plan-consumer.md +98 -0
- package/docs/api/core-calculation-result.md +220 -0
- package/docs/api/core-configuration-error.md +19 -0
- package/docs/api/core-image-formation.md +204 -0
- package/docs/api/core-scientific-assurance.md +214 -0
- package/docs/api/core-spectral-composition.md +268 -0
- package/docs/api/core-spectral.md +78 -0
- package/docs/api/core-validation.md +34 -0
- package/docs/api/core-version.md +14 -0
- package/docs/api/equipment-exposure-capabilities.md +270 -0
- package/docs/api/equipment-generic-tier-assets.md +82 -0
- package/docs/api/equipment-generic-tier-presets.md +103 -0
- package/docs/api/equipment-iso-capabilities.md +295 -0
- package/docs/api/equipment-metering-capabilities.md +126 -0
- package/docs/api/equipment-release-capabilities.md +91 -0
- package/docs/api/exports.json +5656 -0
- package/docs/api/exposure-exposure-duration-control.md +115 -0
- package/docs/api/exposure-exposure-mode-resolver.md +966 -0
- package/docs/api/exposure-exposure.md +150 -0
- package/docs/api/exposure-flash.md +327 -0
- package/docs/api/exposure-metering-scene-radiance.md +154 -0
- package/docs/api/exposure-metering-target.md +134 -0
- package/docs/api/exposure-metering-temporal.md +77 -0
- package/docs/api/exposure-metering.md +172 -0
- package/docs/api/exposure-program-line.md +64 -0
- package/docs/api/motion-camera-rotation.md +215 -0
- package/docs/api/motion-capture-rotation-inverse-mapping.md +128 -0
- package/docs/api/motion-capture-rotation-temporal-quadrature.md +127 -0
- package/docs/api/motion-capture-rotation-trajectory.md +132 -0
- package/docs/api/motion-capture-translation-parallax-temporal-quadrature.md +171 -0
- package/docs/api/motion-extended-object-projection.md +312 -0
- package/docs/api/motion-projected-motion.md +60 -0
- package/docs/api/optics-aperture.md +69 -0
- package/docs/api/optics-circle-of-confusion.md +46 -0
- package/docs/api/optics-complex-pupil-psf.md +193 -0
- package/docs/api/optics-depth-of-field.md +92 -0
- package/docs/api/optics-diffraction.md +46 -0
- package/docs/api/optics-focus-breathing.md +119 -0
- package/docs/api/optics-focus-state.md +64 -0
- package/docs/api/optics-front-of-lens-filter.md +263 -0
- package/docs/api/optics-illumination-vignetting.md +95 -0
- package/docs/api/optics-lateral-chromatic-aberration.md +225 -0
- package/docs/api/optics-lens-psf-profile.md +380 -0
- package/docs/api/optics-polygon-diffraction.md +68 -0
- package/docs/api/optics-profile-contract.md +47 -0
- package/docs/api/optics-psf-foundation.md +181 -0
- package/docs/api/optics-radial-distortion.md +194 -0
- package/docs/api/optics-scene-to-sensor-irradiance.md +371 -0
- package/docs/api/optics-scene-to-sensor-quadrature.md +78 -0
- package/docs/api/optics-sensor-environment-query.md +58 -0
- package/docs/api/optics-sensor-psf-quadrature.md +81 -0
- package/docs/api/optics-stray-light.md +109 -0
- package/docs/api/optics-thin-lens.md +53 -0
- package/docs/api/output-capture-corrected-sdr.md +71 -0
- package/docs/api/output-capture-geometry.md +500 -0
- package/docs/api/output-capture-sdr.md +69 -0
- package/docs/api/output-crop.md +47 -0
- package/docs/api/output-geometric-transforms.md +199 -0
- package/docs/api/output-lens-corrections.md +162 -0
- package/docs/api/output-sdr-rendering.md +122 -0
- package/docs/api/output-subject-framing-crop.md +59 -0
- package/docs/api/schema-camera.md +84 -0
- package/docs/api/schema-illumination-spectral.md +77 -0
- package/docs/api/schema-illumination-temporal.md +289 -0
- package/docs/api/schema-illumination.md +246 -0
- package/docs/api/schema-scene-radiance-temporal.md +215 -0
- package/docs/api/schema-scene-radiance.md +415 -0
- package/docs/api/schema-scene.md +105 -0
- package/docs/api/schema-validation.md +25 -0
- package/docs/api/sensor-accumulated-charge.md +273 -0
- package/docs/api/sensor-architecture.md +155 -0
- package/docs/api/sensor-camera-saturation-capacity.md +215 -0
- package/docs/api/sensor-capture-color-sampling-binding.md +323 -0
- package/docs/api/sensor-capture-mode-timing.md +123 -0
- package/docs/api/sensor-capture-mode.md +321 -0
- package/docs/api/sensor-color-sampling.md +228 -0
- package/docs/api/sensor-constant-rate-temporal-integration.md +152 -0
- package/docs/api/sensor-dark-current.md +227 -0
- package/docs/api/sensor-environment-photo-signal.md +77 -0
- package/docs/api/sensor-eqe-electron-rate.md +166 -0
- package/docs/api/sensor-eqe-local-exposure.md +68 -0
- package/docs/api/sensor-eqe-temporal-exposure.md +73 -0
- package/docs/api/sensor-exposure-window.md +183 -0
- package/docs/api/sensor-iso-signal-chain.md +264 -0
- package/docs/api/sensor-local-exposure-binding.md +126 -0
- package/docs/api/sensor-optical-stack.md +211 -0
- package/docs/api/sensor-photon-energy.md +149 -0
- package/docs/api/sensor-physical-charge-capacity.md +196 -0
- package/docs/api/sensor-pixel-pitch.md +41 -0
- package/docs/api/sensor-radiometry-readiness.md +240 -0
- package/docs/api/sensor-raw-readout.md +499 -0
- package/docs/api/sensor-raw-reconstruction.md +260 -0
- package/docs/api/sensor-readout-exposure-linkage.md +172 -0
- package/docs/api/sensor-readout-timing.md +209 -0
- package/docs/api/sensor-response-application-compatibility.md +256 -0
- package/docs/api/sensor-response-operating-range.md +293 -0
- package/docs/api/sensor-responsivity-photocurrent.md +245 -0
- package/docs/api/sensor-sampling-aperture.md +221 -0
- package/docs/api/sensor-scene-eqe-temporal-exposure.md +56 -0
- package/docs/api/sensor-sensor-geometry.md +143 -0
- package/docs/api/sensor-signal-noise.md +75 -0
- package/docs/api/sensor-spatial-sample-reduction.md +186 -0
- package/docs/api/sensor-spatial-sampling-quadrature.md +188 -0
- package/docs/api/sensor-spatio-spectral-reduction.md +217 -0
- package/docs/api/sensor-spectral-coverage.md +33 -0
- package/docs/api/sensor-spectral-quadrature.md +183 -0
- package/docs/api/sensor-spectral-response.md +291 -0
- package/docs/api/sensor-temporal-photo-signal.md +62 -0
- package/docs/api/simulation-poc-simulation.md +364 -0
- package/docs/api/stabilization-camera-shake.md +71 -0
- package/docs/api/stabilization-system.md +442 -0
- package/docs/benchmarks/2026-10-01-main-baseline.json +694 -0
- package/docs/benchmarks/2026-10-02-geometric-preparation-reuse.json +2190 -0
- package/docs/benchmarks/2026-10-02-poc-projection-reuse.json +2423 -0
- package/docs/benchmarks/2026-10-02-v1-environment-gc-profile.json +210 -0
- package/docs/benchmarks/2026-10-02-v1-environment-ordinary.json +187 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-gc-profile.json +756 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-1.json +711 -0
- package/docs/benchmarks/2026-10-02-v1-geometry-ordinary-2.json +711 -0
- package/docs/benchmarks/2026-10-02-v1-poc-gc-profile.json +885 -0
- package/docs/benchmarks/2026-10-02-v1-poc-ordinary-1.json +868 -0
- package/docs/benchmarks/2026-10-02-v1-poc-ordinary-2.json +868 -0
- package/docs/examples/production-capture.mjs +34 -0
- package/docs/examples/production-request.json +4613 -0
- package/docs/examples/quick-start.mjs +12 -0
- package/docs/validation/documentation-fragments.json +212 -0
- package/docs/validation/release-audit-inventory.json +1306 -0
- package/docs/validation/tier-acceptance-report-v1.json +2538 -0
- package/package.json +15 -3
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# core/scientific-assurance.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## ComposedScientificAssurance
|
|
6
|
+
|
|
7
|
+
Cross-stage status and retained evidence for one declared scientific result.
|
|
8
|
+
Required incomplete/approximate children constrain the aggregate; deterministic
|
|
9
|
+
processing cannot upgrade approximation to calibration. Uncertainty components
|
|
10
|
+
remain independently identified unless an explicit mathematical propagation model
|
|
11
|
+
justifies a combination. A count of successful stages is not an accuracy bound.
|
|
12
|
+
|
|
13
|
+
```ts
|
|
14
|
+
export interface ComposedScientificAssurance {
|
|
15
|
+
version:
|
|
16
|
+
typeof SCIENTIFIC_ASSURANCE_CONTRACT_VERSION;
|
|
17
|
+
scientificStatus:
|
|
18
|
+
ScientificAssuranceStatus;
|
|
19
|
+
weakestRequiredComponentIds:
|
|
20
|
+
readonly string[];
|
|
21
|
+
evidenceStatus:
|
|
22
|
+
| "complete"
|
|
23
|
+
| "missing-required-evidence";
|
|
24
|
+
missingRequiredEvidenceComponentIds:
|
|
25
|
+
readonly string[];
|
|
26
|
+
uncertainty:
|
|
27
|
+
ComposedScientificUncertaintyStatus;
|
|
28
|
+
components:
|
|
29
|
+
readonly ScientificAssuranceComponent[];
|
|
30
|
+
componentEvidencePreserved: true;
|
|
31
|
+
componentUncertaintyPreserved: true;
|
|
32
|
+
aggregateNumericUncertaintyFabricated:
|
|
33
|
+
false;
|
|
34
|
+
downstreamStatusPromotedAboveInputs:
|
|
35
|
+
false;
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## ComposedScientificUncertaintyStatus
|
|
40
|
+
|
|
41
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
export type ComposedScientificUncertaintyStatus =
|
|
45
|
+
| {
|
|
46
|
+
kind: "unknown";
|
|
47
|
+
componentIds:
|
|
48
|
+
readonly string[];
|
|
49
|
+
limitation: string;
|
|
50
|
+
}
|
|
51
|
+
| {
|
|
52
|
+
kind: "not-quantified";
|
|
53
|
+
componentIds:
|
|
54
|
+
readonly string[];
|
|
55
|
+
limitation: string;
|
|
56
|
+
}
|
|
57
|
+
| {
|
|
58
|
+
kind: "not-propagated";
|
|
59
|
+
componentIds:
|
|
60
|
+
readonly string[];
|
|
61
|
+
limitation: string;
|
|
62
|
+
}
|
|
63
|
+
| {
|
|
64
|
+
kind: "not-applicable";
|
|
65
|
+
componentIds:
|
|
66
|
+
readonly string[];
|
|
67
|
+
limitation: string;
|
|
68
|
+
};
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## composeScientificAssurance
|
|
72
|
+
|
|
73
|
+
Composes scientific-status, evidence and uncertainty semantics without
|
|
74
|
+
inventing a numeric aggregate uncertainty.
|
|
75
|
+
|
|
76
|
+
Required downstream status is bounded by the weakest required input.
|
|
77
|
+
Component evidence/uncertainty is preserved verbatim after validation.
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
export function composeScientificAssurance(
|
|
81
|
+
input:
|
|
82
|
+
ComposeScientificAssuranceInput
|
|
83
|
+
): ComposedScientificAssurance;
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
87
|
+
|
|
88
|
+
## ComposeScientificAssuranceInput
|
|
89
|
+
|
|
90
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
export interface ComposeScientificAssuranceInput {
|
|
94
|
+
components:
|
|
95
|
+
readonly ScientificAssuranceComponent[];
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## SCIENTIFIC_ASSURANCE_CONTRACT_VERSION
|
|
100
|
+
|
|
101
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
102
|
+
|
|
103
|
+
```ts
|
|
104
|
+
SCIENTIFIC_ASSURANCE_CONTRACT_VERSION =
|
|
105
|
+
"0.1.0" as const
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## ScientificAssuranceBasisKind
|
|
109
|
+
|
|
110
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
111
|
+
|
|
112
|
+
```ts
|
|
113
|
+
export type ScientificAssuranceBasisKind =
|
|
114
|
+
| "evidence-backed-fact"
|
|
115
|
+
| "photivra-model-assumption"
|
|
116
|
+
| "not-applicable";
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## ScientificAssuranceComponent
|
|
120
|
+
|
|
121
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
122
|
+
|
|
123
|
+
```ts
|
|
124
|
+
export interface ScientificAssuranceComponent {
|
|
125
|
+
componentId: string;
|
|
126
|
+
role: string;
|
|
127
|
+
required: boolean;
|
|
128
|
+
sourceIdentity:
|
|
129
|
+
ScientificAssuranceSourceIdentity;
|
|
130
|
+
basisKind:
|
|
131
|
+
ScientificAssuranceBasisKind;
|
|
132
|
+
scientificStatus:
|
|
133
|
+
ScientificAssuranceStatus;
|
|
134
|
+
evidenceRequirement:
|
|
135
|
+
| "required"
|
|
136
|
+
| "not-required";
|
|
137
|
+
evidence:
|
|
138
|
+
readonly EvidenceProvenance[];
|
|
139
|
+
uncertainty:
|
|
140
|
+
ScientificAssuranceComponentUncertainty;
|
|
141
|
+
limitations:
|
|
142
|
+
readonly string[];
|
|
143
|
+
}
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## ScientificAssuranceComponentUncertainty
|
|
147
|
+
|
|
148
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
149
|
+
|
|
150
|
+
```ts
|
|
151
|
+
export type ScientificAssuranceComponentUncertainty =
|
|
152
|
+
| {
|
|
153
|
+
kind: "relative";
|
|
154
|
+
fraction: number;
|
|
155
|
+
basis: string;
|
|
156
|
+
}
|
|
157
|
+
| {
|
|
158
|
+
kind: "absolute";
|
|
159
|
+
plusMinus: number;
|
|
160
|
+
unit: string;
|
|
161
|
+
basis?: string;
|
|
162
|
+
}
|
|
163
|
+
| {
|
|
164
|
+
kind: "calculation-quality";
|
|
165
|
+
quality: CalculationQuality;
|
|
166
|
+
}
|
|
167
|
+
| {
|
|
168
|
+
kind: "not-quantified";
|
|
169
|
+
limitation: string;
|
|
170
|
+
}
|
|
171
|
+
| {
|
|
172
|
+
kind: "unknown";
|
|
173
|
+
limitation: string;
|
|
174
|
+
}
|
|
175
|
+
| {
|
|
176
|
+
kind: "not-applicable";
|
|
177
|
+
reason: string;
|
|
178
|
+
};
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## ScientificAssuranceSourceIdentity
|
|
182
|
+
|
|
183
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
184
|
+
|
|
185
|
+
```ts
|
|
186
|
+
export interface ScientificAssuranceSourceIdentity {
|
|
187
|
+
kind: ScientificAssuranceSourceKind;
|
|
188
|
+
id: string;
|
|
189
|
+
version?: string;
|
|
190
|
+
}
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## ScientificAssuranceSourceKind
|
|
194
|
+
|
|
195
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
196
|
+
|
|
197
|
+
```ts
|
|
198
|
+
export type ScientificAssuranceSourceKind =
|
|
199
|
+
| "profile"
|
|
200
|
+
| "result"
|
|
201
|
+
| "model"
|
|
202
|
+
| "fixture";
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## ScientificAssuranceStatus
|
|
206
|
+
|
|
207
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
208
|
+
|
|
209
|
+
```ts
|
|
210
|
+
export type ScientificAssuranceStatus =
|
|
211
|
+
| "calibrated"
|
|
212
|
+
| "approximation"
|
|
213
|
+
| "unknown";
|
|
214
|
+
```
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
# core/spectral-composition.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## composeSpectralCoverage
|
|
6
|
+
|
|
7
|
+
Intersects continuous spectral support and unions all interpolation
|
|
8
|
+
breakpoints inside the common range.
|
|
9
|
+
|
|
10
|
+
Air/vacuum conversion is never implicit. Discrete lines are deliberately
|
|
11
|
+
excluded because delta-like line measures require a different integration
|
|
12
|
+
path from continuous per-nanometre densities.
|
|
13
|
+
|
|
14
|
+
```ts
|
|
15
|
+
export function composeSpectralCoverage(
|
|
16
|
+
input: ComposeSpectralCoverageInput
|
|
17
|
+
): SpectralCoverageComposition;
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
21
|
+
|
|
22
|
+
## ComposeSpectralCoverageInput
|
|
23
|
+
|
|
24
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
export interface ComposeSpectralCoverageInput {
|
|
28
|
+
participants:
|
|
29
|
+
readonly SpectralCoverageParticipant[];
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## DiscreteSpectralLineMeasure
|
|
34
|
+
|
|
35
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
36
|
+
|
|
37
|
+
```ts
|
|
38
|
+
export interface DiscreteSpectralLineMeasure {
|
|
39
|
+
wavelengthBasis:
|
|
40
|
+
ResolvedSpectralWavelengthBasis;
|
|
41
|
+
quantityUnit:
|
|
42
|
+
DiscreteSpectralLineQuantityUnit;
|
|
43
|
+
lineModel: "delta-like-integrated";
|
|
44
|
+
lines:
|
|
45
|
+
readonly DiscreteSpectralLineMeasureEntry[];
|
|
46
|
+
continuousSpectralDensityAssumed: false;
|
|
47
|
+
wavelengthMeasureMultiplicationRequired:
|
|
48
|
+
false;
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## DiscreteSpectralLineMeasureEntry
|
|
53
|
+
|
|
54
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
55
|
+
|
|
56
|
+
```ts
|
|
57
|
+
export interface DiscreteSpectralLineMeasureEntry {
|
|
58
|
+
lineId: string;
|
|
59
|
+
wavelengthNanometers: number;
|
|
60
|
+
integratedQuantity: number;
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## DiscreteSpectralLineQuantityUnit
|
|
65
|
+
|
|
66
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
67
|
+
|
|
68
|
+
```ts
|
|
69
|
+
export type DiscreteSpectralLineQuantityUnit =
|
|
70
|
+
| "relative"
|
|
71
|
+
| "W/sr"
|
|
72
|
+
| "W/m^2"
|
|
73
|
+
| "W/m^2/sr";
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## DistributeIntegratedQuantityAcrossDiscreteLinesInput
|
|
77
|
+
|
|
78
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
79
|
+
|
|
80
|
+
```ts
|
|
81
|
+
export interface DistributeIntegratedQuantityAcrossDiscreteLinesInput {
|
|
82
|
+
distribution:
|
|
83
|
+
NormalizedDiscreteSpectralLineDistribution;
|
|
84
|
+
totalIntegratedQuantity: number;
|
|
85
|
+
quantityUnit:
|
|
86
|
+
DiscreteSpectralLineQuantityUnit;
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## distributeIntegratedQuantityAcrossDiscreteSpectralLines
|
|
91
|
+
|
|
92
|
+
Distributes one wavelength-integrated quantity across normalized discrete
|
|
93
|
+
line fractions without inventing a continuous line width.
|
|
94
|
+
|
|
95
|
+
```ts
|
|
96
|
+
export function distributeIntegratedQuantityAcrossDiscreteSpectralLines(
|
|
97
|
+
input:
|
|
98
|
+
DistributeIntegratedQuantityAcrossDiscreteLinesInput
|
|
99
|
+
): DiscreteSpectralLineMeasure;
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
103
|
+
|
|
104
|
+
## IntegratedDiscreteSpectralLineMeasure
|
|
105
|
+
|
|
106
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
107
|
+
|
|
108
|
+
```ts
|
|
109
|
+
export interface IntegratedDiscreteSpectralLineMeasure {
|
|
110
|
+
wavelengthBasis:
|
|
111
|
+
ResolvedSpectralWavelengthBasis;
|
|
112
|
+
quantityUnit:
|
|
113
|
+
DiscreteSpectralLineQuantityUnit;
|
|
114
|
+
integratedQuantity: number;
|
|
115
|
+
lineCount: number;
|
|
116
|
+
continuousQuadratureApplied: false;
|
|
117
|
+
wavelengthMeasureMultiplicationApplied:
|
|
118
|
+
false;
|
|
119
|
+
}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## integrateDiscreteSpectralLineMeasure
|
|
123
|
+
|
|
124
|
+
Integrates a discrete line measure by summing already wavelength-integrated
|
|
125
|
+
line contributions. No d-lambda factor is applied.
|
|
126
|
+
|
|
127
|
+
```ts
|
|
128
|
+
export function integrateDiscreteSpectralLineMeasure(
|
|
129
|
+
measure:
|
|
130
|
+
DiscreteSpectralLineMeasure
|
|
131
|
+
): IntegratedDiscreteSpectralLineMeasure;
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
135
|
+
|
|
136
|
+
## NormalizedDiscreteSpectralLine
|
|
137
|
+
|
|
138
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
139
|
+
|
|
140
|
+
```ts
|
|
141
|
+
export interface NormalizedDiscreteSpectralLine {
|
|
142
|
+
lineId: string;
|
|
143
|
+
wavelengthNanometers: number;
|
|
144
|
+
normalizedIntegratedWeight: number;
|
|
145
|
+
}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## NormalizedDiscreteSpectralLineDistribution
|
|
149
|
+
|
|
150
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
151
|
+
|
|
152
|
+
```ts
|
|
153
|
+
export interface NormalizedDiscreteSpectralLineDistribution {
|
|
154
|
+
wavelengthBasis:
|
|
155
|
+
ResolvedSpectralWavelengthBasis;
|
|
156
|
+
lineModel: "delta-like-integrated";
|
|
157
|
+
normalization:
|
|
158
|
+
"sum-normalized-integrated-weight-to-one";
|
|
159
|
+
lines:
|
|
160
|
+
readonly NormalizedDiscreteSpectralLine[];
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## parseNormalizedDiscreteSpectralLineDistribution
|
|
165
|
+
|
|
166
|
+
Parses a normalized set of delta-like discrete spectral lines.
|
|
167
|
+
|
|
168
|
+
Each weight is an integrated line fraction, not a per-nanometre spectral
|
|
169
|
+
density sample. The weights must sum to one.
|
|
170
|
+
|
|
171
|
+
```ts
|
|
172
|
+
export function parseNormalizedDiscreteSpectralLineDistribution(
|
|
173
|
+
value: unknown,
|
|
174
|
+
path =
|
|
175
|
+
"discreteSpectralLineDistribution"
|
|
176
|
+
): NormalizedDiscreteSpectralLineDistribution;
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
180
|
+
|
|
181
|
+
## parseSpectralCoverageParticipant
|
|
182
|
+
|
|
183
|
+
Parses one continuous spectral-coverage participant.
|
|
184
|
+
|
|
185
|
+
This contract describes support and interpolation breakpoints only. It does
|
|
186
|
+
not carry spectral values, transmission, response, radiance, or uncertainty.
|
|
187
|
+
|
|
188
|
+
```ts
|
|
189
|
+
export function parseSpectralCoverageParticipant(
|
|
190
|
+
value: unknown,
|
|
191
|
+
path = "spectralCoverageParticipant"
|
|
192
|
+
): SpectralCoverageParticipant;
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
196
|
+
|
|
197
|
+
## ResolvedSpectralWavelengthBasis
|
|
198
|
+
|
|
199
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
200
|
+
|
|
201
|
+
```ts
|
|
202
|
+
export type ResolvedSpectralWavelengthBasis =
|
|
203
|
+
Exclude<SpectralWavelengthBasis, "unspecified">;
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
## SpectralCoverageComposition
|
|
207
|
+
|
|
208
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
209
|
+
|
|
210
|
+
```ts
|
|
211
|
+
export interface SpectralCoverageComposition {
|
|
212
|
+
wavelengthBasis:
|
|
213
|
+
ResolvedSpectralWavelengthBasis;
|
|
214
|
+
commonWavelengthRangeNanometers:
|
|
215
|
+
SpectralWavelengthRangeNanometers;
|
|
216
|
+
/**
|
|
217
|
+
* Common-range endpoints plus every participant breakpoint that falls
|
|
218
|
+
* strictly inside the common overlap.
|
|
219
|
+
*/
|
|
220
|
+
segmentBoundariesNanometers:
|
|
221
|
+
readonly number[];
|
|
222
|
+
participantIds: readonly string[];
|
|
223
|
+
participantRoles:
|
|
224
|
+
readonly SpectralCoverageParticipantRole[];
|
|
225
|
+
continuousCoverageIntersectionEstablished:
|
|
226
|
+
true;
|
|
227
|
+
breakpointUnionEstablished: true;
|
|
228
|
+
responseValuesApplied: false;
|
|
229
|
+
spectralDensityIntegrated: false;
|
|
230
|
+
discreteLinesIncluded: false;
|
|
231
|
+
airVacuumConversionPerformed: false;
|
|
232
|
+
}
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
## SpectralCoverageParticipant
|
|
236
|
+
|
|
237
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
238
|
+
|
|
239
|
+
```ts
|
|
240
|
+
export interface SpectralCoverageParticipant {
|
|
241
|
+
participantId: string;
|
|
242
|
+
role: SpectralCoverageParticipantRole;
|
|
243
|
+
wavelengthBasis:
|
|
244
|
+
ResolvedSpectralWavelengthBasis;
|
|
245
|
+
wavelengthRangeNanometers:
|
|
246
|
+
SpectralWavelengthRangeNanometers;
|
|
247
|
+
/**
|
|
248
|
+
* Internal piecewise-continuous breakpoints. Range endpoints are carried
|
|
249
|
+
* separately and must not be duplicated here.
|
|
250
|
+
*/
|
|
251
|
+
breakpointsNanometers:
|
|
252
|
+
readonly number[];
|
|
253
|
+
}
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
## SpectralCoverageParticipantRole
|
|
257
|
+
|
|
258
|
+
The exact contract is declared below; use the domain guide for assumptions and staged integration.
|
|
259
|
+
|
|
260
|
+
```ts
|
|
261
|
+
export type SpectralCoverageParticipantRole =
|
|
262
|
+
| "illumination-source"
|
|
263
|
+
| "scene-radiance"
|
|
264
|
+
| "material-response"
|
|
265
|
+
| "optical-transmission"
|
|
266
|
+
| "sensor-response"
|
|
267
|
+
| "other";
|
|
268
|
+
```
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# core/spectral.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## parseSpectralWavelengthBasis
|
|
6
|
+
|
|
7
|
+
Parses a wavelength basis without inferring air/vacuum conversion.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
export function parseSpectralWavelengthBasis(
|
|
11
|
+
value: unknown,
|
|
12
|
+
path = "wavelengthBasis"
|
|
13
|
+
): SpectralWavelengthBasis;
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
17
|
+
|
|
18
|
+
## parseSpectralWavelengthRangeNanometers
|
|
19
|
+
|
|
20
|
+
Parses a positive non-empty wavelength interval in nanometres.
|
|
21
|
+
|
|
22
|
+
```ts
|
|
23
|
+
export function parseSpectralWavelengthRangeNanometers(
|
|
24
|
+
value: unknown,
|
|
25
|
+
path = "wavelengthRangeNanometers"
|
|
26
|
+
): SpectralWavelengthRangeNanometers;
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
30
|
+
|
|
31
|
+
## parseSpectralWavelengthSample
|
|
32
|
+
|
|
33
|
+
Parses one positive wavelength coordinate in nanometres.
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
export function parseSpectralWavelengthSample(
|
|
37
|
+
value: unknown,
|
|
38
|
+
path = "spectralSample"
|
|
39
|
+
): SpectralWavelengthSample;
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
This call is synchronous; any supplied provider must follow its explicit synchronous contract.
|
|
43
|
+
|
|
44
|
+
## SpectralWavelengthBasis
|
|
45
|
+
|
|
46
|
+
Explicit wavelength coordinate basis used by renderer-neutral spectral data.
|
|
47
|
+
|
|
48
|
+
"unspecified" is permitted only where a downstream contract explicitly
|
|
49
|
+
allows unresolved/approximate wavelength coordinates. Calibrated physical
|
|
50
|
+
composition must resolve the basis before use.
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
export type SpectralWavelengthBasis =
|
|
54
|
+
| "air"
|
|
55
|
+
| "vacuum"
|
|
56
|
+
| "unspecified";
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## SpectralWavelengthRangeNanometers
|
|
60
|
+
|
|
61
|
+
Closed wavelength interval expressed in nanometres.
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
export interface SpectralWavelengthRangeNanometers {
|
|
65
|
+
minimum: number;
|
|
66
|
+
maximum: number;
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## SpectralWavelengthSample
|
|
71
|
+
|
|
72
|
+
One wavelength coordinate expressed in nanometres.
|
|
73
|
+
|
|
74
|
+
```ts
|
|
75
|
+
export interface SpectralWavelengthSample {
|
|
76
|
+
wavelengthNanometers: number;
|
|
77
|
+
}
|
|
78
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# core/validation.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## InvalidScientificInputError
|
|
6
|
+
|
|
7
|
+
Error thrown when a public scientific calculation receives invalid input.
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
export class InvalidScientificInputError extends RangeError {
|
|
11
|
+
readonly code = "INVALID_SCIENTIFIC_INPUT";
|
|
12
|
+
|
|
13
|
+
constructor(message: string) {
|
|
14
|
+
super(message);
|
|
15
|
+
this.name = "InvalidScientificInputError";
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## InvalidScientificResultError
|
|
21
|
+
|
|
22
|
+
Error thrown when a scientific calculation would return a non-finite
|
|
23
|
+
numeric value that is unsafe for JSON and downstream consumers.
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
export class InvalidScientificResultError extends RangeError {
|
|
27
|
+
readonly code = "INVALID_SCIENTIFIC_RESULT";
|
|
28
|
+
|
|
29
|
+
constructor(message: string) {
|
|
30
|
+
super(message);
|
|
31
|
+
this.name = "InvalidScientificResultError";
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
```
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# core/version.ts public contracts
|
|
2
|
+
|
|
3
|
+
Package **1.0.0**, root API **0.116.0**. [Navigation](../API_REFERENCE.md) · [Developer guide](../DEVELOPERS.md). Generated signatures retain independent schema/model versions. Only the exports listed here are root-package contracts; module-local helpers are not supported deep imports.
|
|
4
|
+
|
|
5
|
+
## ENGINE_API_VERSION
|
|
6
|
+
|
|
7
|
+
Version of the public root-engine API contract.
|
|
8
|
+
|
|
9
|
+
This is distinct from the npm package version and all subsystem/schema
|
|
10
|
+
contract versions.
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
ENGINE_API_VERSION = "0.116.0" as const
|
|
14
|
+
```
|