import { AppIdentifier, AppIntent, AppMetadata, Channel, Context, ContextHandler, ContextType, DesktopAgentDetails, EventHandler, FDC3EventTypes, GetAgentLogLevels, ImplementationMetadata, Intent, IntentHandler, IntentResolution, Listener, PrivateChannel } from '@finos/fdc3'; import { ChannelFactory } from '../channel/index.js'; import { DesktopAgentNext, FullyQualifiedAppIdentifier, IProxyMessagingProvider } from '../contracts.js'; import { MessagingBase } from '../messaging/index.js'; type ProxyDesktopAgentParams = { appIdentifier: FullyQualifiedAppIdentifier; messagingProvider: IProxyMessagingProvider; channelFactory: ChannelFactory; logLevels?: GetAgentLogLevels; }; export declare class DesktopAgentProxy extends MessagingBase implements DesktopAgentNext { private channels; private channelFactory; constructor(params: ProxyDesktopAgentParams); addEventListener(type: FDC3EventTypes | null, handler: EventHandler): Promise; validateAppIdentity?({ appId: _appId, appDUrl: _appDUrl, instanceUuid: _instanceUuid, }: { appId?: string | undefined; appDUrl?: string | undefined; instanceUuid?: string | undefined; }): Promise; open(app: AppIdentifier, context?: Context): Promise; open(name: string, context?: Context): Promise; findIntent(intent: Intent, context?: Context | undefined, resultType?: string | undefined): Promise; findIntentsByContext(context: Context, resultType?: string | undefined): Promise; findInstances(app: AppIdentifier): Promise; raiseIntent(intent: Intent, context: Context, appIdentifier?: AppIdentifier): Promise; raiseIntent(intent: Intent, context: Context, name: string): Promise; raiseIntentForContext(context: Context, app?: AppIdentifier): Promise; raiseIntentForContext(context: Context, name: string): Promise; addIntentListener(intent: Intent, handler: IntentHandler): Promise; /** * This function is not yet part of the official FDC3 API - it is a temporary solution to allow intent listeners to specify context types that they are interested in, and will be removed once this feature is added to the FDC3 API and the BrowserTypes.AddIntentListenerRequestPayload is updated to include contextTypes * This feature is planned for FDC3 3.0 and this implementation is based on the pull request that is waiting to merged into finos once the last 2.x release is out. * https://github.com/finos/FDC3/pull/1594 * @param intent * @param contextType * @param handler * @returns */ addIntentListenerWithContext(intent: Intent, contextType: string | string[], handler: IntentHandler): Promise; private registerIntentListener; private publishIntentResultRequest; broadcast(context: Context): Promise; addContextListener(contextType: ContextType | null, handler: ContextHandler): Promise; addContextListener(handler: ContextHandler): Promise; getUserChannels(): Promise; joinUserChannel(channelId: string): Promise; getOrCreateChannel(channelId: string): Promise; createPrivateChannel(): Promise; getCurrentChannel(): Promise; leaveCurrentChannel(): Promise; getInfo(): Promise; getAppMetadata(app: AppIdentifier): Promise; getSystemChannels(): Promise; joinChannel(channelId: string): Promise; private createIntentResolution; private acknowledgeHeartbeat; } export {};