import type { BrowserTypes, Channel, Context, ContextHandler, DisplayMetadata, Listener } from '@finos/fdc3'; import { FullyQualifiedAppIdentifier, IProxyMessagingProvider } from '../contracts.js'; import { MessagingBase } from '../messaging/index.js'; import { ContextListener } from './channel.contracts.js'; /** * Represents a context channel that applications can use to send and receive * context data. */ export declare class PublicChannel extends MessagingBase implements Channel { private contextListener; constructor(channelDetails: BrowserTypes.Channel, appIdentifier: FullyQualifiedAppIdentifier, messagingProvider: IProxyMessagingProvider, contextListener: ContextListener); private readonly _id; get id(): string; private readonly _type; get type(): Channel['type']; private readonly _displayMetadata?; get displayMetadata(): DisplayMetadata | undefined; broadcast(context: Context): Promise; getCurrentContext(contextType?: string | undefined): Promise; addContextListener(contextType: string | null, handler: ContextHandler): Promise; addContextListener(handler: ContextHandler): Promise; }