A selector that defines the documents this provider is applicable to.
A code action provider.
Optionalmetadata: CodeActionProviderMetadataMetadata about the kind of code actions the provider providers.
A disposable that unregisters this provider when being disposed.
Register a code action provider.
Multiple providers can be registered for a language. In that case providers are asked in parallel and the results are merged. A failing provider (rejected promise or exception) will not cause a failure of the whole operation.