@wormhole-foundation/sdk-evm-tokenbridge
Version:
SDK for EVM chains, used in conjunction with @wormhole-foundation/sdk
630 lines • 30 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.js';
export declare namespace BridgeStructs {
type TransferStruct = {
payloadID: BigNumberish;
amount: BigNumberish;
tokenAddress: BytesLike;
tokenChain: BigNumberish;
to: BytesLike;
toChain: BigNumberish;
fee: BigNumberish;
};
type TransferStructOutput = [
payloadID: bigint,
amount: bigint,
tokenAddress: string,
tokenChain: bigint,
to: string,
toChain: bigint,
fee: bigint
] & {
payloadID: bigint;
amount: bigint;
tokenAddress: string;
tokenChain: bigint;
to: string;
toChain: bigint;
fee: bigint;
};
type AssetMetaStruct = {
payloadID: BigNumberish;
tokenAddress: BytesLike;
tokenChain: BigNumberish;
decimals: BigNumberish;
symbol: BytesLike;
name: BytesLike;
};
type AssetMetaStructOutput = [
payloadID: bigint,
tokenAddress: string,
tokenChain: bigint,
decimals: bigint,
symbol: string,
name: string
] & {
payloadID: bigint;
tokenAddress: string;
tokenChain: bigint;
decimals: bigint;
symbol: string;
name: string;
};
type TransferWithPayloadStruct = {
payloadID: BigNumberish;
amount: BigNumberish;
tokenAddress: BytesLike;
tokenChain: BigNumberish;
to: BytesLike;
toChain: BigNumberish;
fromAddress: BytesLike;
payload: BytesLike;
};
type TransferWithPayloadStructOutput = [
payloadID: bigint,
amount: bigint,
tokenAddress: string,
tokenChain: bigint,
to: string,
toChain: bigint,
fromAddress: string,
payload: string
] & {
payloadID: bigint;
amount: bigint;
tokenAddress: string;
tokenChain: bigint;
to: string;
toChain: bigint;
fromAddress: string;
payload: string;
};
type RecoverChainIdStruct = {
module: BytesLike;
action: BigNumberish;
evmChainId: BigNumberish;
newChainId: BigNumberish;
};
type RecoverChainIdStructOutput = [
module: string,
action: bigint,
evmChainId: bigint,
newChainId: bigint
] & {
module: string;
action: bigint;
evmChainId: bigint;
newChainId: bigint;
};
type RegisterChainStruct = {
module: BytesLike;
action: BigNumberish;
chainId: BigNumberish;
emitterChainID: BigNumberish;
emitterAddress: BytesLike;
};
type RegisterChainStructOutput = [
module: string,
action: bigint,
chainId: bigint,
emitterChainID: bigint,
emitterAddress: string
] & {
module: string;
action: bigint;
chainId: bigint;
emitterChainID: bigint;
emitterAddress: string;
};
type UpgradeContractStruct = {
module: BytesLike;
action: BigNumberish;
chainId: BigNumberish;
newContract: BytesLike;
};
type UpgradeContractStructOutput = [
module: string,
action: bigint,
chainId: bigint,
newContract: string
] & {
module: string;
action: bigint;
chainId: bigint;
newContract: string;
};
}
export interface BridgeInterface extends Interface {
getFunction(nameOrSignature: 'WETH' | '_parseTransferCommon' | 'attestToken' | 'bridgeContracts' | 'chainId' | 'completeTransfer' | 'completeTransferAndUnwrapETH' | 'completeTransferAndUnwrapETHWithPayload' | 'completeTransferWithPayload' | 'createWrapped' | 'encodeAssetMeta' | 'encodeTransfer' | 'encodeTransferWithPayload' | 'evmChainId' | 'finality' | 'governanceActionIsConsumed' | 'governanceChainId' | 'governanceContract' | 'isFork' | 'isInitialized' | 'isTransferCompleted' | 'isWrappedAsset' | 'outstandingBridged' | 'parseAssetMeta' | 'parsePayloadID' | 'parseRecoverChainId' | 'parseRegisterChain' | 'parseTransfer' | 'parseTransferWithPayload' | 'parseUpgrade' | 'registerChain' | 'submitRecoverChainId' | 'tokenImplementation' | 'transferTokens' | 'transferTokensWithPayload' | 'updateWrapped' | 'upgrade' | 'wormhole' | 'wrapAndTransferETH' | 'wrapAndTransferETHWithPayload' | 'wrappedAsset'): FunctionFragment;
getEvent(nameOrSignatureOrTopic: 'AdminChanged' | 'BeaconUpgraded' | 'ContractUpgraded' | 'TransferRedeemed' | 'Upgraded'): EventFragment;
encodeFunctionData(functionFragment: 'WETH', values?: undefined): string;
encodeFunctionData(functionFragment: '_parseTransferCommon', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'attestToken', values: [AddressLike, BigNumberish]): string;
encodeFunctionData(functionFragment: 'bridgeContracts', values: [BigNumberish]): string;
encodeFunctionData(functionFragment: 'chainId', values?: undefined): string;
encodeFunctionData(functionFragment: 'completeTransfer', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'completeTransferAndUnwrapETH', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'completeTransferAndUnwrapETHWithPayload', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'completeTransferWithPayload', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'createWrapped', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'encodeAssetMeta', values: [BridgeStructs.AssetMetaStruct]): string;
encodeFunctionData(functionFragment: 'encodeTransfer', values: [BridgeStructs.TransferStruct]): string;
encodeFunctionData(functionFragment: 'encodeTransferWithPayload', values: [BridgeStructs.TransferWithPayloadStruct]): string;
encodeFunctionData(functionFragment: 'evmChainId', values?: undefined): string;
encodeFunctionData(functionFragment: 'finality', values?: undefined): string;
encodeFunctionData(functionFragment: 'governanceActionIsConsumed', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'governanceChainId', values?: undefined): string;
encodeFunctionData(functionFragment: 'governanceContract', values?: undefined): string;
encodeFunctionData(functionFragment: 'isFork', values?: undefined): string;
encodeFunctionData(functionFragment: 'isInitialized', values: [AddressLike]): string;
encodeFunctionData(functionFragment: 'isTransferCompleted', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'isWrappedAsset', values: [AddressLike]): string;
encodeFunctionData(functionFragment: 'outstandingBridged', values: [AddressLike]): string;
encodeFunctionData(functionFragment: 'parseAssetMeta', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parsePayloadID', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parseRecoverChainId', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parseRegisterChain', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parseTransfer', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parseTransferWithPayload', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'parseUpgrade', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'registerChain', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'submitRecoverChainId', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'tokenImplementation', values?: undefined): string;
encodeFunctionData(functionFragment: 'transferTokens', values: [
AddressLike,
BigNumberish,
BigNumberish,
BytesLike,
BigNumberish,
BigNumberish
]): string;
encodeFunctionData(functionFragment: 'transferTokensWithPayload', values: [
AddressLike,
BigNumberish,
BigNumberish,
BytesLike,
BigNumberish,
BytesLike
]): string;
encodeFunctionData(functionFragment: 'updateWrapped', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'upgrade', values: [BytesLike]): string;
encodeFunctionData(functionFragment: 'wormhole', values?: undefined): string;
encodeFunctionData(functionFragment: 'wrapAndTransferETH', values: [BigNumberish, BytesLike, BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: 'wrapAndTransferETHWithPayload', values: [BigNumberish, BytesLike, BigNumberish, BytesLike]): string;
encodeFunctionData(functionFragment: 'wrappedAsset', values: [BigNumberish, BytesLike]): string;
decodeFunctionResult(functionFragment: 'WETH', data: BytesLike): Result;
decodeFunctionResult(functionFragment: '_parseTransferCommon', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'attestToken', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'bridgeContracts', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'chainId', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'completeTransfer', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'completeTransferAndUnwrapETH', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'completeTransferAndUnwrapETHWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'completeTransferWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'createWrapped', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'encodeAssetMeta', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'encodeTransfer', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'encodeTransferWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'evmChainId', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'finality', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'governanceActionIsConsumed', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'governanceChainId', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'governanceContract', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'isFork', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'isInitialized', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'isTransferCompleted', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'isWrappedAsset', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'outstandingBridged', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseAssetMeta', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parsePayloadID', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseRecoverChainId', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseRegisterChain', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseTransfer', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseTransferWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'parseUpgrade', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'registerChain', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'submitRecoverChainId', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'tokenImplementation', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'transferTokens', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'transferTokensWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'updateWrapped', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'upgrade', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'wormhole', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'wrapAndTransferETH', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'wrapAndTransferETHWithPayload', data: BytesLike): Result;
decodeFunctionResult(functionFragment: 'wrappedAsset', data: BytesLike): Result;
}
export declare namespace AdminChangedEvent {
type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike];
type OutputTuple = [previousAdmin: string, newAdmin: string];
interface OutputObject {
previousAdmin: string;
newAdmin: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace BeaconUpgradedEvent {
type InputTuple = [beacon: AddressLike];
type OutputTuple = [beacon: string];
interface OutputObject {
beacon: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace ContractUpgradedEvent {
type InputTuple = [oldContract: AddressLike, newContract: AddressLike];
type OutputTuple = [oldContract: string, newContract: string];
interface OutputObject {
oldContract: string;
newContract: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace TransferRedeemedEvent {
type InputTuple = [
emitterChainId: BigNumberish,
emitterAddress: BytesLike,
sequence: BigNumberish
];
type OutputTuple = [
emitterChainId: bigint,
emitterAddress: string,
sequence: bigint
];
interface OutputObject {
emitterChainId: bigint;
emitterAddress: string;
sequence: bigint;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export declare namespace UpgradedEvent {
type InputTuple = [implementation: AddressLike];
type OutputTuple = [implementation: string];
interface OutputObject {
implementation: string;
}
type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
type Filter = TypedDeferredTopicFilter<Event>;
type Log = TypedEventLog<Event>;
type LogDescription = TypedLogDescription<Event>;
}
export interface Bridge extends BaseContract {
connect(runner?: ContractRunner | null): Bridge;
waitForDeployment(): Promise<this>;
interface: BridgeInterface;
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>;
WETH: TypedContractMethod<[], [string], 'view'>;
_parseTransferCommon: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferStructOutput
], 'view'>;
attestToken: TypedContractMethod<[
tokenAddress: AddressLike,
nonce: BigNumberish
], [
bigint
], 'payable'>;
bridgeContracts: TypedContractMethod<[
chainId_: BigNumberish
], [
string
], 'view'>;
chainId: TypedContractMethod<[], [bigint], 'view'>;
completeTransfer: TypedContractMethod<[
encodedVm: BytesLike
], [
void
], 'nonpayable'>;
completeTransferAndUnwrapETH: TypedContractMethod<[
encodedVm: BytesLike
], [
void
], 'nonpayable'>;
completeTransferAndUnwrapETHWithPayload: TypedContractMethod<[
encodedVm: BytesLike
], [
string
], 'nonpayable'>;
completeTransferWithPayload: TypedContractMethod<[
encodedVm: BytesLike
], [
string
], 'nonpayable'>;
createWrapped: TypedContractMethod<[
encodedVm: BytesLike
], [
string
], 'nonpayable'>;
encodeAssetMeta: TypedContractMethod<[
meta: BridgeStructs.AssetMetaStruct
], [
string
], 'view'>;
encodeTransfer: TypedContractMethod<[
transfer: BridgeStructs.TransferStruct
], [
string
], 'view'>;
encodeTransferWithPayload: TypedContractMethod<[
transfer: BridgeStructs.TransferWithPayloadStruct
], [
string
], 'view'>;
evmChainId: TypedContractMethod<[], [bigint], 'view'>;
finality: TypedContractMethod<[], [bigint], 'view'>;
governanceActionIsConsumed: TypedContractMethod<[
hash: BytesLike
], [
boolean
], 'view'>;
governanceChainId: TypedContractMethod<[], [bigint], 'view'>;
governanceContract: TypedContractMethod<[], [string], 'view'>;
isFork: TypedContractMethod<[], [boolean], 'view'>;
isInitialized: TypedContractMethod<[impl: AddressLike], [boolean], 'view'>;
isTransferCompleted: TypedContractMethod<[
hash: BytesLike
], [
boolean
], 'view'>;
isWrappedAsset: TypedContractMethod<[token: AddressLike], [boolean], 'view'>;
outstandingBridged: TypedContractMethod<[
token: AddressLike
], [
bigint
], 'view'>;
parseAssetMeta: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.AssetMetaStructOutput
], 'view'>;
parsePayloadID: TypedContractMethod<[encoded: BytesLike], [bigint], 'view'>;
parseRecoverChainId: TypedContractMethod<[
encodedRecoverChainId: BytesLike
], [
BridgeStructs.RecoverChainIdStructOutput
], 'view'>;
parseRegisterChain: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.RegisterChainStructOutput
], 'view'>;
parseTransfer: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferStructOutput
], 'view'>;
parseTransferWithPayload: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferWithPayloadStructOutput
], 'view'>;
parseUpgrade: TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.UpgradeContractStructOutput
], 'view'>;
registerChain: TypedContractMethod<[
encodedVM: BytesLike
], [
void
], 'nonpayable'>;
submitRecoverChainId: TypedContractMethod<[
encodedVM: BytesLike
], [
void
], 'nonpayable'>;
tokenImplementation: TypedContractMethod<[], [string], 'view'>;
transferTokens: TypedContractMethod<[
token: AddressLike,
amount: BigNumberish,
recipientChain: BigNumberish,
recipient: BytesLike,
arbiterFee: BigNumberish,
nonce: BigNumberish
], [
bigint
], 'payable'>;
transferTokensWithPayload: TypedContractMethod<[
token: AddressLike,
amount: BigNumberish,
recipientChain: BigNumberish,
recipient: BytesLike,
nonce: BigNumberish,
payload: BytesLike
], [
bigint
], 'payable'>;
updateWrapped: TypedContractMethod<[
encodedVm: BytesLike
], [
string
], 'nonpayable'>;
upgrade: TypedContractMethod<[encodedVM: BytesLike], [void], 'nonpayable'>;
wormhole: TypedContractMethod<[], [string], 'view'>;
wrapAndTransferETH: TypedContractMethod<[
recipientChain: BigNumberish,
recipient: BytesLike,
arbiterFee: BigNumberish,
nonce: BigNumberish
], [
bigint
], 'payable'>;
wrapAndTransferETHWithPayload: TypedContractMethod<[
recipientChain: BigNumberish,
recipient: BytesLike,
nonce: BigNumberish,
payload: BytesLike
], [
bigint
], 'payable'>;
wrappedAsset: TypedContractMethod<[
tokenChainId: BigNumberish,
tokenAddress: BytesLike
], [
string
], 'view'>;
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
getFunction(nameOrSignature: 'WETH'): TypedContractMethod<[], [string], 'view'>;
getFunction(nameOrSignature: '_parseTransferCommon'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferStructOutput
], 'view'>;
getFunction(nameOrSignature: 'attestToken'): TypedContractMethod<[
tokenAddress: AddressLike,
nonce: BigNumberish
], [
bigint
], 'payable'>;
getFunction(nameOrSignature: 'bridgeContracts'): TypedContractMethod<[chainId_: BigNumberish], [string], 'view'>;
getFunction(nameOrSignature: 'chainId'): TypedContractMethod<[], [bigint], 'view'>;
getFunction(nameOrSignature: 'completeTransfer'): TypedContractMethod<[encodedVm: BytesLike], [void], 'nonpayable'>;
getFunction(nameOrSignature: 'completeTransferAndUnwrapETH'): TypedContractMethod<[encodedVm: BytesLike], [void], 'nonpayable'>;
getFunction(nameOrSignature: 'completeTransferAndUnwrapETHWithPayload'): TypedContractMethod<[encodedVm: BytesLike], [string], 'nonpayable'>;
getFunction(nameOrSignature: 'completeTransferWithPayload'): TypedContractMethod<[encodedVm: BytesLike], [string], 'nonpayable'>;
getFunction(nameOrSignature: 'createWrapped'): TypedContractMethod<[encodedVm: BytesLike], [string], 'nonpayable'>;
getFunction(nameOrSignature: 'encodeAssetMeta'): TypedContractMethod<[
meta: BridgeStructs.AssetMetaStruct
], [
string
], 'view'>;
getFunction(nameOrSignature: 'encodeTransfer'): TypedContractMethod<[
transfer: BridgeStructs.TransferStruct
], [
string
], 'view'>;
getFunction(nameOrSignature: 'encodeTransferWithPayload'): TypedContractMethod<[
transfer: BridgeStructs.TransferWithPayloadStruct
], [
string
], 'view'>;
getFunction(nameOrSignature: 'evmChainId'): TypedContractMethod<[], [bigint], 'view'>;
getFunction(nameOrSignature: 'finality'): TypedContractMethod<[], [bigint], 'view'>;
getFunction(nameOrSignature: 'governanceActionIsConsumed'): TypedContractMethod<[hash: BytesLike], [boolean], 'view'>;
getFunction(nameOrSignature: 'governanceChainId'): TypedContractMethod<[], [bigint], 'view'>;
getFunction(nameOrSignature: 'governanceContract'): TypedContractMethod<[], [string], 'view'>;
getFunction(nameOrSignature: 'isFork'): TypedContractMethod<[], [boolean], 'view'>;
getFunction(nameOrSignature: 'isInitialized'): TypedContractMethod<[impl: AddressLike], [boolean], 'view'>;
getFunction(nameOrSignature: 'isTransferCompleted'): TypedContractMethod<[hash: BytesLike], [boolean], 'view'>;
getFunction(nameOrSignature: 'isWrappedAsset'): TypedContractMethod<[token: AddressLike], [boolean], 'view'>;
getFunction(nameOrSignature: 'outstandingBridged'): TypedContractMethod<[token: AddressLike], [bigint], 'view'>;
getFunction(nameOrSignature: 'parseAssetMeta'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.AssetMetaStructOutput
], 'view'>;
getFunction(nameOrSignature: 'parsePayloadID'): TypedContractMethod<[encoded: BytesLike], [bigint], 'view'>;
getFunction(nameOrSignature: 'parseRecoverChainId'): TypedContractMethod<[
encodedRecoverChainId: BytesLike
], [
BridgeStructs.RecoverChainIdStructOutput
], 'view'>;
getFunction(nameOrSignature: 'parseRegisterChain'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.RegisterChainStructOutput
], 'view'>;
getFunction(nameOrSignature: 'parseTransfer'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferStructOutput
], 'view'>;
getFunction(nameOrSignature: 'parseTransferWithPayload'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.TransferWithPayloadStructOutput
], 'view'>;
getFunction(nameOrSignature: 'parseUpgrade'): TypedContractMethod<[
encoded: BytesLike
], [
BridgeStructs.UpgradeContractStructOutput
], 'view'>;
getFunction(nameOrSignature: 'registerChain'): TypedContractMethod<[encodedVM: BytesLike], [void], 'nonpayable'>;
getFunction(nameOrSignature: 'submitRecoverChainId'): TypedContractMethod<[encodedVM: BytesLike], [void], 'nonpayable'>;
getFunction(nameOrSignature: 'tokenImplementation'): TypedContractMethod<[], [string], 'view'>;
getFunction(nameOrSignature: 'transferTokens'): TypedContractMethod<[
token: AddressLike,
amount: BigNumberish,
recipientChain: BigNumberish,
recipient: BytesLike,
arbiterFee: BigNumberish,
nonce: BigNumberish
], [
bigint
], 'payable'>;
getFunction(nameOrSignature: 'transferTokensWithPayload'): TypedContractMethod<[
token: AddressLike,
amount: BigNumberish,
recipientChain: BigNumberish,
recipient: BytesLike,
nonce: BigNumberish,
payload: BytesLike
], [
bigint
], 'payable'>;
getFunction(nameOrSignature: 'updateWrapped'): TypedContractMethod<[encodedVm: BytesLike], [string], 'nonpayable'>;
getFunction(nameOrSignature: 'upgrade'): TypedContractMethod<[encodedVM: BytesLike], [void], 'nonpayable'>;
getFunction(nameOrSignature: 'wormhole'): TypedContractMethod<[], [string], 'view'>;
getFunction(nameOrSignature: 'wrapAndTransferETH'): TypedContractMethod<[
recipientChain: BigNumberish,
recipient: BytesLike,
arbiterFee: BigNumberish,
nonce: BigNumberish
], [
bigint
], 'payable'>;
getFunction(nameOrSignature: 'wrapAndTransferETHWithPayload'): TypedContractMethod<[
recipientChain: BigNumberish,
recipient: BytesLike,
nonce: BigNumberish,
payload: BytesLike
], [
bigint
], 'payable'>;
getFunction(nameOrSignature: 'wrappedAsset'): TypedContractMethod<[
tokenChainId: BigNumberish,
tokenAddress: BytesLike
], [
string
], 'view'>;
getEvent(key: 'AdminChanged'): TypedContractEvent<AdminChangedEvent.InputTuple, AdminChangedEvent.OutputTuple, AdminChangedEvent.OutputObject>;
getEvent(key: 'BeaconUpgraded'): TypedContractEvent<BeaconUpgradedEvent.InputTuple, BeaconUpgradedEvent.OutputTuple, BeaconUpgradedEvent.OutputObject>;
getEvent(key: 'ContractUpgraded'): TypedContractEvent<ContractUpgradedEvent.InputTuple, ContractUpgradedEvent.OutputTuple, ContractUpgradedEvent.OutputObject>;
getEvent(key: 'TransferRedeemed'): TypedContractEvent<TransferRedeemedEvent.InputTuple, TransferRedeemedEvent.OutputTuple, TransferRedeemedEvent.OutputObject>;
getEvent(key: 'Upgraded'): TypedContractEvent<UpgradedEvent.InputTuple, UpgradedEvent.OutputTuple, UpgradedEvent.OutputObject>;
filters: {
'AdminChanged(address,address)': TypedContractEvent<AdminChangedEvent.InputTuple, AdminChangedEvent.OutputTuple, AdminChangedEvent.OutputObject>;
AdminChanged: TypedContractEvent<AdminChangedEvent.InputTuple, AdminChangedEvent.OutputTuple, AdminChangedEvent.OutputObject>;
'BeaconUpgraded(address)': TypedContractEvent<BeaconUpgradedEvent.InputTuple, BeaconUpgradedEvent.OutputTuple, BeaconUpgradedEvent.OutputObject>;
BeaconUpgraded: TypedContractEvent<BeaconUpgradedEvent.InputTuple, BeaconUpgradedEvent.OutputTuple, BeaconUpgradedEvent.OutputObject>;
'ContractUpgraded(address,address)': TypedContractEvent<ContractUpgradedEvent.InputTuple, ContractUpgradedEvent.OutputTuple, ContractUpgradedEvent.OutputObject>;
ContractUpgraded: TypedContractEvent<ContractUpgradedEvent.InputTuple, ContractUpgradedEvent.OutputTuple, ContractUpgradedEvent.OutputObject>;
'TransferRedeemed(uint16,bytes32,uint64)': TypedContractEvent<TransferRedeemedEvent.InputTuple, TransferRedeemedEvent.OutputTuple, TransferRedeemedEvent.OutputObject>;
TransferRedeemed: TypedContractEvent<TransferRedeemedEvent.InputTuple, TransferRedeemedEvent.OutputTuple, TransferRedeemedEvent.OutputObject>;
'Upgraded(address)': TypedContractEvent<UpgradedEvent.InputTuple, UpgradedEvent.OutputTuple, UpgradedEvent.OutputObject>;
Upgraded: TypedContractEvent<UpgradedEvent.InputTuple, UpgradedEvent.OutputTuple, UpgradedEvent.OutputObject>;
};
}
//# sourceMappingURL=Bridge.d.ts.map