|
@@ -49,6 +49,7 @@ declare module monaco.languages.typescript {
|
|
|
interface CompilerOptions {
|
|
|
allowJs?: boolean;
|
|
|
allowSyntheticDefaultImports?: boolean;
|
|
|
+ allowUmdGlobalAccess?: boolean;
|
|
|
allowUnreachableCode?: boolean;
|
|
|
allowUnusedLabels?: boolean;
|
|
|
alwaysStrict?: boolean;
|
|
@@ -60,6 +61,7 @@ declare module monaco.languages.typescript {
|
|
|
emitDeclarationOnly?: boolean;
|
|
|
declarationDir?: string;
|
|
|
disableSizeLimit?: boolean;
|
|
|
+ disableSourceOfProjectReferenceRedirect?: boolean;
|
|
|
downlevelIteration?: boolean;
|
|
|
emitBOM?: boolean;
|
|
|
emitDecoratorMetadata?: boolean;
|
|
@@ -111,8 +113,10 @@ declare module monaco.languages.typescript {
|
|
|
sourceRoot?: string;
|
|
|
strict?: boolean;
|
|
|
strictFunctionTypes?: boolean;
|
|
|
+ strictBindCallApply?: boolean;
|
|
|
strictNullChecks?: boolean;
|
|
|
strictPropertyInitialization?: boolean;
|
|
|
+ stripInternal?: boolean;
|
|
|
suppressExcessPropertyErrors?: boolean;
|
|
|
suppressImplicitAnyIndexErrors?: boolean;
|
|
|
target?: ScriptTarget;
|
|
@@ -122,6 +126,7 @@ declare module monaco.languages.typescript {
|
|
|
/** Paths used to compute primary types search locations */
|
|
|
typeRoots?: string[];
|
|
|
esModuleInterop?: boolean;
|
|
|
+ useDefineForClassFields?: boolean;
|
|
|
[option: string]: CompilerOptionsValue | undefined;
|
|
|
}
|
|
|
|
|
@@ -132,7 +137,69 @@ declare module monaco.languages.typescript {
|
|
|
diagnosticCodesToIgnore?: number[];
|
|
|
}
|
|
|
|
|
|
+ interface IExtraLib {
|
|
|
+ content: string;
|
|
|
+ version: number;
|
|
|
+ }
|
|
|
+
|
|
|
+ interface IExtraLibs {
|
|
|
+ [path: string]: IExtraLib;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * A linked list of formatted diagnostic messages to be used as part of a multiline message.
|
|
|
+ * It is built from the bottom up, leaving the head to be the "main" diagnostic.
|
|
|
+ */
|
|
|
+ interface DiagnosticMessageChain {
|
|
|
+ messageText: string;
|
|
|
+ /** Diagnostic category: warning = 0, error = 1, suggestion = 2, message = 3 */
|
|
|
+ category: 0 | 1 | 2 | 3;
|
|
|
+ code: number;
|
|
|
+ next?: DiagnosticMessageChain[];
|
|
|
+ }
|
|
|
+ interface Diagnostic extends DiagnosticRelatedInformation {
|
|
|
+ /** May store more in future. For now, this will simply be `true` to indicate when a diagnostic is an unused-identifier diagnostic. */
|
|
|
+ reportsUnnecessary?: {};
|
|
|
+ source?: string;
|
|
|
+ relatedInformation?: DiagnosticRelatedInformation[];
|
|
|
+ }
|
|
|
+ interface DiagnosticRelatedInformation {
|
|
|
+ /** Diagnostic category: warning = 0, error = 1, suggestion = 2, message = 3 */
|
|
|
+ category: 0 | 1 | 2 | 3;
|
|
|
+ code: number;
|
|
|
+ /** TypeScriptWorker removes this to avoid serializing circular JSON structures. */
|
|
|
+ file: undefined;
|
|
|
+ start: number | undefined;
|
|
|
+ length: number | undefined;
|
|
|
+ messageText: string | DiagnosticMessageChain;
|
|
|
+ }
|
|
|
+
|
|
|
+ interface EmitOutput {
|
|
|
+ outputFiles: OutputFile[];
|
|
|
+ emitSkipped: boolean;
|
|
|
+ }
|
|
|
+ interface OutputFile {
|
|
|
+ name: string;
|
|
|
+ writeByteOrderMark: boolean;
|
|
|
+ text: string;
|
|
|
+ }
|
|
|
+
|
|
|
export interface LanguageServiceDefaults {
|
|
|
+ /**
|
|
|
+ * Event fired when compiler options or diagnostics options are changed.
|
|
|
+ */
|
|
|
+ readonly onDidChange: IEvent<void>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Event fired when extra libraries registered with the language service change.
|
|
|
+ */
|
|
|
+ readonly onDidExtraLibsChange: IEvent<void>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get the current extra libs registered with the language service.
|
|
|
+ */
|
|
|
+ getExtraLibs(): IExtraLibs;
|
|
|
+
|
|
|
/**
|
|
|
* Add an additional source file to the language service. Use this
|
|
|
* for typescript (definition) files that won't be loaded as editor
|
|
@@ -153,11 +220,21 @@ declare module monaco.languages.typescript {
|
|
|
*/
|
|
|
setExtraLibs(libs: { content: string; filePath?: string }[]): void;
|
|
|
|
|
|
+ /**
|
|
|
+ * Get current TypeScript compiler options for the language service.
|
|
|
+ */
|
|
|
+ getCompilerOptions(): CompilerOptions;
|
|
|
+
|
|
|
/**
|
|
|
* Set TypeScript compiler options.
|
|
|
*/
|
|
|
setCompilerOptions(options: CompilerOptions): void;
|
|
|
|
|
|
+ /**
|
|
|
+ * Get the current diagnostics options for the language service.
|
|
|
+ */
|
|
|
+ getDiagnosticsOptions(): DiagnosticsOptions;
|
|
|
+
|
|
|
/**
|
|
|
* Configure whether syntactic and/or semantic validation should
|
|
|
* be performed
|
|
@@ -165,10 +242,7 @@ declare module monaco.languages.typescript {
|
|
|
setDiagnosticsOptions(options: DiagnosticsOptions): void;
|
|
|
|
|
|
/**
|
|
|
- * Configure when the worker shuts down. By default that is 2mins.
|
|
|
- *
|
|
|
- * @param value The maximum idle time in milliseconds. Values less than one
|
|
|
- * mean never shut down.
|
|
|
+ * No-op.
|
|
|
*/
|
|
|
setMaximumWorkerIdleTime(value: number): void;
|
|
|
|
|
@@ -177,13 +251,137 @@ declare module monaco.languages.typescript {
|
|
|
* to the worker on start or restart.
|
|
|
*/
|
|
|
setEagerModelSync(value: boolean): void;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get the current setting for whether all existing models should be eagerly sync'd
|
|
|
+ * to the worker on start or restart.
|
|
|
+ */
|
|
|
+ getEagerModelSync(): boolean;
|
|
|
+ }
|
|
|
+
|
|
|
+ export interface TypeScriptWorker {
|
|
|
+ /**
|
|
|
+ * Get diagnostic messages for any syntax issues in the given file.
|
|
|
+ */
|
|
|
+ getSyntacticDiagnostics(fileName: string): Promise<Diagnostic[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get diagnostic messages for any semantic issues in the given file.
|
|
|
+ */
|
|
|
+ getSemanticDiagnostics(fileName: string): Promise<Diagnostic[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get diagnostic messages for any suggestions related to the given file.
|
|
|
+ */
|
|
|
+ getSuggestionDiagnostics(fileName: string): Promise<Diagnostic[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get diagnostic messages related to the current compiler options.
|
|
|
+ * @param fileName Not used
|
|
|
+ */
|
|
|
+ getCompilerOptionsDiagnostics(fileName: string): Promise<Diagnostic[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get code completions for the given file and position.
|
|
|
+ * @returns `Promise<typescript.CompletionInfo | undefined>`
|
|
|
+ */
|
|
|
+ getCompletionsAtPosition(fileName: string, position: number): Promise<any | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get code completion details for the given file, position, and entry.
|
|
|
+ * @returns `Promise<typescript.CompletionEntryDetails | undefined>`
|
|
|
+ */
|
|
|
+ getCompletionEntryDetails(fileName: string, position: number, entry: string): Promise<any | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get signature help items for the item at the given file and position.
|
|
|
+ * @returns `Promise<typescript.SignatureHelpItems | undefined>`
|
|
|
+ */
|
|
|
+ getSignatureHelpItems(fileName: string, position: number): Promise<any | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get quick info for the item at the given position in the file.
|
|
|
+ * @returns `Promise<typescript.QuickInfo | undefined>`
|
|
|
+ */
|
|
|
+ getQuickInfoAtPosition(fileName: string, position: number): Promise<any | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get other ranges which are related to the item at the given position in the file (often used for highlighting).
|
|
|
+ * @returns `Promise<ReadonlyArray<typescript.ReferenceEntry> | undefined>`
|
|
|
+ */
|
|
|
+ getOccurrencesAtPosition(fileName: string, position: number): Promise<ReadonlyArray<any> | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get the definition of the item at the given position in the file.
|
|
|
+ * @returns `Promise<ReadonlyArray<typescript.DefinitionInfo> | undefined>`
|
|
|
+ */
|
|
|
+ getDefinitionAtPosition(fileName: string, position: number): Promise<ReadonlyArray<any> | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get references to the item at the given position in the file.
|
|
|
+ * @returns `Promise<typescript.ReferenceEntry[] | undefined>`
|
|
|
+ */
|
|
|
+ getReferencesAtPosition(fileName: string, position: number): Promise<any[] | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get outline entries for the item at the given position in the file.
|
|
|
+ * @returns `Promise<typescript.NavigationBarItem[]>`
|
|
|
+ */
|
|
|
+ getNavigationBarItems(fileName: string): Promise<any[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get changes which should be applied to format the given file.
|
|
|
+ * @param options `typescript.FormatCodeOptions`
|
|
|
+ * @returns `Promise<typescript.TextChange[]>`
|
|
|
+ */
|
|
|
+ getFormattingEditsForDocument(fileName: string, options: any): Promise<any[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get changes which should be applied to format the given range in the file.
|
|
|
+ * @param options `typescript.FormatCodeOptions`
|
|
|
+ * @returns `Promise<typescript.TextChange[]>`
|
|
|
+ */
|
|
|
+ getFormattingEditsForRange(fileName: string, start: number, end: number, options: any): Promise<any[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get formatting changes which should be applied after the given keystroke.
|
|
|
+ * @param options `typescript.FormatCodeOptions`
|
|
|
+ * @returns `Promise<typescript.TextChange[]>`
|
|
|
+ */
|
|
|
+ getFormattingEditsAfterKeystroke(fileName: string, postion: number, ch: string, options: any): Promise<any[]>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get other occurrences which should be updated when renaming the item at the given file and position.
|
|
|
+ * @returns `Promise<readonly typescript.RenameLocation[] | undefined>`
|
|
|
+ */
|
|
|
+ findRenameLocations(fileName: string, positon: number, findInStrings: boolean, findInComments: boolean, providePrefixAndSuffixTextForRename: boolean): Promise<readonly any[] | undefined>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get edits which should be applied to rename the item at the given file and position (or a failure reason).
|
|
|
+ * @param options `typescript.RenameInfoOptions`
|
|
|
+ * @returns `Promise<typescript.RenameInfo>`
|
|
|
+ */
|
|
|
+ getRenameInfo(fileName: string, positon: number, options: any): Promise<any>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get transpiled output for the given file.
|
|
|
+ * @returns `typescript.EmitOutput`
|
|
|
+ */
|
|
|
+ getEmitOutput(fileName: string): Promise<any>;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Get possible code fixes at the given position in the file.
|
|
|
+ * @param formatOptions `typescript.FormatCodeOptions`
|
|
|
+ * @returns `Promise<ReadonlyArray<typescript.CodeFixAction>>`
|
|
|
+ */
|
|
|
+ getCodeFixesAtPosition(fileName: string, start: number, end: number, errorCodes: number[], formatOptions: any): Promise<ReadonlyArray<any>>;
|
|
|
}
|
|
|
|
|
|
- export var typescriptVersion: string;
|
|
|
+ export const typescriptVersion: string;
|
|
|
|
|
|
- export var typescriptDefaults: LanguageServiceDefaults;
|
|
|
- export var javascriptDefaults: LanguageServiceDefaults;
|
|
|
+ export const typescriptDefaults: LanguageServiceDefaults;
|
|
|
+ export const javascriptDefaults: LanguageServiceDefaults;
|
|
|
|
|
|
- export var getTypeScriptWorker: () => Promise<any>;
|
|
|
- export var getJavaScriptWorker: () => Promise<any>;
|
|
|
+ export const getTypeScriptWorker: () => Promise<(...uris: Uri[]) => Promise<TypeScriptWorker>>;
|
|
|
+ export const getJavaScriptWorker: () => Promise<(...uris: Uri[]) => Promise<TypeScriptWorker>>;
|
|
|
}
|