import { RPCService } from '@opensumi/ide-connection'; import { ICreateProcessOptions, IExtensionMetaData, IExtensionNodeClientService, IExtraMetaData } from '../common'; export declare const DEFAULT_NLS_CONFIG_DIR: string; interface IRPCExtensionService { $processNotExist(id: string): Promise; $processCrashRestart(id: string): void; $restartExtProcess(): void; } export declare class ExtensionServiceClientImpl extends RPCService implements IExtensionNodeClientService { private extensionService; private fileService; private readonly hashCalculateService; private readonly appConfig; private readonly logger; private clientId; private languagePackCache; setConnectionClientId(clientId: string): void; getOpenVSXRegistry(): Promise; pid(): Promise; infoProcessNotExist(): Promise | undefined; restartExtProcessByClient(): void; infoProcessCrash(): void; getElectronMainThreadListenPath(clientId: string): Promise; /** * 创建插件进程 * * @param clientId 客户端 id * @param options 创建插件参数 */ createProcess(clientId: string, options: ICreateProcessOptions): Promise; /** * 获取插件信息 * * @param extensionPath 插件路径 * @param extraMetaData 补充数据 */ getExtension(extensionPath: string, localization: string, extraMetaData?: IExtraMetaData): Promise; /** * 获取所有插件 * * @param scan 插件存放目录 * @param extensionCandidate 执行插件目录 * @param extraMetaData 扫描数据字段 */ getAllExtensions(scan: string[], extensionCandidate: string[], localization: string, extraMetaData: IExtraMetaData): Promise; disposeClientExtProcess(clientId: string, info?: boolean): Promise; /** * 将 packageJson 中声明的语言信息转换 * @param packageJson package.json * @param languagePackPath language pack path */ private convertLanguagePack; setupNLSConfig(languageId: string, storagePath: string): Promise; updateLanguagePack(languageId: string, languagePack: string, storagePath: string): Promise; getLanguagePack(languageId: string): Promise; } export {}; //# sourceMappingURL=extension.service.client.d.ts.map