foo-webview-sdk
    Preparing search index...

    Variable portConst

    port: {
        connect: (name: string) => Promise<PortConnectResponse>;
        disconnect: (portId: string) => Promise<PortDisconnectResponse>;
        getPorts: (name?: string) => Promise<PortGetPortsResponse>;
        onConnect: (handler: (data: unknown) => void) => () => void;
        onDisconnect: (handler: (data: unknown) => void) => () => void;
        onMessage: (handler: (data: unknown) => void) => () => void;
        postMessage: (
            portId: string,
            message: JsonValue,
        ) => Promise<PortPostMessageResponse>;
        postMessageTo: (
            portId: string,
            targetPortId: string,
            message: JsonValue,
        ) => Promise<PortPostMessageToResponse>;
    } = ...

    port — cross-window named-channel messaging hub.

    Use port.connect to obtain a portId; subsequent port.postMessage / port.postMessageTo calls route via that handle. Receivers subscribe with port.onMessage.

    Type Declaration

    • connect: (name: string) => Promise<PortConnectResponse>

      Open a port on a named channel for the calling window and announce it with port:connected.

    • disconnect: (portId: string) => Promise<PortDisconnectResponse>

      Close a port and announce it with port:disconnected.

    • getPorts: (name?: string) => Promise<PortGetPortsResponse>

      Omit name to list the ports of every channel.

    • onConnect: (handler: (data: unknown) => void) => () => void

      Subscribe to port connection events. Returns an unsubscribe function.

    • onDisconnect: (handler: (data: unknown) => void) => () => void

      Subscribe to port disconnection events. Returns an unsubscribe function.

    • onMessage: (handler: (data: unknown) => void) => () => void

      Subscribe to incoming messages on ports. Returns an unsubscribe function.

    • postMessage: (portId: string, message: JsonValue) => Promise<PortPostMessageResponse>

      null is not a message; the host refuses it as missing.

    • postMessageTo: (
          portId: string,
          targetPortId: string,
          message: JsonValue,
      ) => Promise<PortPostMessageToResponse>

      Send a message to one port, as a port:message event to that port's window.