Publicapi

The WalletClient has to be used in the wallet. It handles all the logic related to connecting to beacon-compatible dapps and handling/responding to requests.

Hierarchy

Constructors

Properties

_beaconId: ExposedPromise<string, unknown>

The beaconId is a public key that is used to identify one specific application (dapp or wallet). This is used inside a message to specify the sender, for example.

_isConnected: ExposedPromise<boolean, unknown> = ...

Returns whether or not the transport is connected

_keyPair: ExposedPromise<KeyPair, unknown>

The local keypair that is used for the communication encryption

_transport: ExposedPromise<Transport<any, any, any>, unknown>
accountManager: AccountManager
appMetadataManager: AppMetadataManager
appUrl?: string

The URL of the dApp.

handleResponse: ((_event, connectionInfo) => void)

Type declaration

iconUrl?: string

The URL of the dApp Icon. This can be used to display the icon of the dApp on in the wallet

matrixNodes: NodeDistributions
name: string

The name of the client

This array stores pending requests, meaning requests we received and have not yet handled / sent a response.

permissionManager: PermissionManager
rateLimit: number

How many requests can be sent after another

rateLimitWindowInSeconds: number

The time window in seconds in which the "rateLimit" is checked

requestCounter: number[]

Stores the times when requests have been made to determine if the rate limit has been reached

storage: Storage

Accessors

  • get beaconId(): Promise<string>
  • Returns Promise<string>

  • get connectionStatus(): TransportStatus
  • Returns the connection status of the Client

    Returns TransportStatus

  • get keyPair(): Promise<KeyPair>
  • Returns Promise<KeyPair>

  • get ready(): Promise<void>
  • Returns whether or not the transaport is ready

    Returns Promise<void>

  • get transport(): Promise<Transport<any, any, any>>
  • Returns Promise<Transport<any, any, any>>

Methods

  • Parameters

    Returns Promise<void>

  • Add a new request (current timestamp) to the pending requests, remove old ones and check if we are above the limit

    Returns Promise<boolean>

  • Returns Promise<void>

  • This method initiates a connection to the P2P network and registers a callback that will be called whenever a message is received.

    Parameters

    • newMessageCallback: ((message, connectionContext) => void)

      The callback that will be invoked for every message the transport receives.

    Returns Promise<void>

  • This resets the SDK. After using this method, this instance is no longer usable. You will have to instanciate a new client.

    Returns Promise<void>

  • Return the account by ID

    Parameters

    • accountIdentifier: string

      The ID of an account

    Returns Promise<undefined | AccountInfo>

  • Return all locally known accounts

    Returns Promise<AccountInfo[]>

  • Return all known peers

    Returns Promise<PeerInfo[]>

  • Parameters

    • backendUrl: string
    • accountPublicKey: string
    • oracleUrl: string = NOTIFICATION_ORACLE_URL

    Returns Promise<{
        challenge: {
            id: string;
            timestamp: string;
        };
        payloadToSign: string;
    }>

  • Parameters

    • challenge: {
          id: string;
          timestamp: string;
      }
      • id: string
      • timestamp: string
    • signature: string
    • backendUrl: string
    • accountPublicKey: string
    • protocolIdentifier: string
    • deviceId: string
    • oracleUrl: string = NOTIFICATION_ORACLE_URL

    Returns Promise<PushToken>

  • Remove the account by ID

    Parameters

    • accountIdentifier: string

      The ID of an account

    Returns Promise<void>

  • Remove all locally stored accounts

    Returns Promise<void>

  • Parameters

    Returns Promise<void>

  • A "setter" for when the transport needs to be changed.

    Parameters

    • Optional transport: Transport<any, any, any>

    Returns Promise<void>

Generated using TypeDoc