Type Alias ZKSyncContractsCollection

ZKSyncContractsCollection: {
    Generic: {
        IERC1271Contract: Contract<typeof IERC1271ABI>;
        IERC20Contract: Contract<typeof IERC20ABI>;
    };
    L1: {
        BridgehubContract: Contract<typeof IBridgehubABI>;
        L1BridgeContract: Contract<typeof IL1BridgeABI>;
        ZkSyncMainContract: Contract<typeof IZkSyncABI>;
    };
    L2: {
        ContractDeployerContract: Contract<typeof IContractDeployerABI>;
        L1MessengerContract: Contract<typeof IL1MessengerABI>;
        L2BridgeContract: Contract<typeof IL2BridgeABI>;
        NonceHolderContract: Contract<typeof INonceHolderABI>;
    };
}

Type declaration

  • Generic: {
        IERC1271Contract: Contract<typeof IERC1271ABI>;
        IERC20Contract: Contract<typeof IERC20ABI>;
    }
    • IERC1271Contract: Contract<typeof IERC1271ABI>

      The web3.js Contract instance for the IERC1271 interface, which is utilized for signature validation by contracts.

    • IERC20Contract: Contract<typeof IERC20ABI>

      The web3.js Contract instance for the IERC20 interface, which is utilized for interacting with ERC20 tokens.

  • L1: {
        BridgehubContract: Contract<typeof IBridgehubABI>;
        L1BridgeContract: Contract<typeof IL1BridgeABI>;
        ZkSyncMainContract: Contract<typeof IZkSyncABI>;
    }
    • BridgehubContract: Contract<typeof IBridgehubABI>

      The ABI of the Bridgehub interface.

    • L1BridgeContract: Contract<typeof IL1BridgeABI>

      The web3.js Contract instance for the IL1Bridge interface, which is utilized for transferring ERC20 tokens from L1 to L2.

    • ZkSyncMainContract: Contract<typeof IZkSyncABI>

      The web3.js Contract instance for the ZkSync interface.

  • L2: {
        ContractDeployerContract: Contract<typeof IContractDeployerABI>;
        L1MessengerContract: Contract<typeof IL1MessengerABI>;
        L2BridgeContract: Contract<typeof IL2BridgeABI>;
        NonceHolderContract: Contract<typeof INonceHolderABI>;
    }
    • ContractDeployerContract: Contract<typeof IContractDeployerABI>

      The web3.js Contract instance for the IContractDeployer interface, which is utilized for deploying smart contracts.

    • L1MessengerContract: Contract<typeof IL1MessengerABI>

      The web3.js Contract instance for the IL1Messenger interface, which is utilized for sending messages from the L2 to L1.

    • L2BridgeContract: Contract<typeof IL2BridgeABI>

      The web3.js Contract instance for the IL2Bridge interface, which is utilized for transferring ERC20 tokens from L2 to L1.

    • NonceHolderContract: Contract<typeof INonceHolderABI>

      The web3.js Contract instance for the INonceHolder interface, which is utilized for managing deployment nonces.