Skip to content

Mosaic Levy Transaction

Chun Lam edited this page Feb 21, 2024 · 2 revisions
import { Deadline, NetworkType, MosaicModifyLevyTransaction, MosaicRemoveLevyTransaction, 
    Account, MosaicId, MosaicLevy, TransactionHttp 
} from "tsjs-xpx-chain-sdk";

const API_URL = 'http://localhost:3000';
const networkType = NetworkType.TEST_NET;
const generationHash = "56D112C98F7A7E34D1AEDC4BD01BC06CA2276DD546A93E36690B785E82439CA9"; // from block 1

const transactionHttp = new TransactionHttp(API_URL);

const signerAccount = Account.createFromPrivateKey(
    '<your_privateKey>',
    networkType, 1);

const mosaicId = new MosaicId("13bfc518e40549d7");

// modify mosaic levy
let mosaicModifyLevyTransaction = MosaicModifyLevyTransaction.create(
    Deadline.create(),
    mosaicId,
    MosaicLevy.createWithAbsoluteFee(signerAccount.address, mosaicId, 100),
    networkType
)

let signedMosaicModifyLevyTransaction = signerAccount.preV2Sign(mosaicModifyLevyTransaction, generationHash);

console.log("MosaicModifyLevyTx Hash: ", signedMosaicModifyLevyTransaction.hash);

transactionHttp.announce(signedMosaicModifyLevyTransaction);


// remove mosaic levy
let mosaicRemoveLevyTransaction = MosaicRemoveLevyTransaction.create(
    Deadline.create(),
    mosaicId,
    networkType
)

let signedMosaicRemoveLevyTransaction = signerAccount.preV2Sign(mosaicRemoveLevyTransaction, generationHash);

console.log("MosaicRemoveLevyTx Hash: ", signedMosaicRemoveLevyTransaction.hash);

transactionHttp.announce(signedMosaicRemoveLevyTransaction);
Clone this wiki locally