import type { SourceRange } from "./syntax";

export type DiagnosticSeverity = "error" | "warning" | "information";

export interface RegexDiagnostic {
  readonly id: string;
  readonly source: "syntax-provider" | "execution-engine" | "analysis";
  readonly severity: DiagnosticSeverity;
  readonly code: string;
  readonly message: string;
  readonly range?: SourceRange;
  readonly flavour: string;
  readonly provenance: "reported" | "derived";
}
