mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-18 03:23:57 +08:00
refactor(@schematics/angular): update vendored TypeScript to 3.9.3
This commit is contained in:
parent
69e5520a92
commit
4ea0efd9db
@ -1,7 +1,7 @@
|
||||
load("//tools:defaults.bzl", "ts_library")
|
||||
|
||||
# files fetched on 2020-01-09 from
|
||||
# https://github.com/Microsoft/TypeScript/tree/v3.7.4
|
||||
# files fetched on 2020-05-20 from
|
||||
# https://github.com/Microsoft/TypeScript/tree/v3.9.3
|
||||
licenses(["notice"]) # Apache 2.0
|
||||
|
||||
ts_library(
|
||||
|
@ -1,20 +1,20 @@
|
||||
/*! *****************************************************************************
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
||||
this file except in compliance with the License. You may obtain a copy of the
|
||||
License at http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
License at http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
||||
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||||
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||||
|
||||
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||||
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||||
|
||||
See the Apache Version 2.0 License for specific language governing permissions
|
||||
and limitations under the License.
|
||||
***************************************************************************** */
|
||||
|
||||
declare namespace ts {
|
||||
const versionMajorMinor = "3.8";
|
||||
const versionMajorMinor = "3.9";
|
||||
/** The version of the TypeScript compiler release */
|
||||
const version: string;
|
||||
/**
|
||||
@ -383,29 +383,30 @@ declare namespace ts {
|
||||
JSDocSignature = 305,
|
||||
JSDocTag = 306,
|
||||
JSDocAugmentsTag = 307,
|
||||
JSDocAuthorTag = 308,
|
||||
JSDocClassTag = 309,
|
||||
JSDocPublicTag = 310,
|
||||
JSDocPrivateTag = 311,
|
||||
JSDocProtectedTag = 312,
|
||||
JSDocReadonlyTag = 313,
|
||||
JSDocCallbackTag = 314,
|
||||
JSDocEnumTag = 315,
|
||||
JSDocParameterTag = 316,
|
||||
JSDocReturnTag = 317,
|
||||
JSDocThisTag = 318,
|
||||
JSDocTypeTag = 319,
|
||||
JSDocTemplateTag = 320,
|
||||
JSDocTypedefTag = 321,
|
||||
JSDocPropertyTag = 322,
|
||||
SyntaxList = 323,
|
||||
NotEmittedStatement = 324,
|
||||
PartiallyEmittedExpression = 325,
|
||||
CommaListExpression = 326,
|
||||
MergeDeclarationMarker = 327,
|
||||
EndOfDeclarationMarker = 328,
|
||||
SyntheticReferenceExpression = 329,
|
||||
Count = 330,
|
||||
JSDocImplementsTag = 308,
|
||||
JSDocAuthorTag = 309,
|
||||
JSDocClassTag = 310,
|
||||
JSDocPublicTag = 311,
|
||||
JSDocPrivateTag = 312,
|
||||
JSDocProtectedTag = 313,
|
||||
JSDocReadonlyTag = 314,
|
||||
JSDocCallbackTag = 315,
|
||||
JSDocEnumTag = 316,
|
||||
JSDocParameterTag = 317,
|
||||
JSDocReturnTag = 318,
|
||||
JSDocThisTag = 319,
|
||||
JSDocTypeTag = 320,
|
||||
JSDocTemplateTag = 321,
|
||||
JSDocTypedefTag = 322,
|
||||
JSDocPropertyTag = 323,
|
||||
SyntaxList = 324,
|
||||
NotEmittedStatement = 325,
|
||||
PartiallyEmittedExpression = 326,
|
||||
CommaListExpression = 327,
|
||||
MergeDeclarationMarker = 328,
|
||||
EndOfDeclarationMarker = 329,
|
||||
SyntheticReferenceExpression = 330,
|
||||
Count = 331,
|
||||
FirstAssignment = 62,
|
||||
LastAssignment = 74,
|
||||
FirstCompoundAssignment = 63,
|
||||
@ -434,9 +435,9 @@ declare namespace ts {
|
||||
LastStatement = 241,
|
||||
FirstNode = 153,
|
||||
FirstJSDocNode = 294,
|
||||
LastJSDocNode = 322,
|
||||
LastJSDocNode = 323,
|
||||
FirstJSDocTagNode = 306,
|
||||
LastJSDocTagNode = 322,
|
||||
LastJSDocTagNode = 323,
|
||||
}
|
||||
export enum NodeFlags {
|
||||
None = 0,
|
||||
@ -1136,7 +1137,7 @@ declare namespace ts {
|
||||
export interface CallChain extends CallExpression {
|
||||
_optionalChainBrand: any;
|
||||
}
|
||||
export type OptionalChain = PropertyAccessChain | ElementAccessChain | CallChain;
|
||||
export type OptionalChain = PropertyAccessChain | ElementAccessChain | CallChain | NonNullChain;
|
||||
export interface SuperCall extends CallExpression {
|
||||
expression: SuperExpression;
|
||||
}
|
||||
@ -1145,7 +1146,7 @@ declare namespace ts {
|
||||
}
|
||||
export interface ExpressionWithTypeArguments extends NodeWithTypeArguments {
|
||||
kind: SyntaxKind.ExpressionWithTypeArguments;
|
||||
parent: HeritageClause | JSDocAugmentsTag;
|
||||
parent: HeritageClause | JSDocAugmentsTag | JSDocImplementsTag;
|
||||
expression: LeftHandSideExpression;
|
||||
}
|
||||
export interface NewExpression extends PrimaryExpression, Declaration {
|
||||
@ -1176,6 +1177,9 @@ declare namespace ts {
|
||||
kind: SyntaxKind.NonNullExpression;
|
||||
expression: Expression;
|
||||
}
|
||||
export interface NonNullChain extends NonNullExpression {
|
||||
_optionalChainBrand: any;
|
||||
}
|
||||
export interface MetaProperty extends PrimaryExpression {
|
||||
kind: SyntaxKind.MetaProperty;
|
||||
keywordToken: SyntaxKind.NewKeyword | SyntaxKind.ImportKeyword;
|
||||
@ -1635,6 +1639,12 @@ declare namespace ts {
|
||||
expression: Identifier | PropertyAccessEntityNameExpression;
|
||||
};
|
||||
}
|
||||
export interface JSDocImplementsTag extends JSDocTag {
|
||||
kind: SyntaxKind.JSDocImplementsTag;
|
||||
class: ExpressionWithTypeArguments & {
|
||||
expression: Identifier | PropertyAccessEntityNameExpression;
|
||||
};
|
||||
}
|
||||
export interface JSDocAuthorTag extends JSDocTag {
|
||||
kind: SyntaxKind.JSDocAuthorTag;
|
||||
}
|
||||
@ -1726,10 +1736,9 @@ declare namespace ts {
|
||||
SwitchClause = 128,
|
||||
ArrayMutation = 256,
|
||||
Call = 512,
|
||||
Referenced = 1024,
|
||||
Shared = 2048,
|
||||
PreFinally = 4096,
|
||||
AfterFinally = 8192,
|
||||
ReduceLabel = 1024,
|
||||
Referenced = 2048,
|
||||
Shared = 4096,
|
||||
Label = 12,
|
||||
Condition = 96
|
||||
}
|
||||
@ -1776,6 +1785,11 @@ declare namespace ts {
|
||||
node: CallExpression | BinaryExpression;
|
||||
antecedent: FlowNode;
|
||||
}
|
||||
export interface FlowReduceLabel extends FlowNodeBase {
|
||||
target: FlowLabel;
|
||||
antecedents: FlowNode[];
|
||||
antecedent: FlowNode;
|
||||
}
|
||||
export type FlowType = Type | IncompleteType;
|
||||
export interface IncompleteType {
|
||||
flags: TypeFlags;
|
||||
@ -1914,6 +1928,7 @@ declare namespace ts {
|
||||
throwIfCancellationRequested(): void;
|
||||
}
|
||||
export interface Program extends ScriptReferenceHost {
|
||||
getCurrentDirectory(): string;
|
||||
/**
|
||||
* Get a list of root file names that were passed to a 'createProgram'
|
||||
*/
|
||||
@ -1948,6 +1963,7 @@ declare namespace ts {
|
||||
getIdentifierCount(): number;
|
||||
getSymbolCount(): number;
|
||||
getTypeCount(): number;
|
||||
getInstantiationCount(): number;
|
||||
getRelationCacheSizes(): {
|
||||
assignable: number;
|
||||
identity: number;
|
||||
@ -2119,6 +2135,7 @@ declare namespace ts {
|
||||
OmitParameterModifiers = 8192,
|
||||
UseAliasDefinedOutsideCurrentScope = 16384,
|
||||
UseSingleQuotesForStringLiteralType = 268435456,
|
||||
NoTypeReduction = 536870912,
|
||||
AllowThisInObjectLiteral = 32768,
|
||||
AllowQualifedNameInPlaceOfIdentifier = 65536,
|
||||
AllowAnonymousIdentifier = 131072,
|
||||
@ -2147,6 +2164,7 @@ declare namespace ts {
|
||||
OmitParameterModifiers = 8192,
|
||||
UseAliasDefinedOutsideCurrentScope = 16384,
|
||||
UseSingleQuotesForStringLiteralType = 268435456,
|
||||
NoTypeReduction = 536870912,
|
||||
AllowUniqueESSymbolType = 1048576,
|
||||
AddUndefined = 131072,
|
||||
WriteArrowStyleSignature = 262144,
|
||||
@ -2155,7 +2173,7 @@ declare namespace ts {
|
||||
InFirstTypeArgument = 4194304,
|
||||
InTypeAlias = 8388608,
|
||||
/** @deprecated */ WriteOwnNameForAnyLike = 0,
|
||||
NodeBuilderFlagsMask = 277904747
|
||||
NodeBuilderFlagsMask = 814775659
|
||||
}
|
||||
export enum SymbolFormatFlags {
|
||||
None = 0,
|
||||
@ -2510,7 +2528,7 @@ declare namespace ts {
|
||||
resolvedFalseType: Type;
|
||||
}
|
||||
export interface SubstitutionType extends InstantiableType {
|
||||
typeVariable: TypeVariable;
|
||||
baseType: Type;
|
||||
substitute: Type;
|
||||
}
|
||||
export enum SignatureKind {
|
||||
@ -2905,7 +2923,7 @@ declare namespace ts {
|
||||
}
|
||||
export interface ResolvedTypeReferenceDirectiveWithFailedLookupLocations {
|
||||
readonly resolvedTypeReferenceDirective: ResolvedTypeReferenceDirective | undefined;
|
||||
readonly failedLookupLocations: readonly string[];
|
||||
readonly failedLookupLocations: string[];
|
||||
}
|
||||
export interface CompilerHost extends ModuleResolutionHost {
|
||||
getSourceFile(fileName: string, languageVersion: ScriptTarget, onError?: (message: string) => void, shouldCreateNewSourceFile?: boolean): SourceFile | undefined;
|
||||
@ -2972,6 +2990,7 @@ declare namespace ts {
|
||||
readonly scoped: boolean;
|
||||
readonly text: string | ((node: EmitHelperUniqueNameCallback) => string);
|
||||
readonly priority?: number;
|
||||
readonly dependencies?: EmitHelper[];
|
||||
}
|
||||
export interface UnscopedEmitHelper extends EmitHelper {
|
||||
readonly scoped: false;
|
||||
@ -3168,11 +3187,6 @@ declare namespace ts {
|
||||
directoryExists?(directoryName: string): boolean;
|
||||
getCurrentDirectory?(): string;
|
||||
}
|
||||
export interface ModuleSpecifierResolutionHost extends GetEffectiveTypeRootsHost {
|
||||
useCaseSensitiveFileNames?(): boolean;
|
||||
fileExists?(path: string): boolean;
|
||||
readFile?(path: string): string | undefined;
|
||||
}
|
||||
export interface TextSpan {
|
||||
start: number;
|
||||
length: number;
|
||||
@ -3213,6 +3227,7 @@ declare namespace ts {
|
||||
NoInterveningComments = 262144,
|
||||
NoSpaceIfEmpty = 524288,
|
||||
SingleElement = 1048576,
|
||||
SpaceAfterList = 2097152,
|
||||
Modifiers = 262656,
|
||||
HeritageClauses = 512,
|
||||
SingleLineTypeLiteralMembers = 768,
|
||||
@ -3244,7 +3259,7 @@ declare namespace ts {
|
||||
CaseOrDefaultClauseStatements = 163969,
|
||||
HeritageClauseTypes = 528,
|
||||
SourceFileStatements = 131073,
|
||||
Decorators = 49153,
|
||||
Decorators = 2146305,
|
||||
TypeArguments = 53776,
|
||||
TypeParameters = 53776,
|
||||
Parameters = 2576,
|
||||
@ -3259,7 +3274,7 @@ declare namespace ts {
|
||||
readonly includeCompletionsWithInsertText?: boolean;
|
||||
readonly importModuleSpecifierPreference?: "auto" | "relative" | "non-relative";
|
||||
/** Determines whether we import `foo/index.ts` as "foo", "foo/index", or "foo/index.js" */
|
||||
readonly importModuleSpecifierEnding?: "minimal" | "index" | "js";
|
||||
readonly importModuleSpecifierEnding?: "auto" | "minimal" | "index" | "js";
|
||||
readonly allowTextChangesInNewFiles?: boolean;
|
||||
readonly providePrefixAndSuffixTextForRename?: boolean;
|
||||
}
|
||||
@ -3345,7 +3360,8 @@ declare namespace ts {
|
||||
isUnterminated(): boolean;
|
||||
reScanGreaterToken(): SyntaxKind;
|
||||
reScanSlashToken(): SyntaxKind;
|
||||
reScanTemplateToken(): SyntaxKind;
|
||||
reScanTemplateToken(isTaggedTemplate: boolean): SyntaxKind;
|
||||
reScanTemplateHeadOrNoSubstitutionTemplate(): SyntaxKind;
|
||||
scanJsxIdentifier(): SyntaxKind;
|
||||
scanJsxAttributeValue(): SyntaxKind;
|
||||
reScanJsxAttributeValue(): SyntaxKind;
|
||||
@ -3384,7 +3400,7 @@ declare namespace ts {
|
||||
/** Optionally, get the shebang */
|
||||
function getShebang(text: string): string | undefined;
|
||||
function isIdentifierStart(ch: number, languageVersion: ScriptTarget | undefined): boolean;
|
||||
function isIdentifierPart(ch: number, languageVersion: ScriptTarget | undefined): boolean;
|
||||
function isIdentifierPart(ch: number, languageVersion: ScriptTarget | undefined, identifierVariant?: LanguageVariant): boolean;
|
||||
function createScanner(languageVersion: ScriptTarget, skipTrivia: boolean, languageVariant?: LanguageVariant, textInitial?: string, onError?: ErrorCallback, start?: number, length?: number): Scanner;
|
||||
}
|
||||
declare namespace ts {
|
||||
@ -3509,6 +3525,8 @@ declare namespace ts {
|
||||
function hasJSDocParameterTags(node: FunctionLikeDeclaration | SignatureDeclaration): boolean;
|
||||
/** Gets the JSDoc augments tag for the node if present */
|
||||
function getJSDocAugmentsTag(node: Node): JSDocAugmentsTag | undefined;
|
||||
/** Gets the JSDoc implements tags for the node if present */
|
||||
function getJSDocImplementsTags(node: Node): readonly JSDocImplementsTag[];
|
||||
/** Gets the JSDoc class tag for the node if present */
|
||||
function getJSDocClassTag(node: Node): JSDocClassTag | undefined;
|
||||
/** Gets the JSDoc public tag for the node if present */
|
||||
@ -3550,7 +3568,9 @@ declare namespace ts {
|
||||
function getJSDocReturnType(node: Node): TypeNode | undefined;
|
||||
/** Get all JSDoc tags related to a node, including those on parent nodes. */
|
||||
function getJSDocTags(node: Node): readonly JSDocTag[];
|
||||
/** Gets all JSDoc tags of a specified kind, or undefined if not present. */
|
||||
/** Gets all JSDoc tags that match a specified predicate */
|
||||
function getAllJSDocTags<T extends JSDocTag>(node: Node, predicate: (tag: JSDocTag) => tag is T): readonly T[];
|
||||
/** Gets all JSDoc tags of a specified kind */
|
||||
function getAllJSDocTagsOfKind(node: Node, kind: SyntaxKind): readonly JSDocTag[];
|
||||
/**
|
||||
* Gets the effective type parameters. If the node was parsed in a
|
||||
@ -3615,7 +3635,7 @@ declare namespace ts {
|
||||
function isElementAccessChain(node: Node): node is ElementAccessChain;
|
||||
function isCallExpression(node: Node): node is CallExpression;
|
||||
function isCallChain(node: Node): node is CallChain;
|
||||
function isOptionalChain(node: Node): node is PropertyAccessChain | ElementAccessChain | CallChain;
|
||||
function isOptionalChain(node: Node): node is PropertyAccessChain | ElementAccessChain | CallChain | NonNullChain;
|
||||
function isNullishCoalesce(node: Node): boolean;
|
||||
function isNewExpression(node: Node): node is NewExpression;
|
||||
function isTaggedTemplateExpression(node: Node): node is TaggedTemplateExpression;
|
||||
@ -3642,6 +3662,7 @@ declare namespace ts {
|
||||
function isExpressionWithTypeArguments(node: Node): node is ExpressionWithTypeArguments;
|
||||
function isAsExpression(node: Node): node is AsExpression;
|
||||
function isNonNullExpression(node: Node): node is NonNullExpression;
|
||||
function isNonNullChain(node: Node): node is NonNullChain;
|
||||
function isMetaProperty(node: Node): node is MetaProperty;
|
||||
function isTemplateSpan(node: Node): node is TemplateSpan;
|
||||
function isSemicolonClassElement(node: Node): node is SemicolonClassElement;
|
||||
@ -3726,6 +3747,7 @@ declare namespace ts {
|
||||
function isJSDoc(node: Node): node is JSDoc;
|
||||
function isJSDocAuthorTag(node: Node): node is JSDocAuthorTag;
|
||||
function isJSDocAugmentsTag(node: Node): node is JSDocAugmentsTag;
|
||||
function isJSDocImplementsTag(node: Node): node is JSDocImplementsTag;
|
||||
function isJSDocClassTag(node: Node): node is JSDocClassTag;
|
||||
function isJSDocPublicTag(node: Node): node is JSDocPublicTag;
|
||||
function isJSDocPrivateTag(node: Node): node is JSDocPrivateTag;
|
||||
@ -3787,6 +3809,8 @@ declare namespace ts {
|
||||
function isJSDocCommentContainingNode(node: Node): boolean;
|
||||
function isSetAccessor(node: Node): node is SetAccessorDeclaration;
|
||||
function isGetAccessor(node: Node): node is GetAccessorDeclaration;
|
||||
/** True if has initializer node attached to it. */
|
||||
function hasOnlyExpressionInitializer(node: Node): node is HasExpressionInitializer;
|
||||
function isObjectLiteralElement(node: Node): node is ObjectLiteralElement;
|
||||
function isStringLiteralLike(node: Node): node is StringLiteralLike;
|
||||
}
|
||||
@ -3839,7 +3863,7 @@ declare namespace ts {
|
||||
/**
|
||||
* Reads the config file, reports errors if any and exits if the config file cannot be found
|
||||
*/
|
||||
export function getParsedCommandLineOfConfigFile(configFileName: string, optionsToExtend: CompilerOptions, host: ParseConfigFileHost, extendedConfigCache?: Map<ExtendedConfigCacheEntry>, watchOptionsToExtend?: WatchOptions): ParsedCommandLine | undefined;
|
||||
export function getParsedCommandLineOfConfigFile(configFileName: string, optionsToExtend: CompilerOptions, host: ParseConfigFileHost, extendedConfigCache?: Map<ExtendedConfigCacheEntry>, watchOptionsToExtend?: WatchOptions, extraFileExtensions?: readonly FileExtensionInfo[]): ParsedCommandLine | undefined;
|
||||
/**
|
||||
* Read tsconfig.json file
|
||||
* @param fileName The path to the config file
|
||||
@ -4130,6 +4154,8 @@ declare namespace ts {
|
||||
function updateAsExpression(node: AsExpression, expression: Expression, type: TypeNode): AsExpression;
|
||||
function createNonNullExpression(expression: Expression): NonNullExpression;
|
||||
function updateNonNullExpression(node: NonNullExpression, expression: Expression): NonNullExpression;
|
||||
function createNonNullChain(expression: Expression): NonNullChain;
|
||||
function updateNonNullChain(node: NonNullChain, expression: Expression): NonNullChain;
|
||||
function createMetaProperty(keywordToken: MetaProperty["keywordToken"], name: Identifier): MetaProperty;
|
||||
function updateMetaProperty(node: MetaProperty, name: Identifier): MetaProperty;
|
||||
function createTemplateSpan(expression: Expression, literal: TemplateMiddle | TemplateTail): TemplateSpan;
|
||||
@ -4434,7 +4460,8 @@ declare namespace ts {
|
||||
* Starts a new lexical environment and visits a parameter list, suspending the lexical
|
||||
* environment upon completion.
|
||||
*/
|
||||
function visitParameterList(nodes: NodeArray<ParameterDeclaration> | undefined, visitor: Visitor, context: TransformationContext, nodesVisitor?: typeof visitNodes): NodeArray<ParameterDeclaration>;
|
||||
function visitParameterList(nodes: NodeArray<ParameterDeclaration>, visitor: Visitor, context: TransformationContext, nodesVisitor?: <T extends Node>(nodes: NodeArray<T>, visitor: Visitor, test?: (node: Node) => boolean, start?: number, count?: number) => NodeArray<T>): NodeArray<ParameterDeclaration>;
|
||||
function visitParameterList(nodes: NodeArray<ParameterDeclaration> | undefined, visitor: Visitor, context: TransformationContext, nodesVisitor?: <T extends Node>(nodes: NodeArray<T> | undefined, visitor: Visitor, test?: (node: Node) => boolean, start?: number, count?: number) => NodeArray<T> | undefined): NodeArray<ParameterDeclaration> | undefined;
|
||||
/**
|
||||
* Resumes a suspended lexical environment and visits a function body, ending the lexical
|
||||
* environment and merging hoisted declarations upon completion.
|
||||
@ -4736,6 +4763,8 @@ declare namespace ts {
|
||||
resolveTypeReferenceDirectives?(typeReferenceDirectiveNames: string[], containingFile: string, redirectedReference: ResolvedProjectReference | undefined, options: CompilerOptions): (ResolvedTypeReferenceDirective | undefined)[];
|
||||
}
|
||||
interface WatchCompilerHost<T extends BuilderProgram> extends ProgramHost<T>, WatchHost {
|
||||
/** Instead of using output d.ts file from project reference, use its source file */
|
||||
useSourceOfProjectReferenceRedirect?(): boolean;
|
||||
/** If provided, callback to invoke after every new program creation */
|
||||
afterProgramCreate?(program: T): void;
|
||||
}
|
||||
@ -4760,6 +4789,7 @@ declare namespace ts {
|
||||
/** Options to extend */
|
||||
optionsToExtend?: CompilerOptions;
|
||||
watchOptionsToExtend?: WatchOptions;
|
||||
extraFileExtensions?: readonly FileExtensionInfo[];
|
||||
/**
|
||||
* Used to generate source file names from the config file and its include, exclude, files rules
|
||||
* and also to cache the directory stucture
|
||||
@ -4787,7 +4817,7 @@ declare namespace ts {
|
||||
/**
|
||||
* Create the watch compiler host for either configFile or fileNames and its options
|
||||
*/
|
||||
function createWatchCompilerHost<T extends BuilderProgram>(configFileName: string, optionsToExtend: CompilerOptions | undefined, system: System, createProgram?: CreateProgram<T>, reportDiagnostic?: DiagnosticReporter, reportWatchStatus?: WatchStatusReporter, watchOptionsToExtend?: WatchOptions): WatchCompilerHostOfConfigFile<T>;
|
||||
function createWatchCompilerHost<T extends BuilderProgram>(configFileName: string, optionsToExtend: CompilerOptions | undefined, system: System, createProgram?: CreateProgram<T>, reportDiagnostic?: DiagnosticReporter, reportWatchStatus?: WatchStatusReporter, watchOptionsToExtend?: WatchOptions, extraFileExtensions?: readonly FileExtensionInfo[]): WatchCompilerHostOfConfigFile<T>;
|
||||
function createWatchCompilerHost<T extends BuilderProgram>(rootFiles: string[], options: CompilerOptions, system: System, createProgram?: CreateProgram<T>, reportDiagnostic?: DiagnosticReporter, reportWatchStatus?: WatchStatusReporter, projectReferences?: readonly ProjectReference[], watchOptions?: WatchOptions): WatchCompilerHostOfFilesAndCompilerOptions<T>;
|
||||
/**
|
||||
* Creates the watch from the host for root files and compiler options
|
||||
@ -5078,7 +5108,7 @@ declare namespace ts {
|
||||
fileName: Path;
|
||||
packageName: string;
|
||||
}
|
||||
interface LanguageServiceHost extends ModuleSpecifierResolutionHost {
|
||||
interface LanguageServiceHost extends GetEffectiveTypeRootsHost {
|
||||
getCompilationSettings(): CompilerOptions;
|
||||
getNewLine?(): string;
|
||||
getProjectVersion?(): string;
|
||||
@ -5094,6 +5124,7 @@ declare namespace ts {
|
||||
log?(s: string): void;
|
||||
trace?(s: string): void;
|
||||
error?(s: string): void;
|
||||
useCaseSensitiveFileNames?(): boolean;
|
||||
readDirectory?(path: string, extensions?: readonly string[], exclude?: readonly string[], include?: readonly string[], depth?: number): string[];
|
||||
readFile?(path: string, encoding?: string): string | undefined;
|
||||
realpath?(path: string): string;
|
||||
@ -5115,25 +5146,88 @@ declare namespace ts {
|
||||
metadata?: unknown;
|
||||
};
|
||||
interface LanguageService {
|
||||
/** This is used as a part of restarting the language service. */
|
||||
cleanupSemanticCache(): void;
|
||||
/**
|
||||
* Gets errors indicating invalid syntax in a file.
|
||||
*
|
||||
* In English, "this cdeo have, erorrs" is syntactically invalid because it has typos,
|
||||
* grammatical errors, and misplaced punctuation. Likewise, examples of syntax
|
||||
* errors in TypeScript are missing parentheses in an `if` statement, mismatched
|
||||
* curly braces, and using a reserved keyword as a variable name.
|
||||
*
|
||||
* These diagnostics are inexpensive to compute and don't require knowledge of
|
||||
* other files. Note that a non-empty result increases the likelihood of false positives
|
||||
* from `getSemanticDiagnostics`.
|
||||
*
|
||||
* While these represent the majority of syntax-related diagnostics, there are some
|
||||
* that require the type system, which will be present in `getSemanticDiagnostics`.
|
||||
*
|
||||
* @param fileName A path to the file you want syntactic diagnostics for
|
||||
*/
|
||||
getSyntacticDiagnostics(fileName: string): DiagnosticWithLocation[];
|
||||
/** The first time this is called, it will return global diagnostics (no location). */
|
||||
/**
|
||||
* Gets warnings or errors indicating type system issues in a given file.
|
||||
* Requesting semantic diagnostics may start up the type system and
|
||||
* run deferred work, so the first call may take longer than subsequent calls.
|
||||
*
|
||||
* Unlike the other get*Diagnostics functions, these diagnostics can potentially not
|
||||
* include a reference to a source file. Specifically, the first time this is called,
|
||||
* it will return global diagnostics with no associated location.
|
||||
*
|
||||
* To contrast the differences between semantic and syntactic diagnostics, consider the
|
||||
* sentence: "The sun is green." is syntactically correct; those are real English words with
|
||||
* correct sentence structure. However, it is semantically invalid, because it is not true.
|
||||
*
|
||||
* @param fileName A path to the file you want semantic diagnostics for
|
||||
*/
|
||||
getSemanticDiagnostics(fileName: string): Diagnostic[];
|
||||
/**
|
||||
* Gets suggestion diagnostics for a specific file. These diagnostics tend to
|
||||
* proactively suggest refactors, as opposed to diagnostics that indicate
|
||||
* potentially incorrect runtime behavior.
|
||||
*
|
||||
* @param fileName A path to the file you want semantic diagnostics for
|
||||
*/
|
||||
getSuggestionDiagnostics(fileName: string): DiagnosticWithLocation[];
|
||||
/**
|
||||
* Gets global diagnostics related to the program configuration and compiler options.
|
||||
*/
|
||||
getCompilerOptionsDiagnostics(): Diagnostic[];
|
||||
/**
|
||||
* @deprecated Use getEncodedSyntacticClassifications instead.
|
||||
*/
|
||||
/** @deprecated Use getEncodedSyntacticClassifications instead. */
|
||||
getSyntacticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
|
||||
/**
|
||||
* @deprecated Use getEncodedSemanticClassifications instead.
|
||||
*/
|
||||
/** @deprecated Use getEncodedSemanticClassifications instead. */
|
||||
getSemanticClassifications(fileName: string, span: TextSpan): ClassifiedSpan[];
|
||||
getEncodedSyntacticClassifications(fileName: string, span: TextSpan): Classifications;
|
||||
getEncodedSemanticClassifications(fileName: string, span: TextSpan): Classifications;
|
||||
/**
|
||||
* Gets completion entries at a particular position in a file.
|
||||
*
|
||||
* @param fileName The path to the file
|
||||
* @param position A zero-based index of the character where you want the entries
|
||||
* @param options An object describing how the request was triggered and what kinds
|
||||
* of code actions can be returned with the completions.
|
||||
*/
|
||||
getCompletionsAtPosition(fileName: string, position: number, options: GetCompletionsAtPositionOptions | undefined): WithMetadata<CompletionInfo> | undefined;
|
||||
getCompletionEntryDetails(fileName: string, position: number, name: string, formatOptions: FormatCodeOptions | FormatCodeSettings | undefined, source: string | undefined, preferences: UserPreferences | undefined): CompletionEntryDetails | undefined;
|
||||
/**
|
||||
* Gets the extended details for a completion entry retrieved from `getCompletionsAtPosition`.
|
||||
*
|
||||
* @param fileName The path to the file
|
||||
* @param position A zero based index of the character where you want the entries
|
||||
* @param entryName The name from an existing completion which came from `getCompletionsAtPosition`
|
||||
* @param formatOptions How should code samples in the completions be formatted, can be undefined for backwards compatibility
|
||||
* @param source Source code for the current file, can be undefined for backwards compatibility
|
||||
* @param preferences User settings, can be undefined for backwards compatibility
|
||||
*/
|
||||
getCompletionEntryDetails(fileName: string, position: number, entryName: string, formatOptions: FormatCodeOptions | FormatCodeSettings | undefined, source: string | undefined, preferences: UserPreferences | undefined): CompletionEntryDetails | undefined;
|
||||
getCompletionEntrySymbol(fileName: string, position: number, name: string, source: string | undefined): Symbol | undefined;
|
||||
/**
|
||||
* Gets semantic information about the identifier at a particular position in a
|
||||
* file. Quick info is what you typically see when you hover in an editor.
|
||||
*
|
||||
* @param fileName The path to the file
|
||||
* @param position A zero-based index of the character where you want the quick info
|
||||
*/
|
||||
getQuickInfoAtPosition(fileName: string, position: number): QuickInfo | undefined;
|
||||
getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): TextSpan | undefined;
|
||||
getBreakpointStatementAtPosition(fileName: string, position: number): TextSpan | undefined;
|
||||
@ -5488,6 +5582,7 @@ declare namespace ts {
|
||||
newLineCharacter?: string;
|
||||
convertTabsToSpaces?: boolean;
|
||||
indentStyle?: IndentStyle;
|
||||
trimTrailingWhitespace?: boolean;
|
||||
}
|
||||
interface FormatCodeOptions extends EditorOptions {
|
||||
InsertSpaceAfterCommaDelimiter: boolean;
|
||||
@ -5517,6 +5612,7 @@ declare namespace ts {
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis?: boolean;
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets?: boolean;
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces?: boolean;
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingEmptyBraces?: boolean;
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces?: boolean;
|
||||
readonly insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces?: boolean;
|
||||
readonly insertSpaceAfterTypeAssertion?: boolean;
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user