KVStoreClient
@human-protocol/sdk / Modules / kvstore / KVStoreClient
Class: KVStoreClient
kvstore.KVStoreClient
Introduction
This client enables to perform actions on KVStore contract and obtain information from both the contracts and subgraph.
Internally, the SDK will use one network or another according to the network ID of the runner
. To use this client, it is recommended to initialize it using the static build
method.
A Signer
or a Provider
should be passed depending on the use case of this module:
Signer: when the user wants to use this model in order to send transactions caling the contract functions.
Provider: when the user wants to use this model in order to get information from the contracts or subgraph.
Installation
npm
yarn
Code example
Signer
Using private key(backend)
Using Wagmi(frontend)
Provider
Hierarchy
↳
KVStoreClient
Table of contents
Constructors
Properties
Methods
Constructors
constructor
• new KVStoreClient(runner
, networkData
): KVStoreClient
KVStoreClient constructor
Parameters
runner
ContractRunner
The Runner object to interact with the Ethereum network
networkData
NetworkData
-
Returns
Overrides
Defined in
Properties
contract
• Private
contract: KVStore
Defined in
networkData
• networkData: NetworkData
Inherited from
Defined in
runner
• Protected
runner: ContractRunner
Inherited from
Defined in
Methods
get
▸ get(address
, key
): Promise
<string
>
Gets the value of a key-value pair in the contract.
Parameters
address
string
Address from which to get the key value.
key
string
Key to obtain the value.
Returns
Promise
<string
>
Value of the key.
Code example
Need to have available stake.
Defined in
getFileUrlAndVerifyHash
▸ getFileUrlAndVerifyHash(address
, urlKey?
): Promise
<string
>
Gets the URL value of the given entity, and verify its hash.
Parameters
address
string
undefined
Address from which to get the URL value.
urlKey
string
'url'
Configurable URL key. url
by default.
Returns
Promise
<string
>
URL value for the given address if exists, and the content is valid
Code example
Defined in
getPublicKey
▸ getPublicKey(address
): Promise
<string
>
Gets the public key of the given entity, and verify its hash.
Parameters
address
string
Address from which to get the public key.
Returns
Promise
<string
>
Public key for the given address if exists, and the content is valid
Code example
Defined in
set
▸ set(key
, value
, txOptions?
): Promise
<void
>
This function sets a key-value pair associated with the address that submits the transaction.
Parameters
key
string
Key of the key-value pair
value
string
Value of the key-value pair
txOptions?
Overrides
Additional transaction parameters (optional, defaults to an empty object).
Returns
Promise
<void
>
Returns void if successful. Throws error if any.
Code example
Need to have available stake.
Defined in
setBulk
▸ setBulk(keys
, values
, txOptions?
): Promise
<void
>
This function sets key-value pairs in bulk associated with the address that submits the transaction.
Parameters
keys
string
[]
Array of keys (keys and value must have the same order)
values
string
[]
Array of values
txOptions?
Overrides
Additional transaction parameters (optional, defaults to an empty object).
Returns
Promise
<void
>
Returns void if successful. Throws error if any.
Code example
Need to have available stake.
Defined in
setFileUrlAndHash
▸ setFileUrlAndHash(url
, urlKey?
, txOptions?
): Promise
<void
>
Sets a URL value for the address that submits the transaction, and its hash.
Parameters
url
string
undefined
URL to set
urlKey
string
'url'
Configurable URL key. url
by default.
txOptions?
Overrides
{}
Additional transaction parameters (optional, defaults to an empty object).
Returns
Promise
<void
>
Returns void if successful. Throws error if any.
Code example
Defined in
build
▸ build(runner
): Promise
<KVStoreClient
>
Creates an instance of KVStoreClient from a runner.
Parameters
runner
ContractRunner
The Runner object to interact with the Ethereum network
Returns
Promise
<KVStoreClient
>
An instance of KVStoreClient
Throws
Thrown if the provider does not exist for the provided Signer
Throws
Thrown if the network's chainId is not supported
Defined in
Last updated