import type { ErrorReportEvent, ErrorReporterTransport } from '../error-reporter.js'

export interface CaptureErrorReporterTransport extends ErrorReporterTransport {
  readonly events: ErrorReportEvent[]
  clear(): void
}

export function createCaptureErrorReporterTransport(): CaptureErrorReporterTransport {
  const events: ErrorReportEvent[] = []
  return {
    events,
    send(event) {
      events.push(event)
    },
    clear() {
      events.length = 0
    },
  }
}
