import { UriComponents } from '@vscode-alt/monaco-editor/esm/vs/base/common/uri';
import { IConfigurationService, IOrganizationContextService, ConfigurationTarget, IRegistry } from '@adminide-stack/core';
import { ClientThreadConfigurationShape } from '@adminide-stack/extension-api/lib/protocol/client.protocol';
import { Connection } from '@adminide-stack/extension-api';
export declare class ClientConfiguration implements ClientThreadConfigurationShape {
    private readonly _organizationContextService;
    private readonly configurationService;
    private readonly _registry;
    private subscriptions;
    private proxy;
    constructor(connection: Connection, _organizationContextService: IOrganizationContextService, configurationService: IConfigurationService, _registry: IRegistry);
    private _getConfigurationData;
    $updateConfigurationOption(target: ConfigurationTarget, key: string, value: any, resourceUriComponenets: UriComponents): Promise<void>;
    $removeConfigurationOption(target: ConfigurationTarget, key: string, resourceUriComponenets: UriComponents): Promise<void>;
    unsubscribe(): void;
    private writeConfiguration;
    private deriveConfigurationTarget;
    private toConfigurationChangeEventData;
    private toJSONConfiguration;
}
