///
import CancellationToken from 'cancellationtoken';
import { IDisposable } from '../IDisposable';
import { IServiceBroker } from '../IServiceBroker';
import { RemoteServiceConnectionInfo } from '../RemoteServiceConnectionInfo';
import { ServiceActivationOptions } from '../ServiceActivationOptions';
import { ServiceBrokerClientMetadata } from '../ServiceBrokerClientMetadata';
import { ServiceMoniker } from '../ServiceMoniker';
import { ServiceRpcDescriptor } from '../ServiceRpcDescriptor';
import { GlobalBrokeredServiceContainer } from './GlobalBrokeredServiceContainer';
import { IProffered } from './IProffered';
import { ServiceBrokerEmitter } from './ServiceBrokerEmitter';
import { ServiceMonikerValue } from './ServiceMonikerValue';
import { ServiceSource } from './ServiceSource';
declare const ProfferedServiceBroker_base: new () => ServiceBrokerEmitter;
export declare class ProfferedServiceBroker extends ProfferedServiceBroker_base implements IProffered {
private readonly container;
private readonly serviceBroker;
readonly source: ServiceSource;
readonly monikers: readonly ServiceMonikerValue[];
private readonly remoteServiceBrokerWrapper;
constructor(container: GlobalBrokeredServiceContainer, serviceBroker: IServiceBroker, source: ServiceSource, monikers: readonly ServiceMoniker[]);
getProxy(serviceDescriptor: ServiceRpcDescriptor, options?: ServiceActivationOptions | undefined, cancellationToken?: CancellationToken | undefined): Promise<(T & IDisposable) | null>;
getPipe(serviceMoniker: ServiceMoniker, options?: ServiceActivationOptions | undefined, cancellationToken?: CancellationToken | undefined): Promise;
handshake(clientMetadata: ServiceBrokerClientMetadata, cancellationToken?: CancellationToken | undefined): Promise;
requestServiceChannel(serviceMoniker: ServiceMoniker, options?: ServiceActivationOptions | undefined, cancellationToken?: CancellationToken | undefined): Promise;
cancelServiceRequest(serviceRequestId: string, cancellationToken?: CancellationToken | undefined): Promise;
dispose(): void;
private onAvailabilityChanged;
}
export {};