import { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import { FunctionFragment, Result } from "@ethersproject/abi"; import { Listener, Provider } from "@ethersproject/providers"; import { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export interface NativeTokenAdapterInterface extends utils.Interface { contractName: "NativeTokenAdapter"; functions: { "_bridge()": FunctionFragment; "_resourceID()": FunctionFragment; "deposit(uint8,string)": FunctionFragment; "depositToEVM(uint8,address)": FunctionFragment; "depositToEVMWithMessage(uint8,address,uint256,bytes)": FunctionFragment; "depositGeneral(uint8,bytes)": FunctionFragment; }; encodeFunctionData(functionFragment: "_bridge", values?: undefined): string; encodeFunctionData(functionFragment: "_resourceID", values?: undefined): string; encodeFunctionData(functionFragment: "deposit", values: [BigNumberish, string]): string; encodeFunctionData(functionFragment: "depositToEVM", values: [BigNumberish, string]): string; encodeFunctionData(functionFragment: "depositToEVMWithMessage", values: [BigNumberish, string, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "depositGeneral", values: [BigNumberish, BytesLike]): string; decodeFunctionResult(functionFragment: "_bridge", data: BytesLike): Result; decodeFunctionResult(functionFragment: "_resourceID", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositToEVM", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositToEVMWithMessage", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositGeneral", data: BytesLike): Result; events: {}; } export interface NativeTokenAdapter extends BaseContract { contractName: "NativeTokenAdapter"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: NativeTokenAdapterInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { _bridge(overrides?: CallOverrides): Promise<[string]>; _resourceID(overrides?: CallOverrides): Promise<[string]>; deposit(destinationDomainID: BigNumberish, recipientAddress: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositToEVM(destinationDomainID: BigNumberish, recipient: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; /** * Makes a native token deposit with an included message. * @param destinationDomainID ID of destination chain. * @param gas The amount of gas needed to successfully execute the call to recipient on the destination. Fee amount is directly affected by this value. * @param message Arbitrary encoded bytes array that will be passed as the third argument in the ISygmaMessageReceiver(recipient).handleSygmaMessage(_, _, message) call. If you intend to use the DefaultMessageReceiver, make sure to encode the message to comply with the DefaultMessageReceiver.handleSygmaMessage() message decoding implementation. * @param recipient The destination chain contract address that implements the ISygmaMessageReceiver interface. If the recipient is set to zero address then it will be replaced on the destination with the address of the DefaultMessageReceiver which is a generic ISygmaMessageReceiver implementation. */ depositToEVMWithMessage(destinationDomainID: BigNumberish, recipient: string, gas: BigNumberish, message: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositGeneral(destinationDomainID: BigNumberish, depositDataAfterAmount: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; }; _bridge(overrides?: CallOverrides): Promise; _resourceID(overrides?: CallOverrides): Promise; deposit(destinationDomainID: BigNumberish, recipientAddress: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositToEVM(destinationDomainID: BigNumberish, recipient: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; /** * Makes a native token deposit with an included message. * @param destinationDomainID ID of destination chain. * @param gas The amount of gas needed to successfully execute the call to recipient on the destination. Fee amount is directly affected by this value. * @param message Arbitrary encoded bytes array that will be passed as the third argument in the ISygmaMessageReceiver(recipient).handleSygmaMessage(_, _, message) call. If you intend to use the DefaultMessageReceiver, make sure to encode the message to comply with the DefaultMessageReceiver.handleSygmaMessage() message decoding implementation. * @param recipient The destination chain contract address that implements the ISygmaMessageReceiver interface. If the recipient is set to zero address then it will be replaced on the destination with the address of the DefaultMessageReceiver which is a generic ISygmaMessageReceiver implementation. */ depositToEVMWithMessage(destinationDomainID: BigNumberish, recipient: string, gas: BigNumberish, message: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositGeneral(destinationDomainID: BigNumberish, depositDataAfterAmount: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; callStatic: { _bridge(overrides?: CallOverrides): Promise; _resourceID(overrides?: CallOverrides): Promise; deposit(destinationDomainID: BigNumberish, recipientAddress: string, overrides?: CallOverrides): Promise; depositToEVM(destinationDomainID: BigNumberish, recipient: string, overrides?: CallOverrides): Promise; /** * Makes a native token deposit with an included message. * @param destinationDomainID ID of destination chain. * @param gas The amount of gas needed to successfully execute the call to recipient on the destination. Fee amount is directly affected by this value. * @param message Arbitrary encoded bytes array that will be passed as the third argument in the ISygmaMessageReceiver(recipient).handleSygmaMessage(_, _, message) call. If you intend to use the DefaultMessageReceiver, make sure to encode the message to comply with the DefaultMessageReceiver.handleSygmaMessage() message decoding implementation. * @param recipient The destination chain contract address that implements the ISygmaMessageReceiver interface. If the recipient is set to zero address then it will be replaced on the destination with the address of the DefaultMessageReceiver which is a generic ISygmaMessageReceiver implementation. */ depositToEVMWithMessage(destinationDomainID: BigNumberish, recipient: string, gas: BigNumberish, message: BytesLike, overrides?: CallOverrides): Promise; depositGeneral(destinationDomainID: BigNumberish, depositDataAfterAmount: BytesLike, overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { _bridge(overrides?: CallOverrides): Promise; _resourceID(overrides?: CallOverrides): Promise; deposit(destinationDomainID: BigNumberish, recipientAddress: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositToEVM(destinationDomainID: BigNumberish, recipient: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; /** * Makes a native token deposit with an included message. * @param destinationDomainID ID of destination chain. * @param gas The amount of gas needed to successfully execute the call to recipient on the destination. Fee amount is directly affected by this value. * @param message Arbitrary encoded bytes array that will be passed as the third argument in the ISygmaMessageReceiver(recipient).handleSygmaMessage(_, _, message) call. If you intend to use the DefaultMessageReceiver, make sure to encode the message to comply with the DefaultMessageReceiver.handleSygmaMessage() message decoding implementation. * @param recipient The destination chain contract address that implements the ISygmaMessageReceiver interface. If the recipient is set to zero address then it will be replaced on the destination with the address of the DefaultMessageReceiver which is a generic ISygmaMessageReceiver implementation. */ depositToEVMWithMessage(destinationDomainID: BigNumberish, recipient: string, gas: BigNumberish, message: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositGeneral(destinationDomainID: BigNumberish, depositDataAfterAmount: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; }; populateTransaction: { _bridge(overrides?: CallOverrides): Promise; _resourceID(overrides?: CallOverrides): Promise; deposit(destinationDomainID: BigNumberish, recipientAddress: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositToEVM(destinationDomainID: BigNumberish, recipient: string, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; /** * Makes a native token deposit with an included message. * @param destinationDomainID ID of destination chain. * @param gas The amount of gas needed to successfully execute the call to recipient on the destination. Fee amount is directly affected by this value. * @param message Arbitrary encoded bytes array that will be passed as the third argument in the ISygmaMessageReceiver(recipient).handleSygmaMessage(_, _, message) call. If you intend to use the DefaultMessageReceiver, make sure to encode the message to comply with the DefaultMessageReceiver.handleSygmaMessage() message decoding implementation. * @param recipient The destination chain contract address that implements the ISygmaMessageReceiver interface. If the recipient is set to zero address then it will be replaced on the destination with the address of the DefaultMessageReceiver which is a generic ISygmaMessageReceiver implementation. */ depositToEVMWithMessage(destinationDomainID: BigNumberish, recipient: string, gas: BigNumberish, message: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; depositGeneral(destinationDomainID: BigNumberish, depositDataAfterAmount: BytesLike, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; }; }