///
import CancellationToken from 'cancellationtoken';
import { IDisposable } from '../IDisposable';
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 { BrokeredServiceFactory } from './IBrokeredServiceContainer';
import { IProffered } from './IProffered';
import { ServiceBrokerEmitter } from './ServiceBrokerEmitter';
import { ServiceMonikerValue } from './ServiceMonikerValue';
import { ServiceSource } from './ServiceSource';
declare const ProfferedServiceFactory_base: new () => ServiceBrokerEmitter;
export declare class ProfferedServiceFactory extends ProfferedServiceFactory_base implements IProffered {
private readonly container;
private readonly descriptor;
private readonly factory;
source: ServiceSource;
monikers: readonly ServiceMonikerValue[];
private readonly remoteServiceBrokerWrapper;
constructor(container: GlobalBrokeredServiceContainer, descriptor: ServiceRpcDescriptor, factory: BrokeredServiceFactory);
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 invokeFactory;
}
export {};