import { Plugin, SecretsExt } from '../common/plugin-api-rpc'; import { RPCProtocol } from '../common/rpc-protocol'; import { Event } from '@theia/core/lib/common/event'; import { Disposable, DisposableGroup } from '@theia/core'; import * as theia from '@theia/plugin'; export interface PasswordChange { extensionId: string; key: string; } export declare const InternalSecretsExt: unique symbol; export interface InternalSecretsExt extends SecretsExt { keys(extensionId: string): Promise; get(extensionId: string, key: string): Promise; store(extensionId: string, key: string, value: string): Promise; delete(extensionId: string, key: string): Promise; onDidChangePassword(listener: (e: PasswordChange) => any, thisArgs?: any, disposables?: DisposableGroup): Disposable; } export declare class SecretsExtImpl implements InternalSecretsExt { private proxy; private onDidChangePasswordEmitter; readonly onDidChangePassword: Event; constructor(rpc: RPCProtocol); $onDidChangePassword(e: { extensionId: string; key: string; }): Promise; get(extensionId: string, key: string): Promise; store(extensionId: string, key: string, value: string): Promise; delete(extensionId: string, key: string): Promise; keys(extensionId: string): Promise; } export declare class SecretStorageExt implements theia.SecretStorage { protected readonly id: string; readonly secretState: InternalSecretsExt; private onDidChangeEmitter; readonly onDidChange: Event; constructor(pluginDescription: Plugin, secretState: InternalSecretsExt); get(key: string): Promise; store(key: string, value: string): Promise; delete(key: string): Promise; keys(): Promise; } //# sourceMappingURL=secrets-ext.d.ts.map