Interface ExtensionPlugin<T>

Represents a Theia plugin as well as a VSCode extension.

interface ExtensionPlugin<T> {
    exports: T;
    extensionKind: ExtensionKind;
    extensionPath: string;
    extensionUri: Uri;
    id: string;
    isActive: boolean;
    packageJSON: any;
    pluginPath: string;
    pluginType: PluginType;
    pluginUri: Uri;
    activate(): Thenable<T>;
}

Type Parameters

  • T

Hierarchy (view full)

Implemented by

Properties

exports: T

The public API exported by this plug-in. It is an invalid action to access this field before this plug-in has been activated.

extensionKind: ExtensionKind

The extension kind describes if an extension runs where the UI runs or if an extension runs where the remote extension host runs. The extension kind is defined in the package.json-file of extensions. When no remote extension host exists, the value is ExtensionKind.UI.

extensionPath: string

The absolute file path of the directory containing this extension. Same as theia.Plugin.pluginPath.

extensionUri: Uri

The uri of the directory containing the extension. Same as theia.Plugin.pluginUri.

id: string

The canonical plug-in identifier in the form of: publisher.name.

isActive: boolean

true if the plug-in has been activated.

packageJSON: any

The parsed contents of the plug-in's package.json.

pluginPath: string

The absolute file path of the directory containing this plug-in.

pluginType: PluginType
pluginUri: Uri

The uri of the directory containing this plug-in.

Methods