import bole from 'bole' import type { LogBase } from './LogBase.js' import * as ndjson from './ndjsonParse.js' export type Reporter = (logObj: LogObj) => void export interface StreamParser { on: (event: 'data', reporter: Reporter) => void removeListener: (event: 'data', reporter: Reporter) => void } export const streamParser: StreamParser = createStreamParser() export function createStreamParser (): StreamParser { const sp: StreamParser = ndjson.parse() bole.output([ { level: 'debug', stream: sp, }, ]) return sp }