Helper function to convert Uint8Array to JSON.
function arrayToJson(array: Uint8Array) {
const jsonString = Buffer.from(array).toString("utf8");
const parsedData = JSON.parse(jsonString);
return parsedData;
}
A client to interact with the Injective chain.
export default class InjectiveClient
extends BaseChainClient
implements ChainClient {
declare public signingClient?: SigningStargateClient;
declare public queryClient?: CosmWasmClient;
public gasPrice?: GasPrice;
private directSigner?: OfflineDirectSigner;
protected preMessage(signed = true) {
super.preMessage(signed);
if (signed && !this.directSigner) {
throw new Error("No signer assigned");
}
}
Connects to the given chain. Assigns all clients used within the chain client, if a signer is provided a signing client is assigned.
The endpoint of the chain to connect to.
Optional signer used to sign the messages.
Optional field to set the client options.
Disconnects the from the connected client.
Signs a given message with the connected signer.
Fee to pay for the transaction. Defaults to auto if not specified.
Optional memo to attach. Defaults to an empty string.
Broadcasts a given transaction to the connected client.
The transaction to broadcast.
signAndBroadcast
Signs a given message before broadcasting it to the connected chain.
The messages to sign and broadcast.
The fee to pay for signing and broadcasting the message. Defaults to auto if not specified.
An optional memo to attach to the transaction.
Simulates all given messages and returns a gas fee estimate.
The messages to simulate.
Fee amount to pay. Defaults to auto if not specified.
Optional memo to attach to the transaction. Defaults to empty.
Simulates the given message and returns a gas fee estimate.
Fee payed to run the simulate. Defaults to auto if not specified.
Optional memo to attach to the transaction.
Executes a message on the specified contract.
The contract address to execute on.
Fee amount to pay for the execution. Defaults to auto if not specified.
Optional memo to attach to the transaction.
Optional funds to attach along with the message.
simulateExecute
Simulates an execute message and returns a gas fee estimate.
The contract address you are executing on.
The execute message to simulate.
The funds attached along with the message.
Fee amount to pay. Defaults to auto if not specified.
Optional memo to add to the transaction.
Uploads given contract code (Uint8Array) to the chain.
The wasm binary code to upload to the connected client.
Fee to pay for uploading. Defaults to auto if not specified.
Optional memo to add to the transaction. Defaults to an empty string if not specified.
Simulate an upload message and returns a gas fee estimate.
The wasm binary code to simulate uploading.
Fee to pay for uploading. Defaults to auto if not specified.
Optional memo to add to the transaction.
Instantiates a contract with the given code id using the provided instantiate message.
The code Id of the contract to instantiate.
The instantiation message.
A label for the instantiation. Can be any string such as " instantiating a CW721" or "my_label" ect...
Fee to pay for instantiation. Defaults to auto if not specified.
The options of an .instantiate() call. All properties are optional.
simulateInstantiate
Simulates an instantiation message and returns a gas fee estimate.
The code Id of the contract to instantiate.
The instantiation message.
A label for the instantiation. Can be any string such as " instantiating a CW721" or "my_label" ect...
Fee to pay for instantiation. Defaults to auto if not specified.
The options of an .instantiate() call. All properties are optional.
Migrates a contract to a given code id.
The address of the contract that you want to migrate.
The code Id to migrate to.
Fee to pay for the migration. Defaults to auto if not specified.
Optional memo to attach to the transaction.
simulateMigrate
Simulates a migrate message for a given contract address, code id and migrate message and returns a gas estimate.
The contract address that you want to migrate.
The code Id to migrate to.
Fee to pay to send the funds. Defaults to auto if not specified.
Optional memo to attach to the transaction.
Sends tokens from the signing address to the provided receiving address.
You can only send one amount at a time.
The address to receive the tokens.
Fee to pay to send the funds. Defaults to auto if not specified.
Optional memo to attach to the transaction.