zksync-ethers
Version:
A Web3 library for interacting with the ZkSync Layer 2 scaling solution.
831 lines (830 loc) • 40.5 kB
TypeScript
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "./common";
export type L2LogStruct = {
l2ShardId: BigNumberish;
isService: boolean;
txNumberInBatch: BigNumberish;
sender: AddressLike;
key: BytesLike;
value: BytesLike;
};
export type L2LogStructOutput = [
l2ShardId: bigint,
isService: boolean,
txNumberInBatch: bigint,
sender: string,
key: string,
value: string
] & {
l2ShardId: bigint;
isService: boolean;
txNumberInBatch: bigint;
sender: string;
key: string;
value: string;
};
export type L2MessageStruct = {
txNumberInBatch: BigNumberish;
sender: AddressLike;
data: BytesLike;
};
export type L2MessageStructOutput = [
txNumberInBatch: bigint,
sender: string,
data: string
] & {
txNumberInBatch: bigint;
sender: string;
data: string;
};
export type L2TransactionRequestDirectStruct = {
chainId: BigNumberish;
mintValue: BigNumberish;
l2Contract: AddressLike;
l2Value: BigNumberish;
l2Calldata: BytesLike;
l2GasLimit: BigNumberish;
l2GasPerPubdataByteLimit: BigNumberish;
factoryDeps: BytesLike[];
refundRecipient: AddressLike;
};
export type L2TransactionRequestDirectStructOutput = [
chainId: bigint,
mintValue: bigint,
l2Contract: string,
l2Value: bigint,
l2Calldata: string,
l2GasLimit: bigint,
l2GasPerPubdataByteLimit: bigint,
factoryDeps: string[],
refundRecipient: string
] & {
chainId: bigint;
mintValue: bigint;
l2Contract: string;
l2Value: bigint;
l2Calldata: string;
l2GasLimit: bigint;
l2GasPerPubdataByteLimit: bigint;
factoryDeps: string[];
refundRecipient: string;
};
export type L2TransactionRequestTwoBridgesOuterStruct = {
chainId: BigNumberish;
mintValue: BigNumberish;
l2Value: BigNumberish;
l2GasLimit: BigNumberish;
l2GasPerPubdataByteLimit: BigNumberish;
refundRecipient: AddressLike;
secondBridgeAddress: AddressLike;
secondBridgeValue: BigNumberish;
secondBridgeCalldata: BytesLike;
};
export type L2TransactionRequestTwoBridgesOuterStructOutput = [
chainId: bigint,
mintValue: bigint,
l2Value: bigint,
l2GasLimit: bigint,
l2GasPerPubdataByteLimit: bigint,
refundRecipient: string,
secondBridgeAddress: string,
secondBridgeValue: bigint,
secondBridgeCalldata: string
] & {
chainId: bigint;
mintValue: bigint;
l2Value: bigint;
l2GasLimit: bigint;
l2GasPerPubdataByteLimit: bigint;
refundRecipient: string;
secondBridgeAddress: string;
secondBridgeValue: bigint;
secondBridgeCalldata: string;
};
export interface IBridgehubInterface extends Interface {
getFunction(nameOrSignature: "L1_CHAIN_ID" | "acceptAdmin" | "addChainTypeManager" | "addTokenAssetId" | "admin" | "assetIdIsRegistered" | "assetRouter" | "baseToken" | "baseTokenAssetId" | "bridgeBurn" | "bridgeMint" | "bridgeRecoverFailedTransfer" | "chainTypeManager" | "chainTypeManagerIsRegistered" | "createNewChain" | "ctmAssetIdFromAddress" | "ctmAssetIdFromChainId" | "ctmAssetIdToAddress" | "forwardTransactionOnGateway" | "getAllZKChainChainIDs" | "getAllZKChains" | "getHyperchain" | "getZKChain" | "l1CtmDeployer" | "l2TransactionBaseCost" | "messageRoot" | "migrationPaused" | "pauseMigration" | "proveL1ToL2TransactionStatus" | "proveL2LogInclusion" | "proveL2MessageInclusion" | "registerAlreadyDeployedZKChain" | "registerLegacyChain" | "registerSettlementLayer" | "removeChainTypeManager" | "requestL2TransactionDirect" | "requestL2TransactionTwoBridges" | "setAddresses" | "setCTMAssetAddress" | "setPendingAdmin" | "settlementLayer" | "sharedBridge" | "unpauseMigration" | "whitelistedSettlementLayers"): FunctionFragment;
getEvent(nameOrSignatureOrTopic: "AssetRegistered" | "BaseTokenAssetIdRegistered" | "BridgeBurn" | "BridgeMint" | "ChainTypeManagerAdded" | "ChainTypeManagerRemoved" | "MigrationFinalized" | "MigrationStarted" | "NewAdmin" | "NewChain" | "NewPendingAdmin" | "SettlementLayerRegistered"): EventFragment;
encodeFunctionData(functionFragment: "L1_CHAIN_ID", values?: undefined): string;
encodeFunctionData(functionFragment: "acceptAdmin", values?: undefined): string;
encodeFunctionData(functionFragment: "addChainTypeManager", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "addTokenAssetId", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "admin", values?: undefined): string;
encodeFunctionData(functionFragment: "assetIdIsRegistered", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "assetRouter", values?: undefined): string;
encodeFunctionData(functionFragment: "baseToken", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "baseTokenAssetId", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "bridgeBurn", values: [BigNumberish, BigNumberish, BytesLike, AddressLike, BytesLike]): string;
encodeFunctionData(functionFragment: "bridgeMint", values: [BigNumberish, BytesLike, BytesLike]): string;
encodeFunctionData(functionFragment: "bridgeRecoverFailedTransfer", values: [BigNumberish, BytesLike, AddressLike, BytesLike]): string;
encodeFunctionData(functionFragment: "chainTypeManager", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "chainTypeManagerIsRegistered", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "createNewChain", values: [
BigNumberish,
AddressLike,
BytesLike,
BigNumberish,
AddressLike,
BytesLike,
BytesLike[]
]): string;
encodeFunctionData(functionFragment: "ctmAssetIdFromAddress", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "ctmAssetIdFromChainId", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "ctmAssetIdToAddress", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "forwardTransactionOnGateway", values: [BigNumberish, BytesLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "getAllZKChainChainIDs", values?: undefined): string;
encodeFunctionData(functionFragment: "getAllZKChains", values?: undefined): string;
encodeFunctionData(functionFragment: "getHyperchain", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "getZKChain", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "l1CtmDeployer", values?: undefined): string;
encodeFunctionData(functionFragment: "l2TransactionBaseCost", values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "messageRoot", values?: undefined): string;
encodeFunctionData(functionFragment: "migrationPaused", values?: undefined): string;
encodeFunctionData(functionFragment: "pauseMigration", values?: undefined): string;
encodeFunctionData(functionFragment: "proveL1ToL2TransactionStatus", values: [
BigNumberish,
BytesLike,
BigNumberish,
BigNumberish,
BigNumberish,
BytesLike[],
BigNumberish
]): string;
encodeFunctionData(functionFragment: "proveL2LogInclusion", values: [BigNumberish, BigNumberish, BigNumberish, L2LogStruct, BytesLike[]]): string;
encodeFunctionData(functionFragment: "proveL2MessageInclusion", values: [
BigNumberish,
BigNumberish,
BigNumberish,
L2MessageStruct,
BytesLike[]
]): string;
encodeFunctionData(functionFragment: "registerAlreadyDeployedZKChain", values: [BigNumberish, AddressLike]): string;
encodeFunctionData(functionFragment: "registerLegacyChain", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "registerSettlementLayer", values: [BigNumberish, boolean]): string;
encodeFunctionData(functionFragment: "removeChainTypeManager", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "requestL2TransactionDirect", values: [L2TransactionRequestDirectStruct]): string;
encodeFunctionData(functionFragment: "requestL2TransactionTwoBridges", values: [L2TransactionRequestTwoBridgesOuterStruct]): string;
encodeFunctionData(functionFragment: "setAddresses", values: [AddressLike, AddressLike, AddressLike]): string;
encodeFunctionData(functionFragment: "setCTMAssetAddress", values: [BytesLike, AddressLike]): string;
encodeFunctionData(functionFragment: "setPendingAdmin", values: [AddressLike]): string;
encodeFunctionData(functionFragment: "settlementLayer", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "sharedBridge", values?: undefined): string;
encodeFunctionData(functionFragment: "unpauseMigration", values?: undefined): string;
encodeFunctionData(functionFragment: "whitelistedSettlementLayers", values: [BigNumberish]): string;
decodeFunctionResult(functionFragment: "L1_CHAIN_ID", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "acceptAdmin", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "addChainTypeManager", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "addTokenAssetId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "admin", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "assetIdIsRegistered", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "assetRouter", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "baseToken", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "baseTokenAssetId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "bridgeBurn", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "bridgeMint", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "bridgeRecoverFailedTransfer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "chainTypeManager", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "chainTypeManagerIsRegistered", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "createNewChain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "ctmAssetIdFromAddress", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "ctmAssetIdFromChainId", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "ctmAssetIdToAddress", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "forwardTransactionOnGateway", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllZKChainChainIDs", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllZKChains", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getHyperchain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getZKChain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "l1CtmDeployer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "l2TransactionBaseCost", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "messageRoot", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "migrationPaused", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "pauseMigration", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "proveL1ToL2TransactionStatus", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "proveL2LogInclusion", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "proveL2MessageInclusion", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "registerAlreadyDeployedZKChain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "registerLegacyChain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "registerSettlementLayer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "removeChainTypeManager", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "requestL2TransactionDirect", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "requestL2TransactionTwoBridges", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setAddresses", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setCTMAssetAddress", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setPendingAdmin", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "settlementLayer", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "sharedBridge", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "unpauseMigration", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "whitelistedSettlementLayers", data: BytesLike): Result;
}
export declare namespace AssetRegisteredEvent {
type InputTuple = [
assetInfo: BytesLike,
_assetAddress: AddressLike,
additionalData: BytesLike,
sender: AddressLike
];
type OutputTuple = [
assetInfo: string,
_assetAddress: string,
additionalData: string,
sender: string
];
interface OutputObject {
assetInfo: string;
_assetAddress: string;
additionalData: string;
sender: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace BaseTokenAssetIdRegisteredEvent {
type InputTuple = [assetId: BytesLike];
type OutputTuple = [assetId: string];
interface OutputObject {
assetId: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace BridgeBurnEvent {
type InputTuple = [
chainId: BigNumberish,
assetId: BytesLike,
sender: AddressLike,
receiver: AddressLike,
amount: BigNumberish
];
type OutputTuple = [
chainId: bigint,
assetId: string,
sender: string,
receiver: string,
amount: bigint
];
interface OutputObject {
chainId: bigint;
assetId: string;
sender: string;
receiver: string;
amount: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace BridgeMintEvent {
type InputTuple = [
chainId: BigNumberish,
assetId: BytesLike,
receiver: AddressLike,
amount: BigNumberish
];
type OutputTuple = [
chainId: bigint,
assetId: string,
receiver: string,
amount: bigint
];
interface OutputObject {
chainId: bigint;
assetId: string;
receiver: string;
amount: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace ChainTypeManagerAddedEvent {
type InputTuple = [chainTypeManager: AddressLike];
type OutputTuple = [chainTypeManager: string];
interface OutputObject {
chainTypeManager: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace ChainTypeManagerRemovedEvent {
type InputTuple = [chainTypeManager: AddressLike];
type OutputTuple = [chainTypeManager: string];
interface OutputObject {
chainTypeManager: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace MigrationFinalizedEvent {
type InputTuple = [
chainId: BigNumberish,
assetId: BytesLike,
zkChain: AddressLike
];
type OutputTuple = [chainId: bigint, assetId: string, zkChain: string];
interface OutputObject {
chainId: bigint;
assetId: string;
zkChain: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace MigrationStartedEvent {
type InputTuple = [
chainId: BigNumberish,
assetId: BytesLike,
settlementLayerChainId: BigNumberish
];
type OutputTuple = [
chainId: bigint,
assetId: string,
settlementLayerChainId: bigint
];
interface OutputObject {
chainId: bigint;
assetId: string;
settlementLayerChainId: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace NewAdminEvent {
type InputTuple = [oldAdmin: AddressLike, newAdmin: AddressLike];
type OutputTuple = [oldAdmin: string, newAdmin: string];
interface OutputObject {
oldAdmin: string;
newAdmin: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace NewChainEvent {
type InputTuple = [
chainId: BigNumberish,
chainTypeManager: AddressLike,
chainGovernance: AddressLike
];
type OutputTuple = [
chainId: bigint,
chainTypeManager: string,
chainGovernance: string
];
interface OutputObject {
chainId: bigint;
chainTypeManager: string;
chainGovernance: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace NewPendingAdminEvent {
type InputTuple = [
oldPendingAdmin: AddressLike,
newPendingAdmin: AddressLike
];
type OutputTuple = [oldPendingAdmin: string, newPendingAdmin: string];
interface OutputObject {
oldPendingAdmin: string;
newPendingAdmin: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace SettlementLayerRegisteredEvent {
type InputTuple = [chainId: BigNumberish, isWhitelisted: boolean];
type OutputTuple = [chainId: bigint, isWhitelisted: boolean];
interface OutputObject {
chainId: bigint;
isWhitelisted: boolean;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export interface IBridgehub extends BaseContract {
connect(runner?: ContractRunner | null): IBridgehub;
waitForDeployment(): Promise<this>;
interface: IBridgehubInterface;
queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
listeners(eventName?: string): Promise<Array<Listener>>;
removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
L1_CHAIN_ID: TypedContractMethod<[], [bigint], "view">;
acceptAdmin: TypedContractMethod<[], [void], "nonpayable">;
addChainTypeManager: TypedContractMethod<[
_chainTypeManager: AddressLike
], [
void
], "nonpayable">;
addTokenAssetId: TypedContractMethod<[
_baseTokenAssetId: BytesLike
], [
void
], "nonpayable">;
admin: TypedContractMethod<[], [string], "view">;
assetIdIsRegistered: TypedContractMethod<[
_baseTokenAssetId: BytesLike
], [
boolean
], "view">;
assetRouter: TypedContractMethod<[], [string], "view">;
baseToken: TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
baseTokenAssetId: TypedContractMethod<[
_chainId: BigNumberish
], [
string
], "view">;
bridgeBurn: TypedContractMethod<[
_chainId: BigNumberish,
_msgValue: BigNumberish,
_assetId: BytesLike,
_originalCaller: AddressLike,
_data: BytesLike
], [
string
], "payable">;
bridgeMint: TypedContractMethod<[
_chainId: BigNumberish,
_assetId: BytesLike,
_data: BytesLike
], [
void
], "payable">;
bridgeRecoverFailedTransfer: TypedContractMethod<[
_chainId: BigNumberish,
_assetId: BytesLike,
_depositSender: AddressLike,
_data: BytesLike
], [
void
], "payable">;
chainTypeManager: TypedContractMethod<[
_chainId: BigNumberish
], [
string
], "view">;
chainTypeManagerIsRegistered: TypedContractMethod<[
_chainTypeManager: AddressLike
], [
boolean
], "view">;
createNewChain: TypedContractMethod<[
_chainId: BigNumberish,
_chainTypeManager: AddressLike,
_baseTokenAssetId: BytesLike,
_salt: BigNumberish,
_admin: AddressLike,
_initData: BytesLike,
_factoryDeps: BytesLike[]
], [
bigint
], "nonpayable">;
ctmAssetIdFromAddress: TypedContractMethod<[
_ctmAddress: AddressLike
], [
string
], "view">;
ctmAssetIdFromChainId: TypedContractMethod<[
_chainId: BigNumberish
], [
string
], "view">;
ctmAssetIdToAddress: TypedContractMethod<[
_assetInfo: BytesLike
], [
string
], "view">;
forwardTransactionOnGateway: TypedContractMethod<[
_chainId: BigNumberish,
_canonicalTxHash: BytesLike,
_expirationTimestamp: BigNumberish
], [
void
], "nonpayable">;
getAllZKChainChainIDs: TypedContractMethod<[], [bigint[]], "view">;
getAllZKChains: TypedContractMethod<[], [string[]], "view">;
getHyperchain: TypedContractMethod<[
_chainId: BigNumberish
], [
string
], "view">;
getZKChain: TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
l1CtmDeployer: TypedContractMethod<[], [string], "view">;
l2TransactionBaseCost: TypedContractMethod<[
_chainId: BigNumberish,
_gasPrice: BigNumberish,
_l2GasLimit: BigNumberish,
_l2GasPerPubdataByteLimit: BigNumberish
], [
bigint
], "view">;
messageRoot: TypedContractMethod<[], [string], "view">;
migrationPaused: TypedContractMethod<[], [boolean], "view">;
pauseMigration: TypedContractMethod<[], [void], "nonpayable">;
proveL1ToL2TransactionStatus: TypedContractMethod<[
_chainId: BigNumberish,
_l2TxHash: BytesLike,
_l2BatchNumber: BigNumberish,
_l2MessageIndex: BigNumberish,
_l2TxNumberInBatch: BigNumberish,
_merkleProof: BytesLike[],
_status: BigNumberish
], [
boolean
], "view">;
proveL2LogInclusion: TypedContractMethod<[
_chainId: BigNumberish,
_batchNumber: BigNumberish,
_index: BigNumberish,
_log: L2LogStruct,
_proof: BytesLike[]
], [
boolean
], "view">;
proveL2MessageInclusion: TypedContractMethod<[
_chainId: BigNumberish,
_batchNumber: BigNumberish,
_index: BigNumberish,
_message: L2MessageStruct,
_proof: BytesLike[]
], [
boolean
], "view">;
registerAlreadyDeployedZKChain: TypedContractMethod<[
_chainId: BigNumberish,
_hyperchain: AddressLike
], [
void
], "nonpayable">;
registerLegacyChain: TypedContractMethod<[
_chainId: BigNumberish
], [
void
], "nonpayable">;
registerSettlementLayer: TypedContractMethod<[
_newSettlementLayerChainId: BigNumberish,
_isWhitelisted: boolean
], [
void
], "nonpayable">;
removeChainTypeManager: TypedContractMethod<[
_chainTypeManager: AddressLike
], [
void
], "nonpayable">;
requestL2TransactionDirect: TypedContractMethod<[
_request: L2TransactionRequestDirectStruct
], [
string
], "payable">;
requestL2TransactionTwoBridges: TypedContractMethod<[
_request: L2TransactionRequestTwoBridgesOuterStruct
], [
string
], "payable">;
setAddresses: TypedContractMethod<[
_sharedBridge: AddressLike,
_l1CtmDeployer: AddressLike,
_messageRoot: AddressLike
], [
void
], "nonpayable">;
setCTMAssetAddress: TypedContractMethod<[
_additionalData: BytesLike,
_assetAddress: AddressLike
], [
void
], "nonpayable">;
setPendingAdmin: TypedContractMethod<[
_newPendingAdmin: AddressLike
], [
void
], "nonpayable">;
settlementLayer: TypedContractMethod<[
_chainId: BigNumberish
], [
bigint
], "view">;
sharedBridge: TypedContractMethod<[], [string], "view">;
unpauseMigration: TypedContractMethod<[], [void], "nonpayable">;
whitelistedSettlementLayers: TypedContractMethod<[
_chainId: BigNumberish
], [
boolean
], "view">;
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
getFunction(nameOrSignature: "L1_CHAIN_ID"): TypedContractMethod<[], [bigint], "view">;
getFunction(nameOrSignature: "acceptAdmin"): TypedContractMethod<[], [void], "nonpayable">;
getFunction(nameOrSignature: "addChainTypeManager"): TypedContractMethod<[
_chainTypeManager: AddressLike
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "addTokenAssetId"): TypedContractMethod<[_baseTokenAssetId: BytesLike], [void], "nonpayable">;
getFunction(nameOrSignature: "admin"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "assetIdIsRegistered"): TypedContractMethod<[_baseTokenAssetId: BytesLike], [boolean], "view">;
getFunction(nameOrSignature: "assetRouter"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "baseToken"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "baseTokenAssetId"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "bridgeBurn"): TypedContractMethod<[
_chainId: BigNumberish,
_msgValue: BigNumberish,
_assetId: BytesLike,
_originalCaller: AddressLike,
_data: BytesLike
], [
string
], "payable">;
getFunction(nameOrSignature: "bridgeMint"): TypedContractMethod<[
_chainId: BigNumberish,
_assetId: BytesLike,
_data: BytesLike
], [
void
], "payable">;
getFunction(nameOrSignature: "bridgeRecoverFailedTransfer"): TypedContractMethod<[
_chainId: BigNumberish,
_assetId: BytesLike,
_depositSender: AddressLike,
_data: BytesLike
], [
void
], "payable">;
getFunction(nameOrSignature: "chainTypeManager"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "chainTypeManagerIsRegistered"): TypedContractMethod<[_chainTypeManager: AddressLike], [boolean], "view">;
getFunction(nameOrSignature: "createNewChain"): TypedContractMethod<[
_chainId: BigNumberish,
_chainTypeManager: AddressLike,
_baseTokenAssetId: BytesLike,
_salt: BigNumberish,
_admin: AddressLike,
_initData: BytesLike,
_factoryDeps: BytesLike[]
], [
bigint
], "nonpayable">;
getFunction(nameOrSignature: "ctmAssetIdFromAddress"): TypedContractMethod<[_ctmAddress: AddressLike], [string], "view">;
getFunction(nameOrSignature: "ctmAssetIdFromChainId"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "ctmAssetIdToAddress"): TypedContractMethod<[_assetInfo: BytesLike], [string], "view">;
getFunction(nameOrSignature: "forwardTransactionOnGateway"): TypedContractMethod<[
_chainId: BigNumberish,
_canonicalTxHash: BytesLike,
_expirationTimestamp: BigNumberish
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "getAllZKChainChainIDs"): TypedContractMethod<[], [bigint[]], "view">;
getFunction(nameOrSignature: "getAllZKChains"): TypedContractMethod<[], [string[]], "view">;
getFunction(nameOrSignature: "getHyperchain"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "getZKChain"): TypedContractMethod<[_chainId: BigNumberish], [string], "view">;
getFunction(nameOrSignature: "l1CtmDeployer"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "l2TransactionBaseCost"): TypedContractMethod<[
_chainId: BigNumberish,
_gasPrice: BigNumberish,
_l2GasLimit: BigNumberish,
_l2GasPerPubdataByteLimit: BigNumberish
], [
bigint
], "view">;
getFunction(nameOrSignature: "messageRoot"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "migrationPaused"): TypedContractMethod<[], [boolean], "view">;
getFunction(nameOrSignature: "pauseMigration"): TypedContractMethod<[], [void], "nonpayable">;
getFunction(nameOrSignature: "proveL1ToL2TransactionStatus"): TypedContractMethod<[
_chainId: BigNumberish,
_l2TxHash: BytesLike,
_l2BatchNumber: BigNumberish,
_l2MessageIndex: BigNumberish,
_l2TxNumberInBatch: BigNumberish,
_merkleProof: BytesLike[],
_status: BigNumberish
], [
boolean
], "view">;
getFunction(nameOrSignature: "proveL2LogInclusion"): TypedContractMethod<[
_chainId: BigNumberish,
_batchNumber: BigNumberish,
_index: BigNumberish,
_log: L2LogStruct,
_proof: BytesLike[]
], [
boolean
], "view">;
getFunction(nameOrSignature: "proveL2MessageInclusion"): TypedContractMethod<[
_chainId: BigNumberish,
_batchNumber: BigNumberish,
_index: BigNumberish,
_message: L2MessageStruct,
_proof: BytesLike[]
], [
boolean
], "view">;
getFunction(nameOrSignature: "registerAlreadyDeployedZKChain"): TypedContractMethod<[
_chainId: BigNumberish,
_hyperchain: AddressLike
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "registerLegacyChain"): TypedContractMethod<[_chainId: BigNumberish], [void], "nonpayable">;
getFunction(nameOrSignature: "registerSettlementLayer"): TypedContractMethod<[
_newSettlementLayerChainId: BigNumberish,
_isWhitelisted: boolean
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "removeChainTypeManager"): TypedContractMethod<[
_chainTypeManager: AddressLike
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "requestL2TransactionDirect"): TypedContractMethod<[
_request: L2TransactionRequestDirectStruct
], [
string
], "payable">;
getFunction(nameOrSignature: "requestL2TransactionTwoBridges"): TypedContractMethod<[
_request: L2TransactionRequestTwoBridgesOuterStruct
], [
string
], "payable">;
getFunction(nameOrSignature: "setAddresses"): TypedContractMethod<[
_sharedBridge: AddressLike,
_l1CtmDeployer: AddressLike,
_messageRoot: AddressLike
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "setCTMAssetAddress"): TypedContractMethod<[
_additionalData: BytesLike,
_assetAddress: AddressLike
], [
void
], "nonpayable">;
getFunction(nameOrSignature: "setPendingAdmin"): TypedContractMethod<[_newPendingAdmin: AddressLike], [void], "nonpayable">;
getFunction(nameOrSignature: "settlementLayer"): TypedContractMethod<[_chainId: BigNumberish], [bigint], "view">;
getFunction(nameOrSignature: "sharedBridge"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "unpauseMigration"): TypedContractMethod<[], [void], "nonpayable">;
getFunction(nameOrSignature: "whitelistedSettlementLayers"): TypedContractMethod<[_chainId: BigNumberish], [boolean], "view">;
getEvent(key: "AssetRegistered"): TypedContractEvent<AssetRegisteredEvent.InputTuple, AssetRegisteredEvent.OutputTuple, AssetRegisteredEvent.OutputObject>;
getEvent(key: "BaseTokenAssetIdRegistered"): TypedContractEvent<BaseTokenAssetIdRegisteredEvent.InputTuple, BaseTokenAssetIdRegisteredEvent.OutputTuple, BaseTokenAssetIdRegisteredEvent.OutputObject>;
getEvent(key: "BridgeBurn"): TypedContractEvent<BridgeBurnEvent.InputTuple, BridgeBurnEvent.OutputTuple, BridgeBurnEvent.OutputObject>;
getEvent(key: "BridgeMint"): TypedContractEvent<BridgeMintEvent.InputTuple, BridgeMintEvent.OutputTuple, BridgeMintEvent.OutputObject>;
getEvent(key: "ChainTypeManagerAdded"): TypedContractEvent<ChainTypeManagerAddedEvent.InputTuple, ChainTypeManagerAddedEvent.OutputTuple, ChainTypeManagerAddedEvent.OutputObject>;
getEvent(key: "ChainTypeManagerRemoved"): TypedContractEvent<ChainTypeManagerRemovedEvent.InputTuple, ChainTypeManagerRemovedEvent.OutputTuple, ChainTypeManagerRemovedEvent.OutputObject>;
getEvent(key: "MigrationFinalized"): TypedContractEvent<MigrationFinalizedEvent.InputTuple, MigrationFinalizedEvent.OutputTuple, MigrationFinalizedEvent.OutputObject>;
getEvent(key: "MigrationStarted"): TypedContractEvent<MigrationStartedEvent.InputTuple, MigrationStartedEvent.OutputTuple, MigrationStartedEvent.OutputObject>;
getEvent(key: "NewAdmin"): TypedContractEvent<NewAdminEvent.InputTuple, NewAdminEvent.OutputTuple, NewAdminEvent.OutputObject>;
getEvent(key: "NewChain"): TypedContractEvent<NewChainEvent.InputTuple, NewChainEvent.OutputTuple, NewChainEvent.OutputObject>;
getEvent(key: "NewPendingAdmin"): TypedContractEvent<NewPendingAdminEvent.InputTuple, NewPendingAdminEvent.OutputTuple, NewPendingAdminEvent.OutputObject>;
getEvent(key: "SettlementLayerRegistered"): TypedContractEvent<SettlementLayerRegisteredEvent.InputTuple, SettlementLayerRegisteredEvent.OutputTuple, SettlementLayerRegisteredEvent.OutputObject>;
filters: {
"AssetRegistered(bytes32,address,bytes32,address)": TypedContractEvent<AssetRegisteredEvent.InputTuple, AssetRegisteredEvent.OutputTuple, AssetRegisteredEvent.OutputObject>;
AssetRegistered: TypedContractEvent<AssetRegisteredEvent.InputTuple, AssetRegisteredEvent.OutputTuple, AssetRegisteredEvent.OutputObject>;
"BaseTokenAssetIdRegistered(bytes32)": TypedContractEvent<BaseTokenAssetIdRegisteredEvent.InputTuple, BaseTokenAssetIdRegisteredEvent.OutputTuple, BaseTokenAssetIdRegisteredEvent.OutputObject>;
BaseTokenAssetIdRegistered: TypedContractEvent<BaseTokenAssetIdRegisteredEvent.InputTuple, BaseTokenAssetIdRegisteredEvent.OutputTuple, BaseTokenAssetIdRegisteredEvent.OutputObject>;
"BridgeBurn(uint256,bytes32,address,address,uint256)": TypedContractEvent<BridgeBurnEvent.InputTuple, BridgeBurnEvent.OutputTuple, BridgeBurnEvent.OutputObject>;
BridgeBurn: TypedContractEvent<BridgeBurnEvent.InputTuple, BridgeBurnEvent.OutputTuple, BridgeBurnEvent.OutputObject>;
"BridgeMint(uint256,bytes32,address,uint256)": TypedContractEvent<BridgeMintEvent.InputTuple, BridgeMintEvent.OutputTuple, BridgeMintEvent.OutputObject>;
BridgeMint: TypedContractEvent<BridgeMintEvent.InputTuple, BridgeMintEvent.OutputTuple, BridgeMintEvent.OutputObject>;
"ChainTypeManagerAdded(address)": TypedContractEvent<ChainTypeManagerAddedEvent.InputTuple, ChainTypeManagerAddedEvent.OutputTuple, ChainTypeManagerAddedEvent.OutputObject>;
ChainTypeManagerAdded: TypedContractEvent<ChainTypeManagerAddedEvent.InputTuple, ChainTypeManagerAddedEvent.OutputTuple, ChainTypeManagerAddedEvent.OutputObject>;
"ChainTypeManagerRemoved(address)": TypedContractEvent<ChainTypeManagerRemovedEvent.InputTuple, ChainTypeManagerRemovedEvent.OutputTuple, ChainTypeManagerRemovedEvent.OutputObject>;
ChainTypeManagerRemoved: TypedContractEvent<ChainTypeManagerRemovedEvent.InputTuple, ChainTypeManagerRemovedEvent.OutputTuple, ChainTypeManagerRemovedEvent.OutputObject>;
"MigrationFinalized(uint256,bytes32,address)": TypedContractEvent<MigrationFinalizedEvent.InputTuple, MigrationFinalizedEvent.OutputTuple, MigrationFinalizedEvent.OutputObject>;
MigrationFinalized: TypedContractEvent<MigrationFinalizedEvent.InputTuple, MigrationFinalizedEvent.OutputTuple, MigrationFinalizedEvent.OutputObject>;
"MigrationStarted(uint256,bytes32,uint256)": TypedContractEvent<MigrationStartedEvent.InputTuple, MigrationStartedEvent.OutputTuple, MigrationStartedEvent.OutputObject>;
MigrationStarted: TypedContractEvent<MigrationStartedEvent.InputTuple, MigrationStartedEvent.OutputTuple, MigrationStartedEvent.OutputObject>;
"NewAdmin(address,address)": TypedContractEvent<NewAdminEvent.InputTuple, NewAdminEvent.OutputTuple, NewAdminEvent.OutputObject>;
NewAdmin: TypedContractEvent<NewAdminEvent.InputTuple, NewAdminEvent.OutputTuple, NewAdminEvent.OutputObject>;
"NewChain(uint256,address,address)": TypedContractEvent<NewChainEvent.InputTuple, NewChainEvent.OutputTuple, NewChainEvent.OutputObject>;
NewChain: TypedContractEvent<NewChainEvent.InputTuple, NewChainEvent.OutputTuple, NewChainEvent.OutputObject>;
"NewPendingAdmin(address,address)": TypedContractEvent<NewPendingAdminEvent.InputTuple, NewPendingAdminEvent.OutputTuple, NewPendingAdminEvent.OutputObject>;
NewPendingAdmin: TypedContractEvent<NewPendingAdminEvent.InputTuple, NewPendingAdminEvent.OutputTuple, NewPendingAdminEvent.OutputObject>;
"SettlementLayerRegistered(uint256,bool)": TypedContractEvent<SettlementLayerRegisteredEvent.InputTuple, SettlementLayerRegisteredEvent.OutputTuple, SettlementLayerRegisteredEvent.OutputObject>;
SettlementLayerRegistered: TypedContractEvent<SettlementLayerRegisteredEvent.InputTuple, SettlementLayerRegisteredEvent.OutputTuple, SettlementLayerRegisteredEvent.OutputObject>;
};
}