The byte source.
The STEP parser (typed to the schema).
Target window size in bytes.
OptionalonRecordIndexed: ((localID: number, expressID: number, typeID: undefined | TypeIDType) => void)Optional per-record event (see buildIndexStreaming).
Optionalsink: StepIndexSink<TypeIDType>Optional index sink (columnar builds).
OptionalonProgress: ((absoluteByteCursor: number) => void)Optional progress callback with the ABSOLUTE source byte
cursor (unlike the parser's window-relative cursor), so callers can report
cursor / source.byteLength directly.
OptionalyieldIntervalMs: numberMinimum ms between event-loop yields.
The index, header, result and diagnostics.
Cooperative twin of buildIndexStreaming: identical parse, window and grow-and-restart behaviour (mirrored the same way the parser mirrors parseDataBlock/parseDataBlockAsync), but the parse periodically yields to the event loop so browsers repaint progress UI mid-parse instead of flagging the tab as stalled (issue #301 ยง2 for the streamed path).