// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. // Diagnostic provides an abstraction for advice/errors received from a // compiler, which is strongly influenced by the format of TypeScript // diagnostics. export enum DiagnosticCategory { Log = 0, Debug = 1, Info = 2, Error = 3, Warning = 4, Suggestion = 5, } export interface DiagnosticMessageChain { message: string; category: DiagnosticCategory; code: number; next?: DiagnosticMessageChain[]; } export interface DiagnosticItem { message: string; messageChain?: DiagnosticMessageChain; relatedInformation?: DiagnosticItem[]; sourceLine?: string; lineNumber?: number; scriptResourceName?: string; startPosition?: number; endPosition?: number; category: DiagnosticCategory; code: number; startColumn?: number; endColumn?: number; } export interface Diagnostic { items: DiagnosticItem[]; }