import { ServiceMoniker } from '../ServiceMoniker'; import { IBrokeredServiceContainer } from './IBrokeredServiceContainer'; import { ServiceAudience } from './ServiceAudience'; export declare class ServiceRegistration { readonly audience: ServiceAudience; readonly allowGuestClients: boolean; profferCallback?: Promise | ((container: IBrokeredServiceContainer, moniker: ServiceMoniker) => Promise | void) | undefined; /** * Initializes a new instance of the ServiceRegistration class. * @param audience the intended audiences for this service. * @param allowGuestClients a value indicating whether this service is exposed to non-Owner clients. * @param profferCallback an optional callback that should be invoked the first time this service is activated in order to proffer the service to the container, or a promise that resolves when the service is proffered. */ constructor(audience: ServiceAudience, allowGuestClients: boolean, profferCallback?: Promise | ((container: IBrokeredServiceContainer, moniker: ServiceMoniker) => Promise | void) | undefined); /** Gets a value indicating whether this service is exposed to local clients relative to itself. */ get isExposedLocally(): boolean; /** Gets a value indicating whether this service is exposed to remote clients relative to itself. */ get isExposedRemotely(): boolean; isExposedTo(consumingAudience: ServiceAudience): boolean; }