Skip to content

TypeScript SDK Reference / ScanningSequenceOptions

Interface: ScanningSequenceOptions ​

Configuration options for the scanningSequence visualization.

The scanningSequence orchestrator is a stage-aware state machine that drives the existing faceMesh, thermalMask and heatmap (and optionally boundingBox) visualizations automatically based on the vital-sign engine stage, playing a predefined animation sequence while data is actively being collected and an "idle" visualization set otherwise.

Only the idleStage (standby viz) and the master enabled toggle are exposed as options.

Properties ​

animationDelay? ​

optional animationDelay: number

Animation delay in seconds applied to the three sweep steps. Use 0 for "start at phase 0" (matches iOS). Defaults to -1.5.


enabled? ​

optional enabled: boolean

Master toggle. When present and not explicitly false, the orchestrator is enabled.


idleStage? ​

optional idleStage: VisualizationOptions

Visualization configuration applied while the engine stage is notCollectingData (i.e. WaitingData / AnalyzingData / Idle). Mirrors the VisualizationOptions shape so any combination of boundingBox / faceMesh / thermalMask / modelLoadingProgress can be declared for the standby state.

Recommendation: declare faceMesh here (e.g. a calm both-direction sweep) so the user always has visual feedback before and after the scan. The orchestrator owns faceMesh, thermalMask, and boundingBox from this config; modelLoadingProgress is left to the existing lifecycle.

Example ​

ts
idleStage: {
  faceMesh: { color: 'rgba(200,200,200,0.6)', animationDirection: 'both', animationSpeed: 6, lineWidth: 2 }
}

staticColor? ​

optional staticColor: string

Color used for the static mesh in the final thermal step. Defaults to 'rgba(255, 255, 255, 0.4)'.


staticLineWidth? ​

optional staticLineWidth: number | `${number}%`

Line width used for the static (non-animated) mesh in the final thermal step. Defaults to 0.07.


stepDurations? ​

optional stepDurations: [number, number, number]

Duration in seconds for the three animated sweep steps, in order [horizontal, vertical, ripple]. Defaults to [2, 2, 0.5]. The final thermal step is always open-ended (persists until the engine stage changes).


sweepColor? ​

optional sweepColor: string

Base color used for the mesh during the three animated sweep steps (horizontal / vertical / ripple). Defaults to white.


sweepLineWidth? ​

optional sweepLineWidth: number | `${number}%`

Line width used during the three animated sweep steps. Percentages are relative to the face width (matching iOS .percentage()). Defaults to 0.3. Note: strings are treated as percentages by FaceMesh; bare numbers are treated as raw pixels.