Skip to main content

Config

Details about Mystiko configuration and related interfaces.

Data Structure

Get

Get MystikoConfig.

import mystiko from '@mystikonetwork/node';

const mystikoConfig = mystiko.config?.get();

MystikoConfig data structure is as follows:

PropertyTypeDescription
versionstring
Mystiko version.
chainConfigs{[key: string]: ChainConfig;}
Chain configs map, key is chain id.
bridgeConfigs{[key: number]: BridgeConfig;}
Bridge configs map, key is bridge type.
gitRevisionstring
Git revision.
sequencerConfigClientOptions
Sequencer config.
packerConfigPackerConfig
Packer config.
countryBlackliststring[]
Country blacklist.
circuitConfigsCircuitConfig[]
Circuit configs.

CircuitConfig

CircuitConfig data structure is as follows:

PropertyTypeDescription
namestring
Circuit name.
circuitTypeCircuitType
Circuit type.
isDefaultboolean
Is default circuit.
programFilestring[]
Program files.
abiFilestring[]
ABI files.
provingKeyFilestring[]
Proving key files.
verifyingKeyFilestring[]
Verifying key files.

FindDefaultCircuit

Find default circuit config by circuit type.

import mystiko from '@mystikonetwork/node';
import { common } from '@mystikonetwork/protos';

const circuitConfig = mystiko.config?.findDefaultCircuit(common.v1.CircuitType.ROLLUP_1);

List of supported CircuitType:

CircuitType.ROLLUP_1;
CircuitType.ROLLUP_2;
CircuitType.ROLLUP_4;
CircuitType.ROLLUP_8;
CircuitType.ROLLUP_16;
CircuitType.ROLLUP_32;
CircuitType.ROLLUP_64;
CircuitType.ROLLUP_128;
CircuitType.ROLLUP_256;
CircuitType.ROLLUP_512;
CircuitType.ROLLUP_1024;

CircuitType.TRANSACTION1X0;
CircuitType.TRANSACTION1X1;
CircuitType.TRANSACTION1X2;
CircuitType.TRANSACTION2X0;
CircuitType.TRANSACTION2X1;
CircuitType.TRANSACTION2X2;

FindCircuit

Find circuit config by circuit name.

import mystiko from '@mystikonetwork/node';
import { common } from '@mystikonetwork/protos';

const circuitConfig = mystiko.config?.findCircuit('zokrates-1.0-rollup1');

ChainConfig

ChainConfig data structure is as follows:

PropertyTypeDescription
chainIdbigint
Chain id.
namestring
Chain name.
assetSymbolstring
Native asset symbol.
assetDecimalsnumber
Native asset decimals.
explorerUrlstring
Explorer URL.
explorerApiUrlstring
Explorer API URL.
explorerPrefixstring
Explorer prefix.
providerQuorumPercentagenumber
Provider quorum percentage.
signerEndpointstring
Signer endpoint.
eventDelayBlocksbigint
Event delay blocks.
eventFilterSizebigint
Event filter size.
sequencerFetchSizebigint
Sequencer fetch size.
mainAssetConfigAssetConfig
Main asset config.
providerTypeProviderType
Provider type.
transactionTypeTransactionType
Transaction type.
assetConfigs{[key: string]: AssetConfig;}
Asset configs map, key is asset contract address.
depositContractConfigs{[key: string]: DepositContractConfig;}
Deposit contract configs map, key is deposit contract address.
poolContractConfigs{[key: string]: PoolContractConfig;}
Pool contract configs map, key is pool contract address.
recommendedAmountsstring[]
Recommended amounts.
providerConfigsProviderConfig[]
Provider configs.
granularitiesbigint[]
Granularities.

FindChain

Find chain config by chain id.

import mystiko from '@mystikonetwork/node';

const chainConfig = mystiko.config?.findChain(BigInt(97));

FindPeerChains

Find peer chains by chain id.

import mystiko from '@mystikonetwork/node';

const chainConfigs = mystiko.config?.findPeerChains(BigInt(11155111));

FindAssetSymbols

Find asset symbols by chain id and peer chain id.

import mystiko from '@mystikonetwork/node';

const assetSymbols = mystiko.config?.findAssetSymbols(BigInt(97), BigInt(11155111));

FindBridges

Find bridge type by chain id, peer chain id and asset symbol.

import mystiko from '@mystikonetwork/node';

const bridges = mystiko.config?.findBridges(BigInt(97), BigInt(11155111), 'MTT');

FindBridge

Find bridge config by bridge type.

import mystiko from '@mystikonetwork/node';

const bridgeConfig = mystiko.config?.findBridge(common.v1.BridgeType.TBRIDGE);

List of supported BridgeType:

BridgeType.LOOP;
BridgeType.POLY;
BridgeType.TBRIDGE;
BridgeType.CELER;
BridgeType.LAYER_ZERO;
BridgeType.AXELAR;
BridgeType.WORMHOLE;

BridgeConfig data structure is as follows:

PropertyTypeDescription
namestring
Bridge name.
bridgeTypeBridgeType
Bridge type.
explorerUrlstring
Explorer URL.
explorerPrefixstring
Explorer prefix.
apiUrlstring
API URL.
apiPrefixstring
API prefix.

DepositContractConfig

DepositContractConfig data structure is as follows:

PropertyTypeDescription
versionnumber
Deposit Contract Version.
namestring
Contract name.
addressstring
Contract address.
startBlockbigint
Start block.
disabledboolean
Is disabled.
minAmountstring
Minimum amount.
maxAmountstring
Maximum amount.
poolContractConfigPoolContractConfig
Pool contract config.
bridgeTypeBridgeType
Bridge type.
contractTypeContractType
Contract type.
minBridgeFeestring
Minimum bridge fee.
minExecutorFeestring
Minimum executor fee.
serviceFeenumber
Service fee.
serviceFeeDividernumber
Service fee divider.
bridgeFeeAssetConfigAssetConfig
Bridge fee asset config.
executorFeeAssetConfigAssetConfig
Executor fee asset config.
peerChainIdbigint
Peer chain id.
peerContractAddressstring
Peer contract address.

FindDepositContract

Find deposit contract config by chain id, peer chain id, asset symbol and bridge type.

import mystiko from '@mystikonetwork/node';

const depositContractConfig = mystiko.config?.findDepositContract(
BigInt(11155111),
BigInt(97),
'MTT',
common.v1.BridgeType.TBRIDGE,
);

FindDepositContractByAddress

Find deposit contract config by chain id and deposit contract address.

import mystiko from '@mystikonetwork/node';

const depositContractConfig = mystiko.config?.findDepositContractByAddress(
BigInt(11155111),
'0x643DD956aC516808538BF979b8440AbcebC3bcdA',
);

PoolContractConfig

PoolContractConfig data structure is as follows:

PropertyTypeDescription
versionnumber
Pool Contract Version.
namestring
Contract name.
addressstring
Contract address.
startBlockbigint
Start block.
poolNamestring
Pool name.
minRollupFeestring
Minimum rollup fee.
contractTypeContractType
Contract type.
bridgeTypeBridgeType
Bridge type.
assetConfigAssetConfig
Asset config.
circuitConfigsCircuitConfig[]
Circuit configs.
circuitsstring[]
Circuits.

FindPoolContract

Find pool contract config by chain id, asset symbol, bridge type and version.

import mystiko from '@mystikonetwork/node';

const poolContractConfig = mystiko.config?.findPoolContract(BigInt(11155111), 'MTT', common.v1.BridgeType.TBRIDGE, 6);

FindPoolContracts

Find pool contracts by chain id, asset symbol and bridge type.

import mystiko from '@mystikonetwork/node';

const poolContractConfig = mystiko.config?.findPoolContracts(BigInt(11155111), 'MTT', common.v1.BridgeType.TBRIDGE);

FindPoolContractByAddress

Find pool contract config by chain id and pool contract address.

import mystiko from '@mystikonetwork/node';

const poolContractConfig = mystiko.config?.findPoolContractByAddress(
BigInt(11155111),
'0xAE77941b3bd4d2293E13A9a69E64A0ACFf5bBC55',
);

FindContractByAddress

Find contract config by chain id and contract address.

import mystiko from '@mystikonetwork/node';

const contractConfig = mystiko.config?.findContractByAddress(
BigInt(11155111),
'0xAE77941b3bd4d2293E13A9a69E64A0ACFf5bBC55',
);

ContractConfig data structure is as follows:

PropertyTypeDescription
versionnumber
Contract version.
namestring
Contract name.
addressstring
Contract address.
startBlockbigint
Start block.
disabledboolean
Is disabled.
minRollupFeestring
Minimum rollup fee.
assetConfigAssetConfig
Asset config.
bridgeTypeBridgeType
Bridge type.
contractTypeContractType
Contract type.

List of supported ContractType:

ContractType.DEPOSIT;
ContractType.POOL;

GetTransactionUrl

Get transaction url by chain id and transaction hash.

import mystiko from '@mystikonetwork/node';

const txWithUrl = mystiko.config?.getTransactionUrl(BigInt(11155111), '0x1803ef0489ec2bda0abb7f564fa795959c0d1f4db7651236e34f879b317c074a');