2021-01-11 12:13:41 -05:00
|
|
|
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
|
2020-12-07 05:46:39 -05:00
|
|
|
|
|
|
|
// Contains types that can be used to validate and check `99_main_compiler.js`
|
|
|
|
|
|
|
|
import * as _ts from "../dts/typescript";
|
|
|
|
|
|
|
|
declare global {
|
|
|
|
// deno-lint-ignore no-namespace
|
|
|
|
namespace ts {
|
|
|
|
var libs: string[];
|
|
|
|
var libMap: Map<string, string>;
|
|
|
|
|
|
|
|
interface SourceFile {
|
|
|
|
version?: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Performance {
|
|
|
|
enable(): void;
|
|
|
|
getDuration(value: string): number;
|
|
|
|
}
|
|
|
|
|
|
|
|
var performance: Performance;
|
|
|
|
}
|
|
|
|
|
|
|
|
// deno-lint-ignore no-namespace
|
|
|
|
namespace ts {
|
|
|
|
export = _ts;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Object {
|
|
|
|
// deno-lint-ignore no-explicit-any
|
|
|
|
__proto__: any;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface DenoCore {
|
|
|
|
// deno-lint-ignore no-explicit-any
|
|
|
|
jsonOpSync<T>(name: string, params: T): any;
|
|
|
|
ops(): void;
|
2020-12-29 20:46:58 -05:00
|
|
|
print(msg: string, code?: number): void;
|
2021-02-25 14:06:06 -05:00
|
|
|
registerErrorClass(
|
|
|
|
name: string,
|
|
|
|
Ctor: typeof Error,
|
|
|
|
// deno-lint-ignore no-explicit-any
|
|
|
|
...args: any[]
|
|
|
|
): void;
|
2020-12-07 05:46:39 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
type LanguageServerRequest =
|
|
|
|
| ConfigureRequest
|
2021-01-31 22:30:41 -05:00
|
|
|
| FindRenameLocationsRequest
|
2020-12-15 14:34:39 -05:00
|
|
|
| GetAsset
|
2021-02-04 13:53:02 -05:00
|
|
|
| GetCodeFixes
|
|
|
|
| GetCombinedCodeFix
|
2021-01-31 22:30:41 -05:00
|
|
|
| GetCompletionsRequest
|
|
|
|
| GetDefinitionRequest
|
2020-12-29 20:46:58 -05:00
|
|
|
| GetDiagnosticsRequest
|
2020-12-07 05:46:39 -05:00
|
|
|
| GetDocumentHighlightsRequest
|
2021-01-12 16:53:27 -05:00
|
|
|
| GetImplementationRequest
|
2021-01-31 22:30:41 -05:00
|
|
|
| GetNavigationTree
|
|
|
|
| GetQuickInfoRequest
|
2021-02-04 13:53:02 -05:00
|
|
|
| GetReferencesRequest
|
2021-02-15 21:34:09 -05:00
|
|
|
| GetSignatureHelpItemsRequest
|
2021-02-04 13:53:02 -05:00
|
|
|
| GetSupportedCodeFixes;
|
2020-12-07 05:46:39 -05:00
|
|
|
|
|
|
|
interface BaseLanguageServerRequest {
|
|
|
|
id: number;
|
|
|
|
method: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface ConfigureRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "configure";
|
|
|
|
// deno-lint-ignore no-explicit-any
|
|
|
|
compilerOptions: Record<string, any>;
|
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface FindRenameLocationsRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "findRenameLocations";
|
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
findInStrings: boolean;
|
|
|
|
findInComments: boolean;
|
|
|
|
providePrefixAndSuffixTextForRename: boolean;
|
|
|
|
}
|
|
|
|
|
2020-12-15 14:34:39 -05:00
|
|
|
interface GetAsset extends BaseLanguageServerRequest {
|
|
|
|
method: "getAsset";
|
|
|
|
specifier: string;
|
|
|
|
}
|
|
|
|
|
2021-02-04 13:53:02 -05:00
|
|
|
interface GetCodeFixes extends BaseLanguageServerRequest {
|
|
|
|
method: "getCodeFixes";
|
|
|
|
specifier: string;
|
|
|
|
startPosition: number;
|
|
|
|
endPosition: number;
|
|
|
|
errorCodes: string[];
|
|
|
|
}
|
|
|
|
|
|
|
|
interface GetCombinedCodeFix extends BaseLanguageServerRequest {
|
|
|
|
method: "getCombinedCodeFix";
|
|
|
|
specifier: string;
|
|
|
|
// deno-lint-ignore ban-types
|
|
|
|
fixId: {};
|
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetCompletionsRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getCompletions";
|
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
preferences: ts.UserPreferences;
|
|
|
|
}
|
|
|
|
|
2020-12-29 20:46:58 -05:00
|
|
|
interface GetDiagnosticsRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getDiagnostics";
|
2021-01-22 05:03:16 -05:00
|
|
|
specifiers: string[];
|
2020-12-07 05:46:39 -05:00
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetDefinitionRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getDefinition";
|
2020-12-07 05:46:39 -05:00
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface GetDocumentHighlightsRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getDocumentHighlights";
|
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
filesToSearch: string[];
|
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetImplementationRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getImplementation";
|
2020-12-07 05:46:39 -05:00
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetNavigationTree extends BaseLanguageServerRequest {
|
|
|
|
method: "getNavigationTree";
|
2020-12-07 05:46:39 -05:00
|
|
|
specifier: string;
|
|
|
|
}
|
2020-12-08 05:36:13 -05:00
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetQuickInfoRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getQuickInfo";
|
2021-01-12 16:53:27 -05:00
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
}
|
|
|
|
|
2021-01-31 22:30:41 -05:00
|
|
|
interface GetReferencesRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getReferences";
|
2020-12-29 19:58:20 -05:00
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
}
|
2021-02-04 13:53:02 -05:00
|
|
|
|
2021-02-15 21:34:09 -05:00
|
|
|
interface GetSignatureHelpItemsRequest extends BaseLanguageServerRequest {
|
|
|
|
method: "getSignatureHelpItems";
|
|
|
|
specifier: string;
|
|
|
|
position: number;
|
|
|
|
options: ts.SignatureHelpItemsOptions;
|
|
|
|
}
|
|
|
|
|
2021-02-04 13:53:02 -05:00
|
|
|
interface GetSupportedCodeFixes extends BaseLanguageServerRequest {
|
|
|
|
method: "getSupportedCodeFixes";
|
|
|
|
}
|
2020-12-07 05:46:39 -05:00
|
|
|
}
|