Skip to main content
Version: 1.2


FDC3 API operations make use of several type declarations.


interface Context {
id?: { [key: string]: string };
name?: string;
type: string;

The base interface that all contexts should extend: a context data object adhering to the Context Data Specification.

This means that it must at least have a type property that indicates what type of data it represents, e.g. ''. The type property of context objects is important for certain FDC3 operations, like Channel.getCurrentContext and DesktopAgent.addContextListener, which allows you to filter contexts by their type.

See also


type ContextHandler = (context: Context) => void;

Describes a callback that handles a context event.

Used when attaching listeners for context broadcasts and raised intents.

See also


A Listener object is returned when an application subscribes to intents or context broadcasts via the addIntentListener or addContextListener methods on the DesktopAgent object.

interface Listener {
unsubscribe(): void;


unsubscribe(): void;

Allows an application to unsubscribe from listening to intents or context broadcasts.

See also


type TargetApp = string | AppMetadata;

Operations that target apps (like open or raiseIntent) can identify an app just by by its name, or pass full app metadata, giving the desktop agent more information about the targeted app.

See also