🏦
L1X Wallet SDK
  • L1X Typescript SDK
  • Wallet Methods
    • How to import wallet using mnemonic?
    • How to import wallet using private key?
  • Core Methods
    • How to get Account State?
    • How to get block information by block number?
    • How to get chain state?
    • How to get events? (WIP)
    • How to get current nonce?
    • How to get account transactions?
    • How to get the transaction recipt?
    • How to get account stakes? (WIP)
    • How to broadcast transactions?
  • Native Token Methods
    • How to transfer native token?
    • How to get native token balance?
    • How to get signed payload for transfer?
  • VM Methods
    • How to deploy VM Contract
    • How to initialise a VM contracts?
    • How to make an VM contract state changing call?
    • How to make an VM readonly calls?
  • EVM Methods
    • How to initialise a smart contract?
    • How to make an EVM contract state changing call?
    • How to make an EVM read only calls?
  • Fungible Token Methods
    • How to create fungible tokens?
    • How to get fungible token attributes?
    • How to mint fungible token?
    • How to transfer fungible tokens?
    • How to get a fungible token balance?
    • How to give approval to fungible token?
    • How to get an allowence of fungible tokens?
    • How to use transfer from of fungible token?
  • Non-fungible Token Methods
    • How to Create a Non-Fungible Token?
    • How to get the attribute of a Non-Fungible token?
    • How to mint a Non-Fungible Token?
    • How to get the balance of a Non-Fungible token?
    • How to get the owner of a Non-Fungible token by its ID?
    • How to get owned NFT token
    • How to get token uri?
    • How to approve a spender to manage a specific Non-Fungible token?
    • How to set or revoke approval for a specific operator to manage all tokens of the sender?
    • How to Transfer a Non-Fungible token from one address to another?
    • How to burn an existing Non-Fungible Token?
Powered by GitBook
On this page
Edit on GitHub
  1. VM Methods

How to deploy VM Contract

  • deploy

import { L1XProvider, VMDeployArg } from "@l1x/l1x-wallet-sdk";
import fs from "fs/promises";

let l1xProvider = new L1XProvider({
    clusterType: "mainnet",
    endpoint: "https://v2-mainnet-rpc.l1x.foundation",
});

(async () => {
    let params: VMDeployArg = {
        attrib: {
            base_contract_bytes: await fs.readFile("./l1x_nft.o"),
        },
        private_key: "YOUR_PRIVATE_KEY"
    };

    l1xProvider.vm
        .deploy(params)
        .then((response) => console.log(response))
        .catch((err) => console.error(err));
})()

Parameters:

The VM contract deploy object

attrib: {
        base_contract_bytes: Buffer,
    }
    private_key: string,
    fee_limit?: number,
    nonce?: number
}

Returns:

A promise that resolves when the transaction is submitted.

{
     "contract_address": "cf0289e86714d97979d726eeb2fa3a23b9c007c1",
     "hash": "dc224ba854d5fbd3371f6d509b9a0b5451fff78a70ad3a209b5c273f8da0abfb"
}
PreviousVM MethodsNextHow to initialise a VM contracts?

Last updated 1 year ago