@lukso/up-provider - v0.3.7
    Preparing search index...

    Interface UPClientChannel

    API for client channel, each time an iframe's UPClientProvider is allocated and connected the UPProviderConnector will create and emit a new UPClientChannel. The UPClientChannel will have the API to control that channel. The configuration will default to values from the UPProviderConnector but enable will be false.

    interface UPClientChannel {
        _serverChannel: MessagePort;
        element: HTMLIFrameElement | null;
        id: string;
        window: Window;
        get allowedAccounts(): `0x${string}`[];
        set allowedAccounts(accounts: `0x${string}`[]): void;
        get chainId(): number;
        set chainId(chainId: number): void;
        get contextAccounts(): `0x${string}`[];
        set contextAccounts(contextAccounts: `0x${string}`[]): void;
        get enable(): boolean;
        set enable(value: boolean): void;
        get rpcUrls(): string[];
        set rpcUrls(rpcUrls: string[]): void;
        addListener<T extends keyof UPClientChannelEvents>(
            event: T,
            fn: (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void,
            context?: any,
        ): this;
        close(): void;
        emit<T extends keyof UPClientChannelEvents>(
            event: T,
            ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                T,
                keyof UPClientChannelEvents,
            >],
        ): boolean;
        eventNames(): (keyof UPClientChannelEvents)[];
        listenerCount(event: keyof UPClientChannelEvents): number;
        listeners<T extends keyof UPClientChannelEvents>(
            event: T,
        ): (
            (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void
        )[];
        off<T extends keyof UPClientChannelEvents>(
            event: T,
            fn?: (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void,
            context?: any,
            once?: boolean,
        ): this;
        on<T extends keyof UPClientChannelEvents>(
            event: T,
            fn: (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void,
            context?: any,
        ): this;
        once<T extends keyof UPClientChannelEvents>(
            event: T,
            fn: (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void,
            context?: any,
        ): this;
        removeAllListeners(event?: keyof UPClientChannelEvents): this;
        removeListener<T extends keyof UPClientChannelEvents>(
            event: T,
            fn?: (
                ...args: ArgumentMap<UPClientChannelEvents>[Extract<
                    T,
                    keyof UPClientChannelEvents,
                >],
            ) => void,
            context?: any,
            once?: boolean,
        ): this;
        resume(delay: number): void;
        send(method: string, params: unknown[]): Promise<void>;
        setAllowedAccounts(accounts: `0x${string}`[]): Promise<void>;
        setChainId(chainId: number): Promise<void>;
        setContextAccounts(contextAccounts: `0x${string}`[]): Promise<void>;
        setEnable(enable: boolean): Promise<void>;
        setRpcUrls(rpcUrls: string[]): Promise<void>;
        setupChannel(
            enable: boolean,
            accounts: `0x${string}`[],
            contextAccounts: `0x${string}`[],
            chainId: number,
        ): Promise<void>;
        showPopup(show: boolean): Promise<void>;
    }
    Index

    Properties

    _serverChannel: MessagePort
    element: HTMLIFrameElement | null
    id: string
    window: Window

    Accessors

    • get allowedAccounts(): `0x${string}`[]

      This represents the normal "eth_accounts" method list.

      Returns `0x${string}`[]

      list of accounts

    • set allowedAccounts(accounts: `0x${string}`[]): void

      This represents the normal "eth_accounts" method list. (setter mirrors setAllowedAccounts)

      Parameters

      • accounts: `0x${string}`[]

      Returns void

    • get contextAccounts(): `0x${string}`[]

      These are extra accounts sent to each provider. In the ue.io grid, this is used to represent the account that is the grid owner.

      Returns `0x${string}`[]

      list of addresses

    • set contextAccounts(contextAccounts: `0x${string}`[]): void

      These are extra accounts sent to each provider. In the ue.io grid, this is used to represent the account that is the grid owner. (setter mirrors setContextAccounts)

      Parameters

      • contextAccounts: `0x${string}`[]

      Returns void

    Methods

    • Remove all listeners, or those of the specified event.

      Parameters

      • Optionalevent: keyof UPClientChannelEvents

      Returns this

    • Send message to dapp.

      Parameters

      • method: string

        method name/event

      • params: unknown[]

        parameters

      Returns Promise<void>

    • This represents the normal "eth_accounts" method list.

      Parameters

      • accounts: `0x${string}`[]

        list of addresses

      Returns Promise<void>

    • These are extra accounts sent to each provider. In the ue.io grid, this is used to represent the account that is the grid owner.

      Parameters

      • contextAccounts: `0x${string}`[]

      Returns Promise<void>

    • Enable or disable the channel.

      Parameters

      • enable: boolean

        enable or disable the channel

      Returns Promise<void>

    • RPC urls

      Parameters

      • rpcUrls: string[]

        list of rpc urls (used by client provider to short circuit requests)

      Returns Promise<void>

    • Helper to setup the channel with all the necessary information.

      Parameters

      • enable: boolean

        enable

      • accounts: `0x${string}`[]

        accounts (allowed accounts)

      • contextAccounts: `0x${string}`[]

        context accounts

      • chainId: number

        chainId

      Returns Promise<void>