@aeternity/aepp-sdk
Version:
SDK for the æternity blockchain
651 lines (560 loc) • 63.2 kB
JavaScript
import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
var _PROTOCOL_VERSIONS$RO, _PROTOCOL_VERSIONS$MI, _PROTOCOL_VERSIONS$FO, _PROTOCOL_VERSIONS$LI, _PROTOCOL_VERSIONS$IR, _PROTOCOL_VM_ABI, _OBJECT_ID_TX_TYPE, _VALIDATION_MESSAGE, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37, _context38, _context39, _context40, _context41, _context42, _context43, _context44, _context45, _context46, _context47, _context48, _context49, _context50, _context51, _context52, _context53, _context54, _context55, _context56, _context57, _context58, _TX_SERIALIZATION_SCH, _TX_DESERIALIZATION_S;
import _reduceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/reduce";
import _Object$entries from "@babel/runtime-corejs3/core-js-stable/object/entries";
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringify";
/**
* Transaction Schema for TxBuilder
* @module @aeternity/aepp-sdk/es/tx/builder/schema
* @export TxSchema
* @example import { SCHEMA } from '@aeternity/aepp-sdk'
*/
// # RLP version number
// # https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization
import BigNumber from 'bignumber.js';
export var VSN = 1;
export var VSN_2 = 2; // # TRANSACTION DEFAULT TTL
export var TX_TTL = 0; // # ORACLE
export var QUERY_FEE = 30000;
export var ORACLE_TTL = {
type: 'delta',
value: 500
};
export var QUERY_TTL = {
type: 'delta',
value: 10
};
export var RESPONSE_TTL = {
type: 'delta',
value: 10
}; // # CONTRACT
export var DEPOSIT = 0;
export var AMOUNT = 0;
export var GAS = 1600000 - 21000;
export var MIN_GAS_PRICE = 1e9;
export var MAX_AUTH_FUN_GAS = 50000;
export var DRY_RUN_ACCOUNT = {
pub: 'ak_11111111111111111111111111111111273Yts',
amount: '100000000000000000000000000000000000'
}; // # AENS
export var NAME_TTL = 50000; // # max number of block into the future that the name is going to be available
// # https://github.com/aeternity/protocol/blob/epoch-v0.22.0/AENS.md#update
// # https://github.com/aeternity/protocol/blob/44a93d3aab957ca820183c3520b9daf6b0fedff4/AENS.md#aens-entry
export var NAME_MAX_TTL = 36000;
export var NAME_MAX_CLIENT_TTL = 84600;
export var CLIENT_TTL = NAME_MAX_CLIENT_TTL;
export var NAME_FEE = 0; // # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L67
export var NAME_FEE_MULTIPLIER = 100000000000000;
export var NAME_FEE_BID_INCREMENT = 0.05; // # the increment is in percentage
// # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L272
export var NAME_BID_TIMEOUT_BLOCKS = 480; // # ~1 day
export var NAME_BID_MAX_LENGTH = 12; // # this is the max length for a domain to be part of a bid
export var NAME_ID_KEY = {
ak: 'account_pubkey',
ok: 'oracle_pubkey',
ct: 'contract_pubkey',
ch: 'channel'
}; // # ref: https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L290
// # bid ranges:
export var NAME_BID_RANGES = {
31: BigNumber(3).times(NAME_FEE_MULTIPLIER),
30: BigNumber(5).times(NAME_FEE_MULTIPLIER),
29: BigNumber(8).times(NAME_FEE_MULTIPLIER),
28: BigNumber(13).times(NAME_FEE_MULTIPLIER),
27: BigNumber(21).times(NAME_FEE_MULTIPLIER),
26: BigNumber(34).times(NAME_FEE_MULTIPLIER),
25: BigNumber(55).times(NAME_FEE_MULTIPLIER),
24: BigNumber(89).times(NAME_FEE_MULTIPLIER),
23: BigNumber(144).times(NAME_FEE_MULTIPLIER),
22: BigNumber(233).times(NAME_FEE_MULTIPLIER),
21: BigNumber(377).times(NAME_FEE_MULTIPLIER),
20: BigNumber(610).times(NAME_FEE_MULTIPLIER),
19: BigNumber(987).times(NAME_FEE_MULTIPLIER),
18: BigNumber(1597).times(NAME_FEE_MULTIPLIER),
17: BigNumber(2584).times(NAME_FEE_MULTIPLIER),
16: BigNumber(4181).times(NAME_FEE_MULTIPLIER),
15: BigNumber(6765).times(NAME_FEE_MULTIPLIER),
14: BigNumber(10946).times(NAME_FEE_MULTIPLIER),
13: BigNumber(17711).times(NAME_FEE_MULTIPLIER),
12: BigNumber(28657).times(NAME_FEE_MULTIPLIER),
11: BigNumber(46368).times(NAME_FEE_MULTIPLIER),
10: BigNumber(75025).times(NAME_FEE_MULTIPLIER),
9: BigNumber(121393).times(NAME_FEE_MULTIPLIER),
8: BigNumber(196418).times(NAME_FEE_MULTIPLIER),
7: BigNumber(317811).times(NAME_FEE_MULTIPLIER),
6: BigNumber(514229).times(NAME_FEE_MULTIPLIER),
5: BigNumber(832040).times(NAME_FEE_MULTIPLIER),
4: BigNumber(1346269).times(NAME_FEE_MULTIPLIER),
3: BigNumber(2178309).times(NAME_FEE_MULTIPLIER),
2: BigNumber(3524578).times(NAME_FEE_MULTIPLIER),
1: BigNumber(5702887).times(NAME_FEE_MULTIPLIER)
}; // # ref: https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L273
// # name bid timeouts
export var NAME_BID_TIMEOUTS = {
13: BigNumber(0),
12: BigNumber(NAME_BID_TIMEOUT_BLOCKS),
// # 480 blocks
8: BigNumber(31).times(NAME_BID_TIMEOUT_BLOCKS),
// # 14880 blocks
4: BigNumber(62).times(NAME_BID_TIMEOUT_BLOCKS) // # 29760 blocks
}; // # Tag constant for ids (type uint8)
// # see https://github.com/aeternity/protocol/blob/master/serializations.md#the-id-type
// # <<Tag:1/unsigned-integer-unit:8, Hash:32/binary-unit:8>>
var ID_TAG_ACCOUNT = 1;
var ID_TAG_NAME = 2;
var ID_TAG_COMMITMENT = 3;
var ID_TAG_ORACLE = 4;
var ID_TAG_CONTRACT = 5;
var ID_TAG_CHANNEL = 6; // # OBJECT tags
// # see https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization
var OBJECT_TAG_ACCOUNT = 10;
export var OBJECT_TAG_SIGNED_TRANSACTION = 11;
var OBJECT_TAG_SPEND_TRANSACTION = 12;
var OBJECT_TAG_ORACLE_REGISTER_TRANSACTION = 22;
var OBJECT_TAG_ORACLE_QUERY_TRANSACTION = 23;
var OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION = 24;
var OBJECT_TAG_ORACLE_EXTEND_TRANSACTION = 25;
var OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION = 32;
var OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION = 33;
var OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION = 34;
var OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION = 35;
var OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION = 36;
var OBJECT_TAG_CONTRACT = 40;
var OBJECT_TAG_CONTRACT_CALL = 41;
var OBJECT_TAG_CONTRACT_CREATE_TRANSACTION = 42;
var OBJECT_TAG_CONTRACT_CALL_TRANSACTION = 43;
var OBJECT_TAG_CHANNEL_CREATE_TX = 50;
var OBJECT_TAG_CHANNEL_DEPOSIT_TX = 51;
var OBJECT_TAG_CHANNEL_WITHRAW_TX = 52;
var OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX = 53;
var OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX = 54;
var OBJECT_TAG_CHANNEL_SLASH_TX = 55;
var OBJECT_TAG_CHANNEL_SETTLE_TX = 56;
var OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX = 521;
var OBJECT_TAG_CHANNEL_OFFCHAIN_TX = 57;
var OBJECT_TAG_CHANNEL = 58;
var OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX = 59;
var OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = 570;
var OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = 571;
var OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = 572;
var OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = 573;
var OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = 574;
var OBJECT_TAG_CHANNEL_RECONNECT_TX = 575;
var OBJECT_TAG_PROOF_OF_INCLUSION = 60;
var OBJECT_TAG_STATE_TREES = 62;
var OBJECT_TAG_MERKLE_PATRICIA_TREE = 63;
var OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE = 64;
var OBJECT_TAG_CONTRACTS_TREE = 621;
var OBJECT_TAG_CONTRACT_CALLS_TREE = 622;
var OBJECT_TAG_CHANNELS_TREE = 623;
var OBJECT_TAG_NAMESERVICE_TREE = 624;
var OBJECT_TAG_ORACLES_TREE = 625;
var OBJECT_TAG_ACCOUNTS_TREE = 626;
var OBJECT_TAG_GA_ATTACH = 80;
var OBJECT_TAG_GA_META = 81;
var OBJECT_TAG_SOPHIA_BYTE_CODE = 70;
var TX_FIELD = function TX_FIELD(name, type, prefix) {
return [name, type, prefix];
};
var TX_SCHEMA_FIELD = function TX_SCHEMA_FIELD(schema, objectId) {
return [schema, objectId];
};
var revertObject = function revertObject(obj) {
var _context;
return _reduceInstanceProperty(_context = _Object$entries(obj)).call(_context, function (acc, _ref) {
var _ref2 = _slicedToArray(_ref, 2),
key = _ref2[0],
v = _ref2[1];
return (acc[v] = key) && acc;
}, {});
};
/**
* @constant
* @description Object with transaction types
* @alias module:@aeternity/aepp-sdk/es/tx/builder/schema
* @property {String} signed
* @property {String} spend
* @property {String} nameClaim
* @property {String} namePreClaim
* @property {String} nameUpdate
* @property {String} nameRevoke
* @property {String} nameTransfer
* @property {String} contractCreate
* @property {String} contractCall
* @property {String} oracleRegister
* @property {String} oracleExtend
* @property {String} oracleQuery
* @property {String} oracleResponse
*/
export var TX_TYPE = {
account: 'account',
signed: 'signedTx',
spend: 'spendTx',
// AENS
nameClaim: 'nameClaimTx',
namePreClaim: 'namePreClaimTx',
nameUpdate: 'nameUpdateTx',
nameRevoke: 'nameRevokeTx',
nameTransfer: 'nameTransfer',
// CONTRACT
contract: 'contract',
contractCreate: 'contractCreateTx',
contractCall: 'contractCallTx',
contractCallResult: 'contractCallResult',
// ORACLE
oracleRegister: 'oracleRegister',
oracleExtend: 'oracleExtend',
oracleQuery: 'oracleQuery',
oracleResponse: 'oracleResponse',
// STATE CHANNEL
channelCreate: 'channelCreate',
channelCloseMutual: 'channelCloseMutual',
channelCloseSolo: 'channelCloseSolo',
channelSlash: 'channelSlash',
channelDeposit: 'channelDeposit',
channelWithdraw: 'channelWithdraw',
channelSettle: 'channelSettle',
channelOffChain: 'channelOffChain',
channelForceProgress: 'channelForceProgress',
channel: 'channel',
channelSnapshotSolo: 'channelSnapshotSolo',
channelOffChainUpdateTransfer: 'channelOffChainUpdateTransfer',
channelOffChainUpdateDeposit: 'channelOffChainUpdateDeposit',
channelOffChainUpdateWithdrawal: 'channelOffChainUpdateWithdrawal',
channelOffChainCreateContract: 'channelOffChainCreateContract',
channelOffChainCallContract: 'channelOffChainCallContract',
channelReconnect: 'channelReconnect',
proofOfInclusion: 'proofOfInclusion',
stateTrees: 'stateTrees',
merklePatriciaTree: 'merklePatriciaTree',
merklePatriciaTreeValue: 'merklePatriciaTreeValue',
contractsTree: 'contractsTree',
contractCallsTree: 'contractCallsTree',
channelsTree: 'channelsTree',
nameserviceTree: 'nameserviceTree',
oraclesTree: 'oraclesTree',
accountsTree: 'accountsTree',
// GA ACCOUNTS
gaAttach: 'gaAttach',
gaMeta: 'gaMeta',
sophiaByteCode: 'sophiaByteCode'
}; // # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain
export var VM_VERSIONS = {
NO_VM: 0,
SOPHIA: 1,
SOLIDITY: 2,
SOPHIA_IMPROVEMENTS_MINERVA: 3,
SOPHIA_IMPROVEMENTS_FORTUNA: 4,
FATE: 5,
SOPHIA_IMPROVEMENTS_LIMA: 6,
FATE_2: 7
}; // # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain
export var ABI_VERSIONS = {
NO_ABI: 0,
SOPHIA: 1,
SOLIDITY: 2,
FATE: 3
};
export var PROTOCOL_VERSIONS = {
ROMA: 1,
MINERVA: 2,
FORTUNA: 3,
LIMA: 4,
IRIS: 5
}; // First abi/vm by default
export var PROTOCOL_VM_ABI = (_PROTOCOL_VM_ABI = {}, _defineProperty(_PROTOCOL_VM_ABI, PROTOCOL_VERSIONS.ROMA, (_PROTOCOL_VERSIONS$RO = {}, _defineProperty(_PROTOCOL_VERSIONS$RO, TX_TYPE.contractCreate, {
vmVersion: [VM_VERSIONS.SOPHIA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$RO, TX_TYPE.contractCall, {
vmVersion: [VM_VERSIONS.SOPHIA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$RO, TX_TYPE.oracleRegister, {
vmVersion: [VM_VERSIONS.SOPHIA],
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
}), _PROTOCOL_VERSIONS$RO)), _defineProperty(_PROTOCOL_VM_ABI, PROTOCOL_VERSIONS.MINERVA, (_PROTOCOL_VERSIONS$MI = {}, _defineProperty(_PROTOCOL_VERSIONS$MI, TX_TYPE.contractCreate, {
vmVersion: [VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$MI, TX_TYPE.contractCall, {
vmVersion: [VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA, VM_VERSIONS.SOPHIA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$MI, TX_TYPE.oracleRegister, {
vmVersion: [VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
}), _PROTOCOL_VERSIONS$MI)), _defineProperty(_PROTOCOL_VM_ABI, PROTOCOL_VERSIONS.FORTUNA, (_PROTOCOL_VERSIONS$FO = {}, _defineProperty(_PROTOCOL_VERSIONS$FO, TX_TYPE.contractCreate, {
vmVersion: [VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$FO, TX_TYPE.contractCall, {
vmVersion: [VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA, VM_VERSIONS.SOPHIA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
abiVersion: [ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$FO, TX_TYPE.oracleRegister, {
vmVersion: [],
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
}), _PROTOCOL_VERSIONS$FO)), _defineProperty(_PROTOCOL_VM_ABI, PROTOCOL_VERSIONS.LIMA, (_PROTOCOL_VERSIONS$LI = {}, _defineProperty(_PROTOCOL_VERSIONS$LI, TX_TYPE.contractCreate, {
vmVersion: [VM_VERSIONS.FATE, VM_VERSIONS.SOPHIA_IMPROVEMENTS_LIMA],
abiVersion: [ABI_VERSIONS.FATE, ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$LI, TX_TYPE.contractCall, {
vmVersion: [VM_VERSIONS.FATE, VM_VERSIONS.SOPHIA_IMPROVEMENTS_LIMA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA, VM_VERSIONS.SOPHIA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
abiVersion: [ABI_VERSIONS.FATE, ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$LI, TX_TYPE.oracleRegister, {
vmVersion: [],
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
}), _PROTOCOL_VERSIONS$LI)), _defineProperty(_PROTOCOL_VM_ABI, PROTOCOL_VERSIONS.IRIS, (_PROTOCOL_VERSIONS$IR = {}, _defineProperty(_PROTOCOL_VERSIONS$IR, TX_TYPE.contractCreate, {
vmVersion: [VM_VERSIONS.FATE_2],
abiVersion: [ABI_VERSIONS.FATE]
}), _defineProperty(_PROTOCOL_VERSIONS$IR, TX_TYPE.contractCall, {
vmVersion: [VM_VERSIONS.FATE_2, VM_VERSIONS.FATE, VM_VERSIONS.SOPHIA_IMPROVEMENTS_LIMA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA, VM_VERSIONS.SOPHIA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
abiVersion: [ABI_VERSIONS.FATE, ABI_VERSIONS.SOPHIA]
}), _defineProperty(_PROTOCOL_VERSIONS$IR, TX_TYPE.oracleRegister, {
vmVersion: [],
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
}), _PROTOCOL_VERSIONS$IR)), _PROTOCOL_VM_ABI);
export var OBJECT_ID_TX_TYPE = (_OBJECT_ID_TX_TYPE = {}, _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ACCOUNT, TX_TYPE.account), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_SIGNED_TRANSACTION, TX_TYPE.signed), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_SPEND_TRANSACTION, TX_TYPE.spend), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION, TX_TYPE.nameClaim), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION, TX_TYPE.namePreClaim), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION, TX_TYPE.nameUpdate), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION, TX_TYPE.nameRevoke), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION, TX_TYPE.nameTransfer), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACT, TX_TYPE.contract), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION, TX_TYPE.contractCreate), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACT_CALL_TRANSACTION, TX_TYPE.contractCall), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACT_CALL, TX_TYPE.contractCallResult), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION, TX_TYPE.oracleRegister), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION, TX_TYPE.oracleExtend), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ORACLE_QUERY_TRANSACTION, TX_TYPE.oracleQuery), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION, TX_TYPE.oracleResponse), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_CREATE_TX, TX_TYPE.channelCreate), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX, TX_TYPE.channelCloseMutual), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX, TX_TYPE.channelCloseSolo), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_SLASH_TX, TX_TYPE.channelSlash), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX, TX_TYPE.channelForceProgress), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_DEPOSIT_TX, TX_TYPE.channelDeposit), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_WITHRAW_TX, TX_TYPE.channelWithdraw), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_SETTLE_TX, TX_TYPE.channelSettle), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_TX, TX_TYPE.channelOffChain), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL, TX_TYPE.channel), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX, TX_TYPE.channelSnapshotSolo), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, TX_TYPE.channelOffChainUpdateTransfer), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, TX_TYPE.channelOffChainUpdateDeposit), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, TX_TYPE.channelOffChainUpdateWithdrawal), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, TX_TYPE.channelOffChainCreateContract), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, TX_TYPE.channelOffChainCallContract), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNEL_RECONNECT_TX, TX_TYPE.channelReconnect), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_PROOF_OF_INCLUSION, TX_TYPE.proofOfInclusion), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_STATE_TREES, TX_TYPE.stateTrees), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_MERKLE_PATRICIA_TREE, TX_TYPE.merklePatriciaTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE, TX_TYPE.merklePatriciaTreeValue), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACTS_TREE, TX_TYPE.contractsTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CONTRACT_CALLS_TREE, TX_TYPE.contractCallsTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_CHANNELS_TREE, TX_TYPE.channelsTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_NAMESERVICE_TREE, TX_TYPE.nameserviceTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ORACLES_TREE, TX_TYPE.oraclesTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_ACCOUNTS_TREE, TX_TYPE.accountsTree), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_GA_ATTACH, TX_TYPE.gaAttach), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_GA_META, TX_TYPE.gaMeta), _defineProperty(_OBJECT_ID_TX_TYPE, OBJECT_TAG_SOPHIA_BYTE_CODE, TX_TYPE.sophiaByteCode), _OBJECT_ID_TX_TYPE);
export var FIELD_TYPES = {
"int": 'int',
amount: 'amount',
id: 'id',
ids: 'ids',
string: 'string',
binary: 'binary',
rlpBinary: 'rlpBinary',
rlpBinaries: 'rlpBinaries',
rawBinary: 'rawBinary',
bool: 'bool',
hex: 'hex',
signatures: 'signatures',
pointers: 'pointers',
offChainUpdates: 'offChainUpdates',
callStack: 'callStack',
proofOfInclusion: 'proofOfInclusion',
mptrees: 'mptrees',
callReturnType: 'callReturnType',
ctVersion: 'ctVersion',
sophiaCodeTypeInfo: 'sophiaCodeTypeInfo',
payload: 'payload',
any: 'any',
stateTree: 'stateTree'
}; // FEE CALCULATION
export var BASE_GAS = 15000;
export var GAS_PER_BYTE = 20;
export var DEFAULT_FEE = 20000;
export var KEY_BLOCK_INTERVAL = 3; // MAP WITH FEE CALCULATION https://github.com/aeternity/protocol/blob/master/consensus/consensus.md#gas
export var TX_FEE_BASE_GAS = function TX_FEE_BASE_GAS(txType) {
switch (txType) {
// case TX_TYPE.gaMeta: // TODO investigate MetaTx calculation
case TX_TYPE.gaAttach:
case TX_TYPE.contractCreate:
return BigNumber(5 * BASE_GAS);
// Todo Implement meta tx fee calculation
case TX_TYPE.gaMeta:
case TX_TYPE.contractCall:
return BigNumber(12 * BASE_GAS);
default:
return BigNumber(BASE_GAS);
}
};
export var TX_FEE_OTHER_GAS = function TX_FEE_OTHER_GAS(txType) {
return function (_ref3) {
var txSize = _ref3.txSize,
relativeTtl = _ref3.relativeTtl;
switch (txType) {
case TX_TYPE.oracleRegister:
case TX_TYPE.oracleExtend:
case TX_TYPE.oracleQuery:
case TX_TYPE.oracleResponse:
return BigNumber(txSize).times(GAS_PER_BYTE).plus(Math.ceil(32000 * relativeTtl / Math.floor(60 * 24 * 365 / KEY_BLOCK_INTERVAL)));
default:
return BigNumber(txSize).times(GAS_PER_BYTE);
}
};
};
export var ID_TAG = {
account: ID_TAG_ACCOUNT,
name: ID_TAG_NAME,
commitment: ID_TAG_COMMITMENT,
oracle: ID_TAG_ORACLE,
contract: ID_TAG_CONTRACT,
channel: ID_TAG_CHANNEL
};
export var PREFIX_ID_TAG = {
ak: ID_TAG.account,
nm: ID_TAG.name,
cm: ID_TAG.commitment,
ok: ID_TAG.oracle,
ct: ID_TAG.contract,
ch: ID_TAG.channel
};
export var ID_TAG_PREFIX = revertObject(PREFIX_ID_TAG);
var VALIDATION_ERROR = function VALIDATION_ERROR(msg) {
return msg;
};
export var VALIDATION_MESSAGE = (_VALIDATION_MESSAGE = {}, _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES["int"], function (_ref4) {
var value = _ref4.value,
isMinusValue = _ref4.isMinusValue;
return isMinusValue ? VALIDATION_ERROR("".concat(value, " must be >= 0")) : VALIDATION_ERROR("".concat(value, " is not of type Number or BigNumber"));
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.amount, function (_ref5) {
var value = _ref5.value,
isMinusValue = _ref5.isMinusValue;
return isMinusValue ? VALIDATION_ERROR("".concat(value, " must be >= 0")) : VALIDATION_ERROR("".concat(value, " is not of type Number or BigNumber"));
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.id, function (_ref6) {
var _context2;
var value = _ref6.value,
prefix = _ref6.prefix;
return VALIDATION_ERROR(_concatInstanceProperty(_context2 = "'".concat(value, "' prefix doesn't match expected prefix '")).call(_context2, prefix, "' or ID_TAG for prefix not found"));
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.binary, function (_ref7) {
var _context3;
var prefix = _ref7.prefix,
value = _ref7.value;
return VALIDATION_ERROR(_concatInstanceProperty(_context3 = "'".concat(value, "' prefix doesn't match expected prefix '")).call(_context3, prefix, "'"));
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.string, function (_ref8) {
var value = _ref8.value;
return VALIDATION_ERROR('Not a string');
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.pointers, function (_ref9) {
var value = _ref9.value;
return VALIDATION_ERROR('Value must be of type Array and contains only object\'s like \'{key: "account_pubkey", id: "ak_lkamsflkalsdalksdlasdlasdlamd"}\'');
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.ctVersion, function (_ref10) {
var value = _ref10.value;
return VALIDATION_ERROR('Value must be an object with "vmVersion" and "abiVersion" fields');
}), _VALIDATION_MESSAGE);
var BASE_TX = [TX_FIELD('tag', FIELD_TYPES["int"]), TX_FIELD('VSN', FIELD_TYPES["int"])];
var ACCOUNT_TX = _concatInstanceProperty(_context4 = []).call(_context4, BASE_TX, [TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('balance', FIELD_TYPES["int"])]);
export var CONTRACT_BYTE_CODE_LIMA = _concatInstanceProperty(_context5 = []).call(_context5, BASE_TX, [TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary), TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo), TX_FIELD('byteCode', FIELD_TYPES.rawBinary), TX_FIELD('compilerVersion', FIELD_TYPES.string), TX_FIELD('payable', FIELD_TYPES.bool)]);
export var CONTRACT_BYTE_CODE_MINERVA = _concatInstanceProperty(_context6 = []).call(_context6, BASE_TX, [TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary), TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo), TX_FIELD('byteCode', FIELD_TYPES.rawBinary), TX_FIELD('compilerVersion', FIELD_TYPES.string)]);
export var CONTRACT_BYTE_CODE_ROMA = _concatInstanceProperty(_context7 = []).call(_context7, BASE_TX, [TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary), TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo), TX_FIELD('byteCode', FIELD_TYPES.rawBinary)]);
var ACCOUNT_TX_2 = _concatInstanceProperty(_context8 = []).call(_context8, BASE_TX, [TX_FIELD('flags', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('balance', FIELD_TYPES["int"]), TX_FIELD('gaContract', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('gaAuthFun', FIELD_TYPES.binary, 'cb')]);
var SPEND_TX = _concatInstanceProperty(_context9 = []).call(_context9, BASE_TX, [TX_FIELD('senderId', FIELD_TYPES.id, 'ak'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('payload', FIELD_TYPES.payload)]);
var SIGNED_TX = _concatInstanceProperty(_context10 = []).call(_context10, BASE_TX, [TX_FIELD('signatures', FIELD_TYPES.signatures), TX_FIELD('encodedTx', FIELD_TYPES.rlpBinary)]);
var NAME_PRE_CLAIM_TX = _concatInstanceProperty(_context11 = []).call(_context11, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('commitmentId', FIELD_TYPES.id, 'cm'), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var NAME_CLAIM_TX = _concatInstanceProperty(_context12 = []).call(_context12, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('name', FIELD_TYPES.binary, 'nm'), TX_FIELD('nameSalt', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var NAME_CLAIM_TX_2 = _concatInstanceProperty(_context13 = []).call(_context13, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('name', FIELD_TYPES.binary, 'nm'), TX_FIELD('nameSalt', FIELD_TYPES["int"]), TX_FIELD('nameFee', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var NAME_UPDATE_TX = _concatInstanceProperty(_context14 = []).call(_context14, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('nameTtl', FIELD_TYPES["int"]), TX_FIELD('pointers', FIELD_TYPES.pointers), TX_FIELD('clientTtl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var NAME_TRANSFER_TX = _concatInstanceProperty(_context15 = []).call(_context15, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var NAME_REVOKE_TX = _concatInstanceProperty(_context16 = []).call(_context16, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var CONTRACT_TX = _concatInstanceProperty(_context17 = []).call(_context17, BASE_TX, [TX_FIELD('owner', FIELD_TYPES.id, 'ak'), TX_FIELD('ctVersion', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('log', FIELD_TYPES.binary, 'cb'), TX_FIELD('active', FIELD_TYPES.bool), TX_FIELD('referers', FIELD_TYPES.ids, 'ak'), TX_FIELD('deposit', FIELD_TYPES.amount)]);
var GA_ATTACH_TX = _concatInstanceProperty(_context18 = []).call(_context18, BASE_TX, [TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('authFun', FIELD_TYPES.rawBinary), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
var GA_META_TX = _concatInstanceProperty(_context19 = []).call(_context19, BASE_TX, [TX_FIELD('gaId', FIELD_TYPES.id, 'ak'), TX_FIELD('authData', FIELD_TYPES.binary, 'cb'), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('tx', FIELD_TYPES.rlpBinary)]);
var GA_META_TX_2 = _concatInstanceProperty(_context20 = []).call(_context20, BASE_TX, [TX_FIELD('gaId', FIELD_TYPES.id, 'ak'), TX_FIELD('authData', FIELD_TYPES.binary, 'cb'), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('tx', FIELD_TYPES.rlpBinary)]);
var CONTRACT_CREATE_TX = _concatInstanceProperty(_context21 = []).call(_context21, BASE_TX, [TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('deposit', FIELD_TYPES.amount), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
var CONTRACT_CALL_TX = _concatInstanceProperty(_context22 = []).call(_context22, BASE_TX, [TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('contractId', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
var CONTRACT_CALL_RESULT_TX = _concatInstanceProperty(_context23 = []).call(_context23, BASE_TX, [TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('callerNonce', FIELD_TYPES["int"]), TX_FIELD('height', FIELD_TYPES["int"]), TX_FIELD('contractId', FIELD_TYPES.id, 'ct'), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('gasUsed', FIELD_TYPES["int"]), TX_FIELD('returnValue', FIELD_TYPES.binary, 'cb'), TX_FIELD('returnType', FIELD_TYPES.callReturnType), // TODO: add serialization for <log> :: [ { <address> :: id, [ <topics> :: binary() ], <data> :: binary() } ]
TX_FIELD('log', FIELD_TYPES.rawBinary)]);
var ORACLE_REGISTER_TX = _concatInstanceProperty(_context24 = []).call(_context24, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('queryFormat', FIELD_TYPES.string), TX_FIELD('responseFormat', FIELD_TYPES.string), TX_FIELD('queryFee', FIELD_TYPES.amount), TX_FIELD('oracleTtlType', FIELD_TYPES["int"]), TX_FIELD('oracleTtlValue', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('abiVersion', FIELD_TYPES["int"])]);
var ORACLE_EXTEND_TX = _concatInstanceProperty(_context25 = []).call(_context25, BASE_TX, [TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('oracleTtlType', FIELD_TYPES["int"]), TX_FIELD('oracleTtlValue', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var ORACLE_QUERY_TX = _concatInstanceProperty(_context26 = []).call(_context26, BASE_TX, [TX_FIELD('senderId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']), TX_FIELD('query', FIELD_TYPES.string), TX_FIELD('queryFee', FIELD_TYPES.amount), TX_FIELD('queryTtlType', FIELD_TYPES["int"]), TX_FIELD('queryTtlValue', FIELD_TYPES["int"]), TX_FIELD('responseTtlType', FIELD_TYPES["int"]), TX_FIELD('responseTtlValue', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var ORACLE_RESPOND_TX = _concatInstanceProperty(_context27 = []).call(_context27, BASE_TX, [TX_FIELD('oracleId', FIELD_TYPES.id, 'ok'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('queryId', FIELD_TYPES.binary, 'oq'), TX_FIELD('response', FIELD_TYPES.string), TX_FIELD('responseTtlType', FIELD_TYPES["int"]), TX_FIELD('responseTtlValue', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
var CHANNEL_CREATE_TX = _concatInstanceProperty(_context28 = []).call(_context28, BASE_TX, [TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmount', FIELD_TYPES["int"]), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('responderAmount', FIELD_TYPES["int"]), TX_FIELD('channelReserve', FIELD_TYPES["int"]), TX_FIELD('lockPeriod', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('delegateIds', FIELD_TYPES.string), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_CREATE_TX_2 = _concatInstanceProperty(_context29 = []).call(_context29, BASE_TX, [TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmount', FIELD_TYPES["int"]), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('responderAmount', FIELD_TYPES["int"]), TX_FIELD('channelReserve', FIELD_TYPES["int"]), TX_FIELD('lockPeriod', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('initiatorDelegateIds', FIELD_TYPES.string), TX_FIELD('responderDelegateIds', FIELD_TYPES.string), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_DEPOSIT_TX = _concatInstanceProperty(_context30 = []).call(_context30, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_WITHDRAW_TX = _concatInstanceProperty(_context31 = []).call(_context31, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('toId', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_CLOSE_MUTUAL_TX = _concatInstanceProperty(_context32 = []).call(_context32, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmountFinal', FIELD_TYPES["int"]), TX_FIELD('responderAmountFinal', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_CLOSE_SOLO_TX = _concatInstanceProperty(_context33 = []).call(_context33, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('poi', FIELD_TYPES.binary, 'pi'), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_SLASH_TX = _concatInstanceProperty(_context34 = []).call(_context34, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('poi', FIELD_TYPES.binary, 'pi'), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_SETTLE_TX = _concatInstanceProperty(_context35 = []).call(_context35, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmountFinal', FIELD_TYPES["int"]), TX_FIELD('responderAmountFinal', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_FORCE_PROGRESS_TX = _concatInstanceProperty(_context36 = []).call(_context36, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('update', FIELD_TYPES.binary), TX_FIELD('stateHash', FIELD_TYPES.binary), TX_FIELD('offChainTrees', FIELD_TYPES.stateTree), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_OFFCHAIN_TX = _concatInstanceProperty(_context37 = []).call(_context37, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('updates', FIELD_TYPES.offChainUpdates), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st')]);
var CHANNEL_OFFCHAIN_TX_2 = _concatInstanceProperty(_context38 = []).call(_context38, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st')]);
var CHANNEL_TX = _concatInstanceProperty(_context39 = []).call(_context39, BASE_TX, [TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('channelAmount', FIELD_TYPES["int"]), TX_FIELD('initiatorAmount', FIELD_TYPES["int"]), TX_FIELD('responderAmount', FIELD_TYPES["int"]), TX_FIELD('channelReserve', FIELD_TYPES["int"]), TX_FIELD('delegateIds', FIELD_TYPES.ids), TX_FIELD('stateHash', FIELD_TYPES.hex), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('soloRound', FIELD_TYPES["int"]), TX_FIELD('lockPeriod', FIELD_TYPES["int"]), TX_FIELD('lockedUntil', FIELD_TYPES["int"])]);
var CHANNEL_TX_2 = _concatInstanceProperty(_context40 = []).call(_context40, BASE_TX, [TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('channelAmount', FIELD_TYPES["int"]), TX_FIELD('initiatorAmount', FIELD_TYPES["int"]), TX_FIELD('responderAmount', FIELD_TYPES["int"]), TX_FIELD('channelReserve', FIELD_TYPES["int"]), TX_FIELD('delegateIds', FIELD_TYPES.ids), TX_FIELD('stateHash', FIELD_TYPES.hex), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('soloRound', FIELD_TYPES["int"]), TX_FIELD('lockPeriod', FIELD_TYPES["int"]), TX_FIELD('lockedUntil', FIELD_TYPES["int"]), TX_FIELD('initiatorAuth', FIELD_TYPES.binary, 'cb'), TX_FIELD('responderAuth', FIELD_TYPES.binary, 'cb')]);
var CHANNEL_TX_3 = _concatInstanceProperty(_context41 = []).call(_context41, BASE_TX, [TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('channelAmount', FIELD_TYPES["int"]), TX_FIELD('initiatorAmount', FIELD_TYPES["int"]), TX_FIELD('responderAmount', FIELD_TYPES["int"]), TX_FIELD('channelReserve', FIELD_TYPES["int"]), TX_FIELD('initiatorDelegateIds', FIELD_TYPES.ids), TX_FIELD('responderDelegateIds', FIELD_TYPES.ids), TX_FIELD('stateHash', FIELD_TYPES.hex), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('soloRound', FIELD_TYPES["int"]), TX_FIELD('lockPeriod', FIELD_TYPES["int"]), TX_FIELD('lockedUntil', FIELD_TYPES["int"]), TX_FIELD('initiatorAuth', FIELD_TYPES.binary, 'cb'), TX_FIELD('responderAuth', FIELD_TYPES.binary, 'cb')]);
var CHANNEL_SNAPSHOT_SOLO_TX = _concatInstanceProperty(_context42 = []).call(_context42, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"])]);
var CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = _concatInstanceProperty(_context43 = []).call(_context43, BASE_TX, [TX_FIELD('owner', FIELD_TYPES.id, 'ak'), TX_FIELD('ctVersion', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('deposit', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
var CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = _concatInstanceProperty(_context44 = []).call(_context44, BASE_TX, [TX_FIELD('caller', FIELD_TYPES.id, 'ak'), TX_FIELD('contract', FIELD_TYPES.id, 'ct'), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('amount', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb'), TX_FIELD('callStack', FIELD_TYPES.callStack), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('gasLimit', FIELD_TYPES["int"])]);
var CHANNEL_RECONNECT_TX = _concatInstanceProperty(_context45 = []).call(_context45, BASE_TX, [TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('round', FIELD_TYPES["int"]), TX_FIELD('role', FIELD_TYPES.string), TX_FIELD('pubkey', FIELD_TYPES.id, 'ak')]);
var CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = _concatInstanceProperty(_context46 = []).call(_context46, BASE_TX, [TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('to', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES["int"])]);
var CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = _concatInstanceProperty(_context47 = []).call(_context47, BASE_TX, [TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES["int"])]);
var CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = _concatInstanceProperty(_context48 = []).call(_context48, BASE_TX, [TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES["int"])]);
var PROOF_OF_INCLUSION_TX = _concatInstanceProperty(_context49 = []).call(_context49, BASE_TX, [TX_FIELD('accounts', FIELD_TYPES.mptrees), TX_FIELD('calls', FIELD_TYPES.mptrees), TX_FIELD('channels', FIELD_TYPES.mptrees), TX_FIELD('contracts', FIELD_TYPES.mptrees), TX_FIELD('ns', FIELD_TYPES.mptrees), TX_FIELD('oracles', FIELD_TYPES.mptrees)]);
var STATE_TREES_TX = _concatInstanceProperty(_context50 = []).call(_context50, BASE_TX, [TX_FIELD('contracts', FIELD_TYPES.rlpBinary), TX_FIELD('calls', FIELD_TYPES.rlpBinary), TX_FIELD('channels', FIELD_TYPES.rlpBinary), TX_FIELD('ns', FIELD_TYPES.rlpBinary), TX_FIELD('oracles', FIELD_TYPES.rlpBinary), TX_FIELD('accounts', FIELD_TYPES.rlpBinary)]);
var MERKLE_PATRICIA_TREE_TX = _concatInstanceProperty(_context51 = []).call(_context51, BASE_TX, [TX_FIELD('values', FIELD_TYPES.rlpBinaries)]);
var MERKLE_PATRICIA_TREE_VALUE_TX = _concatInstanceProperty(_context52 = []).call(_context52, BASE_TX, [TX_FIELD('key', FIELD_TYPES.hex), TX_FIELD('value', FIELD_TYPES.rawBinary)]);
var CONTRACTS_TREE_TX = _concatInstanceProperty(_context53 = []).call(_context53, BASE_TX, [TX_FIELD('contracts', FIELD_TYPES.rlpBinary)]);
var CONTRACT_CALLS_TREE_TX = _concatInstanceProperty(_context54 = []).call(_context54, BASE_TX, [TX_FIELD('calls', FIELD_TYPES.rlpBinary)]);
var CHANNELS_TREE_TX = _concatInstanceProperty(_context55 = []).call(_context55, BASE_TX, [TX_FIELD('channels', FIELD_TYPES.rlpBinary)]);
var NAMESERVICE_TREE_TX = _concatInstanceProperty(_context56 = []).call(_context56, BASE_TX, [TX_FIELD('mtree', FIELD_TYPES.rlpBinary)]);
var ORACLES_TREE_TX = _concatInstanceProperty(_context57 = []).call(_context57, BASE_TX, [TX_FIELD('otree', FIELD_TYPES.rlpBinary)]);
var ACCOUNTS_TREE_TX = _concatInstanceProperty(_context58 = []).call(_context58, BASE_TX, [TX_FIELD('accounts', FIELD_TYPES.rlpBinary)]);
export var TX_SERIALIZATION_SCHEMA = (_TX_SERIALIZATION_SCH = {}, _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.account, {
1: TX_SCHEMA_FIELD(ACCOUNT_TX, OBJECT_TAG_ACCOUNT),
2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.signed, {
1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.spend, {
1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.namePreClaim, {
1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameClaim, {
1: TX_SCHEMA_FIELD(NAME_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION),
2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameUpdate, {
1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameTransfer, {
1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameRevoke, {
1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contract, {
1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCreate, {
1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCall, {
1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCallResult, {
1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleRegister, {
1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleExtend, {
1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleQuery, {
1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleResponse, {
1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCreate, {
1: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX, OBJECT_TAG_CHANNEL_CREATE_TX),
2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCloseMutual, {
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCloseSolo, {
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSlash, {
1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelDeposit, {
1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelWithdraw, {
1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSettle, {
1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelForceProgress, {
1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChain, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_TX),
2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channel, {
1: TX_SCHEMA_FIELD(CHANNEL_TX, OBJECT_TAG_CHANNEL),
2: TX_SCHEMA_FIELD(CHANNEL_TX_2, OBJECT_TAG_CHANNEL),
3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSnapshotSolo, {
1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateTransfer, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateDeposit, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateWithdrawal, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainCreateContract, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainCallContract, {
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelReconnect, {
1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.proofOfInclusion, {
1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.stateTrees, {
1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.merklePatriciaTree, {
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.merklePatriciaTreeValue, {
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractsTree, {
1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCallsTree, {
1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TR