deno/cli/js/diagnostics.ts

52 lines
929 B
TypeScript

// 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[];
}