@@ -5668,7 +5668,8 @@ declare namespace ts.server.protocol {
5668
5668
GetApplicableRefactors = "getApplicableRefactors" ,
5669
5669
GetEditsForRefactor = "getEditsForRefactor" ,
5670
5670
OrganizeImports = "organizeImports" ,
5671
- GetEditsForFileRename = "getEditsForFileRename"
5671
+ GetEditsForFileRename = "getEditsForFileRename" ,
5672
+ ConfigurePlugin = "configurePlugin"
5672
5673
}
5673
5674
/**
5674
5675
* A TypeScript Server message
@@ -6609,6 +6610,14 @@ declare namespace ts.server.protocol {
6609
6610
*/
6610
6611
interface ConfigureResponse extends Response {
6611
6612
}
6613
+ interface ConfigurePluginRequestArguments {
6614
+ pluginName : string ;
6615
+ configuration : any ;
6616
+ }
6617
+ interface ConfigurePluginRequest extends Request {
6618
+ command : CommandTypes . ConfigurePlugin ;
6619
+ arguments : ConfigurePluginRequestArguments ;
6620
+ }
6612
6621
/**
6613
6622
* Information found in an "open" request.
6614
6623
*/
@@ -8035,6 +8044,11 @@ declare namespace ts.server {
8035
8044
interface PluginModule {
8036
8045
create ( createInfo : PluginCreateInfo ) : LanguageService ;
8037
8046
getExternalFiles ?( proj : Project ) : string [ ] ;
8047
+ onConfigurationChanged ?( config : any ) : void ;
8048
+ }
8049
+ interface PluginModuleWithName {
8050
+ name : string ;
8051
+ module : PluginModule ;
8038
8052
}
8039
8053
type PluginModuleFactory = ( mod : {
8040
8054
typescript : typeof ts ;
@@ -8173,11 +8187,12 @@ declare namespace ts.server {
8173
8187
filesToString ( writeProjectFileNames : boolean ) : string ;
8174
8188
setCompilerOptions ( compilerOptions : CompilerOptions ) : void ;
8175
8189
protected removeRoot ( info : ScriptInfo ) : void ;
8176
- protected enableGlobalPlugins ( options : CompilerOptions ) : void ;
8177
- protected enablePlugin ( pluginConfigEntry : PluginImport , searchPaths : string [ ] ) : void ;
8190
+ protected enableGlobalPlugins ( options : CompilerOptions , pluginConfigOverrides : Map < any > | undefined ) : void ;
8191
+ protected enablePlugin ( pluginConfigEntry : PluginImport , searchPaths : string [ ] , pluginConfigOverrides : Map < any > | undefined ) : void ;
8192
+ private enableProxy ;
8193
+ onPluginConfigurationChanged ( pluginName : string , configuration : any ) : void ;
8178
8194
/** Starts a new check for diagnostics. Call this if some file has updated that would cause diagnostics to be changed. */
8179
8195
refreshDiagnostics ( ) : void ;
8180
- private enableProxy ;
8181
8196
}
8182
8197
/**
8183
8198
* If a file is opened and no tsconfig (or jsconfig) is found,
@@ -8218,7 +8233,6 @@ declare namespace ts.server {
8218
8233
getConfigFilePath ( ) : NormalizedPath ;
8219
8234
getProjectReferences ( ) : ReadonlyArray < ProjectReference > ;
8220
8235
updateReferences ( refs : ReadonlyArray < ProjectReference > | undefined ) : void ;
8221
- enablePlugins ( ) : void ;
8222
8236
/**
8223
8237
* Get the errors that dont have any file name associated
8224
8238
*/
@@ -8463,6 +8477,7 @@ declare namespace ts.server {
8463
8477
readonly globalPlugins : ReadonlyArray < string > ;
8464
8478
readonly pluginProbeLocations : ReadonlyArray < string > ;
8465
8479
readonly allowLocalPluginLoads : boolean ;
8480
+ private currentPluginConfigOverrides ;
8466
8481
readonly typesMapLocation : string | undefined ;
8467
8482
readonly syntaxOnly ?: boolean ;
8468
8483
/** Tracks projects that we have already sent telemetry for. */
@@ -8638,6 +8653,7 @@ declare namespace ts.server {
8638
8653
applySafeList ( proj : protocol . ExternalProject ) : NormalizedPath [ ] ;
8639
8654
openExternalProject ( proj : protocol . ExternalProject ) : void ;
8640
8655
hasDeferredExtension ( ) : boolean ;
8656
+ configurePlugin ( args : protocol . ConfigurePluginRequestArguments ) : void ;
8641
8657
}
8642
8658
}
8643
8659
declare namespace ts . server {
@@ -8808,6 +8824,7 @@ declare namespace ts.server {
8808
8824
private convertTextChangeToCodeEdit ;
8809
8825
private getBraceMatching ;
8810
8826
private getDiagnosticsForProject ;
8827
+ private configurePlugin ;
8811
8828
getCanonicalFileName ( fileName : string ) : string ;
8812
8829
exit ( ) : void ;
8813
8830
private notRequired ;
0 commit comments