Config
Details about Mystiko configuration and related interfaces.
Data Structure
- MystikoConfig
- CircuitConfig
- ChainConfig
- BridgeConfig
- DepositContractConfig
- PoolContractConfig
- ContractConfig
Get
Get MystikoConfig
.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<MystikoConfig, ConfigError> response = await api.get();
MystikoConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
version | String | Mystiko version. |
chainConfigs | Map<Int, ChainConfig> | Chain configs map, key is chain id. |
bridgeConfigs | Map<Int, BridgeConfig> | Bridge configs map, key is bridge type. |
gitRevision | String | Git revision. |
sequencerConfig | ClientOptions | Sequencer config. |
packerConfig | PackerConfig | Packer config. |
countryBlacklist | List<String> | Country blacklist. |
circuitConfigs | List<CircuitConfig> | Circuit configs. |
CircuitConfig
CircuitConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
name | String | Circuit name. |
circuitType | CircuitType | Circuit type. |
isDefault | bool | Is default circuit. |
programFile | List<String> | Program files. |
abiFile | List<String> | ABI files. |
provingKeyFile | List<String> | Proving key files. |
verifyingKeyFile | List<String> | Verifying key files. |
FindDefaultCircuit
Find default circuit config by circuit type.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<CircuitConfig, ConfigError> response = await api.findDefaultCircuit(CircuitType.CIRCUIT_TYPE_ROLLUP_1);
List of supportedCircuitType
:
CircuitType.CIRCUIT_TYPE_ROLLUP_1;
CircuitType.CIRCUIT_TYPE_ROLLUP_2;
CircuitType.CIRCUIT_TYPE_ROLLUP_4;
CircuitType.CIRCUIT_TYPE_ROLLUP_8;
CircuitType.CIRCUIT_TYPE_ROLLUP_16;
CircuitType.CIRCUIT_TYPE_ROLLUP_32;
CircuitType.CIRCUIT_TYPE_ROLLUP_64;
CircuitType.CIRCUIT_TYPE_ROLLUP_128;
CircuitType.CIRCUIT_TYPE_ROLLUP_256;
CircuitType.CIRCUIT_TYPE_ROLLUP_512;
CircuitType.CIRCUIT_TYPE_ROLLUP_1024;
CircuitType.CIRCUIT_TYPE_TRANSACTION1X0;
CircuitType.CIRCUIT_TYPE_TRANSACTION1X1;
CircuitType.CIRCUIT_TYPE_TRANSACTION1X2;
CircuitType.CIRCUIT_TYPE_TRANSACTION2X0;
CircuitType.CIRCUIT_TYPE_TRANSACTION2X1;
CircuitType.CIRCUIT_TYPE_TRANSACTION2X2;
FindCircuit
Find circuit config by circuit name.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<CircuitConfig, ConfigError> response = await api.findCircuit('circuitName');
ChainConfig
ChainConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
chainId | Int | Chain id. |
name | String | Chain name. |
assetSymbol | String | Native asset symbol. |
assetDecimals | Int | Native asset decimals. |
explorerUrl | String | Explorer URL. |
explorerApiUrl | String | Explorer API URL. |
explorerPrefix | String | Explorer prefix. |
providerQuorumPercentage | Int | Provider quorum percentage. |
signerEndpoint | String | Signer endpoint. |
eventDelayBlocks | Int | Event delay blocks. |
eventFilterSize | Int | Event filter size. |
sequencerFetchSize | Int | Sequencer fetch size. |
mainAssetConfig | AssetConfig | Main asset config. |
providerType | ProviderType | Provider type. |
transactionType | TransactionType | Transaction type. |
assetConfigs | Map<String, AssetConfig> | Asset configs map, key is asset contract address. |
depositContractConfigs | Map<String, DepositContractConfig> | Deposit contract configs map, key is deposit contract address. |
poolContractConfigs | Map<String, PoolContractConfig> | Pool contract configs map, key is pool contract address. |
recommendedAmounts | List<String> | Recommended amounts. |
providerConfigs | List<ProvierConfig> | Provider configs. |
granularities | List<Int> | Granularities. |
FindChain
Find chain config by chain id.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<ChainConfig, ConfigError> response = await api.findChain(1);
FindPeerChains
Find peer chains by chain id.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<List<ChainConfig>, ConfigError> response = await api.findPeerChains(1);
FindAssetSymbols
Find asset symbols by chain id and peer chain id.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<List<String>, ConfigError> response = await api.findAssetSymbols(1, 97);
FindBridges
Find bridge type by chain id, peer chain id and asset symbol.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<List<BridgeType>, ConfigError> response = await api.findBridges(1, 97, 'ETH');
FindBridge
Find bridge config by bridge type.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<BridgeConfig, ConfigError> response = await api.findBridge(BridgeType.BRIDGE_TYPE_LOOP);
List of supportedBridgeType
:
BridgeType.BRIDGE_TYPE_LOOP;
BridgeType.BRIDGE_TYPE_POLY;
BridgeType.BRIDGE_TYPE_TBRIDGE;
BridgeType.BRIDGE_TYPE_CELER;
BridgeType.BRIDGE_TYPE_LAYER_ZERO;
BridgeType.BRIDGE_TYPE_AXELAR;
BridgeType.BRIDGE_TYPE_WORMHOLE;
BridgeConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
name | String | Bridge name. |
bridgeType | BridgeType | Bridge type. |
explorerUrl | String | Explorer URL. |
explorerPrefix | String | Explorer prefix. |
apiUrl | String | API URL. |
apiPrefix | String | API prefix. |
DepositContractConfig
DepositContractConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
version | Int | Deposit Contract Version. |
name | String | Contract name. |
address | String | Contract address. |
startBlock | Int | Start block. |
disabled | bool | Is disabled. |
minAmount | String | Minimum amount. |
maxAmount | String | Maximum amount. |
poolContractConfig | PoolContractConfig | Pool contract config. |
bridgeType | BridgeType | Bridge type. |
contractType | ContractType | Contract type. |
minBridgeFee | String | Minimum bridge fee. |
minExecutorFee | String | Minimum executor fee. |
serviceFee | Int | Service fee. |
serviceFeeDivider | Int | Service fee divider. |
bridgeFeeAssetConfig | AssetConfig | Bridge fee asset config. |
executorFeeAssetConfig | AssetConfig | Executor fee asset config. |
peerChainId | Int | Peer chain id. |
peerContractAddress | String | Peer contract address. |
FindDepositContract
Find deposit contract config by chain id, peer chain id, asset symbol and bridge type.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<DepositContractConfig, ConfigError> response = await api.findDepositContract(1, 97, 'ETH', BridgeType.BRIDGE_TYPE_LOOP);
FindDepositContractByAddress
Find deposit contract config by chain id and deposit contract address.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<DepositContractConfig, ConfigError> response = await api.findDepositContractByAddress(1, '0x123456');
PoolContractConfig
PoolContractConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
version | Int | Pool Contract Version. |
name | String | Contract name. |
address | String | Contract address. |
startBlock | Int | Start block. |
poolName | String | Pool name. |
minRollupFee | String | Minimum rollup fee. |
contractType | ContractType | Contract type. |
bridgeType | BridgeType | Bridge type. |
assetConfig | AssetConfig | Asset config. |
circuitConfigs | List<CircuitConfig> | Circuit configs. |
circuits | List<String> | Circuits. |
FindPoolContract
Find pool contract config by chain id, asset symbol, bridge type and version.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<PoolContractConfig, ConfigError> response = await api.findPoolContract(1, 'ETH', BridgeType.BRIDGE_TYPE_LOOP, 2);
FindPoolContracts
Find pool contracts by chain id, asset symbol and bridge type.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<List<PoolContractConfig>, ConfigError> response = await api.findPoolContracts(1, 'ETH', BridgeType.BRIDGE_TYPE_LOOP);
FindPoolContractByAddress
Find pool contract config by chain id and pool contract address.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<PoolContractConfig, ConfigError> response = await api.findPoolContractByAddress(1, '0x123456');
FindContractByAddress
Find contract config by chain id and contract address.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<ContractConfig, ConfigError> response = await api.findContractByAddress(1, '0x123456');
ContractConfig
data structure is as follows:
Property | Type | Description |
---|---|---|
version | Int | Contract version. |
name | String | Contract name. |
address | String | Contract address. |
startBlock | Int | Start block. |
disabled | bool | Is disabled. |
minRollupFee | String | Minimum rollup fee. |
assetConfig | AssetConfig | Asset config. |
bridgeType | BridgeType | Bridge type. |
contractType | ContractType | Contract type. |
List of supportedContractType
:
ContractType.CONTRACT_TYPE_DEPOSIT;
ContractType.CONTRACT_TYPE_POOL;
GetTransactionUrl
Get transaction url by chain id and transaction hash.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<String, ConfigError> response = await api.getTransactionUrl(1, '0x123456');
SupportedAssetSymbols
Get supported asset symbols by chain id.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoConfigApi api = await Mystiko.mystikoConfigApi();
Response<List<String>, ConfigError> response = await api.supportedAssetSymbols(1);