///
import CancellationToken from 'cancellationtoken';
import { Map } from 'immutable';
import { IDisposable } from '../IDisposable';
import { IRemoteServiceBroker } from '../IRemoteServiceBroker';
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 { ClientCredentialsPolicy } from './ClientCredentialsPolicy';
import { GlobalBrokeredServiceContainer } from './GlobalBrokeredServiceContainer';
import { ServiceAudience } from './ServiceAudience';
import { ServiceBrokerEmitter } from './ServiceBrokerEmitter';
declare const View_base: new () => ServiceBrokerEmitter;
/**
* A filtered view into a brokered service container.
*/
export declare class View extends View_base implements IServiceBroker, IRemoteServiceBroker {
private readonly container;
private readonly audience;
private readonly clientCredentials;
private readonly clientCredentialsPolicy;
private readonly clientCulture?;
private readonly clientUICulture?;
constructor(container: GlobalBrokeredServiceContainer, audience: ServiceAudience, clientCredentials: Map, clientCredentialsPolicy: ClientCredentialsPolicy, clientCulture?: string | undefined, clientUICulture?: string | undefined);
getProxy(serviceDescriptor: ServiceRpcDescriptor, options?: ServiceActivationOptions, cancellationToken?: CancellationToken): Promise<(T & IDisposable) | null>;
getPipe(serviceMoniker: ServiceMoniker, options?: ServiceActivationOptions, cancellationToken?: CancellationToken): 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;
private applyOptionsFilter;
}
export {};