Requires TreeEvent containing ExercisedTreeEvent with choice === 'AmuletRules_Transfer'. Validates exerciseResult.summary shape via internal guards, aggregates holdingFees, outputFees, senderChangeFee using decimal-string addition, derives balanceChanges, computes feeValidation.isBalanced by comparing totalBalanceChange vs totalFees within 1e-8 tolerance.
Throws ValidationError when shape mismatched.
Setup
import { parseFeesFromUpdate } from '@fairmint/canton-node-sdk';
Minimal example
const analysis = parseFeesFromUpdate(treeEvent);
console.log(analysis.feeBreakdown.holdingFees);
Parameters
treeEvent— Single exercisedTreeEventextracted fromeventTree.
Returns
FeeAnalysis.
Errors
Throws ValidationError when choice differs or summary incomplete.