import { Signer, ContractFactory, Overrides } from "ethers"; import { Provider, TransactionRequest } from "@ethersproject/providers"; import type { NativeTokenHandler, NativeTokenHandlerInterface } from "../NativeTokenHandler"; declare type NativeTokenHandlerConstructorParams = [signer?: Signer] | ConstructorParameters; export declare class NativeTokenHandler__factory extends ContractFactory { constructor(...args: NativeTokenHandlerConstructorParams); deploy(bridgeAddress: string, nativeTokenAdapterAddress: string, defaultMessageReceiver: string, overrides?: Overrides & { from?: string | Promise; }): Promise; getDeployTransaction(bridgeAddress: string, nativeTokenAdapterAddress: string, defaultMessageReceiver: string, overrides?: Overrides & { from?: string | Promise; }): TransactionRequest; attach(address: string): NativeTokenHandler; connect(signer: Signer): NativeTokenHandler__factory; static readonly contractName: "NativeTokenHandler"; readonly contractName: "NativeTokenHandler"; static readonly bytecode = "0x60e060405234801561001057600080fd5b50604051620014153803806200141583398101604081905261003191610069565b6001600160a01b03928316608052821660a0521660c0526100ac565b80516001600160a01b038116811461006457600080fd5b919050565b60008060006060848603121561007e57600080fd5b6100878461004d565b92506100956020850161004d565b91506100a36040850161004d565b90509250925092565b60805160a05160c051611324620000f1600039600081816102b101526104580152600081816101ae01526109f601526000818161017a01526106ca01526113246000f3fe6080604052600436106100a05760003560e01c8063a2f21f8a11610064578063a2f21f8a1461019c578063ac607c21146101d0578063b07e54bb14610272578063d904f9571461029f578063e248cff2146102d3578063fa8675b0146102f357600080fd5b806307b7ed99146100ac5780630968f264146100ce5780630a6d55d8146100ee57806330f08abd14610141578063318c136e1461016857600080fd5b366100a757005b600080fd5b3480156100b857600080fd5b506100cc6100c7366004610d8e565b610313565b005b3480156100da57600080fd5b506100cc6100e9366004610dc1565b610327565b3480156100fa57600080fd5b50610124610109366004610e72565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561014d57600080fd5b50610156601281565b60405160ff9091168152602001610138565b34801561017457600080fd5b506101247f000000000000000000000000000000000000000000000000000000000000000081565b3480156101a857600080fd5b506101247f000000000000000000000000000000000000000000000000000000000000000081565b3480156101dc57600080fd5b5061023a6101eb366004610d8e565b600160208181526000928352604092839020805492810154845180860190955260029091015460ff81811615158652610100918290048116938601939093529293828216939091049091169084565b6040805194855292151560208086019190915291151592840192909252815115156060840152015160ff16608082015260a001610138565b34801561027e57600080fd5b5061029261028d366004610ed4565b61043c565b6040516101389190610f7d565b3480156102ab57600080fd5b506101247f000000000000000000000000000000000000000000000000000000000000000081565b3480156102df57600080fd5b506102926102ee366004610f90565b6104e5565b3480156102ff57600080fd5b506100cc61030e366004610ed4565b610647565b61031b6106bf565b61032481610739565b50565b61032f6106bf565b60008080471161035257604051631e9acf1760e31b815260040160405180910390fd5b828060200190518101906103669190610fdc565b909350915061037f90506001600160a01b0383166107ab565b506000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146103cd576040519150601f19603f3d011682016040523d82523d6000602084013e6103d2565b606091505b50509050806103f45760405163176bfe0760e11b815260040160405180910390fd5b604080516001600160a01b0385168152602081018490527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b65910160405180910390a150505050565b60606104466106bf565b600061045483850185610e72565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b0316146104b8576040516313053d9360e21b81526001600160a01b03861660048201526024015b60405180910390fd5b6000868152602081905260409020546001600160a01b03166104da81836107d8565b979650505050505050565b60606104ef6106bf565b60006104fc8585856108c6565b905060028160a0015160028111156105165761051661101f565b14156105275760c001519050610640565b60808101516105395761c35060808201525b600080610570836080015184606001516101008660c0015187604001516001600160a01b0316610b4490949392919063ffffffff16565b9150915081158015610588575061058681610bcf565b155b156105a65760405163176bfe0760e11b815260040160405180910390fd5b604080840151606085015182516001600160a01b03909216825260208201527f8c9a4f13b67cb64d7c6aa1ae0c9bf07694af521a28b93e7060020810ab4bc59f910160405180910390a18251604080850151602080870151925161062b949391016001600160a01b039384168152919092166020820152604081019190915260600190565b60405160208183030381529060405293505050505b9392505050565b61064f6106bf565b60008481526020818152604080832080546001600160a01b0319166001600160a01b03881690811790915583526001918290529091208581558101805461ffff1916909117905580156106b95760006106a88284611035565b60f81c90506106b78482610bea565b505b50505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146107375760405162461bcd60e51b815260206004820152601e60248201527f73656e646572206d7573742062652062726964676520636f6e7472616374000060448201526064016104af565b565b6001600160a01b0381166000908152600160208190526040909120015460ff16610781576040516325df77c560e11b81526001600160a01b03821660048201526024016104af565b6001600160a01b0316600090815260016020819052604090912001805461ff001916610100179055565b60006001600160a01b0382166107d45760405163d92e233d60e01b815260040160405180910390fd5b5090565b6001600160a01b038216600090815260016020908152604080832081518083019092526002015460ff8082161515808452610100909204169282019290925260609290916108395760405180602001604052806000815250925050506108c0565b601260ff16826020015160ff1610610878576012826020015161085c919061107b565b61086790600a611182565b6108719085611191565b90506108a0565b602082015161088890601261107b565b61089390600a611182565b61089d90856111b3565b90505b604080516020810183905201604051602081830303815290604052925050505b92915050565b6109066040805160e08101825260008082526020820181905291810182905260608101829052608081018290529060a08201908152602001606081525090565b600080610915848601866111d2565b9092509050610925816014610c94565b5060006109366054604087896111f4565b61093f9161121e565b60008881526020819052604081205460609290921c92506001600160a01b039091169061096c8286610cc7565b90506054600080606081610981856040611251565b8c1115610add578c8c8690809261099a939291906111f4565b8101906109a791906111d2565b90945092506109b7604086611251565b94506000841180156109c95750600083115b80156109de57508b6109db8685611251565b11155b15610a8b575060016001600160a01b038816610a18577f000000000000000000000000000000000000000000000000000000000000000097505b634726ca4360e01b87878f8f8990888b610a329190611251565b92610a3f939291906111f4565b604051602401610a529493929190611269565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529150610add565b506040805160048152602481018252602080820180516001600160e01b03166356a6881560e11b1790529151600292610acb928a928c928f9291016112b1565b60405160208183030381529060405291505b6040518060e00160405280886001600160a01b031681526020018b8152602001896001600160a01b03168152602001878152602001858152602001826002811115610b2a57610b2a61101f565b815260200192909252509c9b505050505050505050505050565b6000606060008060008661ffff1667ffffffffffffffff811115610b6a57610b6a610dab565b6040519080825280601f01601f191660200182016040528015610b94576020820181803683370190505b5090506000808751602089018b8e8ef191503d925086831115610bb5578692505b828152826000602083013e90999098509650505050505050565b805160009015610be25781518083602001fd5b506000919050565b6001600160a01b0382166000908152600160208190526040909120015460ff16610c32576040516325df77c560e11b81526001600160a01b03831660048201526024016104af565b604080518082018252600180825260ff93841660208084019182526001600160a01b039690961660009081529190955291909120905160029091018054935161ffff1990941691151561ff001916919091176101009390921692909202179055565b6000818314610cc05760405163c230690360e01b815260048101849052602481018390526044016104af565b5090919050565b6001600160a01b038216600090815260016020908152604080832081518083019092526002015460ff8082161515808452610100909204169282019290925290610d1457829150506108c0565b601260ff16816020015160ff1610610d545760128160200151610d37919061107b565b610d4290600a611182565b610d4c90846111b3565b9150506108c0565b6020810151610d6490601261107b565b610d6f90600a611182565b610d4c9084611191565b6001600160a01b038116811461032457600080fd5b600060208284031215610da057600080fd5b813561064081610d79565b634e487b7160e01b600052604160045260246000fd5b600060208284031215610dd357600080fd5b813567ffffffffffffffff80821115610deb57600080fd5b818401915084601f830112610dff57600080fd5b813581811115610e1157610e11610dab565b604051601f8201601f19908116603f01168101908382118183101715610e3957610e39610dab565b81604052828152876020848701011115610e5257600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208284031215610e8457600080fd5b5035919050565b60008083601f840112610e9d57600080fd5b50813567ffffffffffffffff811115610eb557600080fd5b602083019150836020828501011115610ecd57600080fd5b9250929050565b60008060008060608587031215610eea57600080fd5b843593506020850135610efc81610d79565b9250604085013567ffffffffffffffff811115610f1857600080fd5b610f2487828801610e8b565b95989497509550505050565b6000815180845260005b81811015610f5657602081850181015186830182015201610f3a565b81811115610f68576000602083870101525b50601f01601f19169290920160200192915050565b6020815260006106406020830184610f30565b600080600060408486031215610fa557600080fd5b83359250602084013567ffffffffffffffff811115610fc357600080fd5b610fcf86828701610e8b565b9497909650939450505050565b600080600060608486031215610ff157600080fd5b8351610ffc81610d79565b602085015190935061100d81610d79565b80925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fd5b6001600160f81b0319813581811691600185101561105d5780818660010360031b1b83161692505b505092915050565b634e487b7160e01b600052601160045260246000fd5b600060ff821660ff84168082101561109557611095611065565b90039392505050565b600181815b808511156110d95781600019048211156110bf576110bf611065565b808516156110cc57918102915b93841c93908002906110a3565b509250929050565b6000826110f0575060016108c0565b816110fd575060006108c0565b8160018114611113576002811461111d57611139565b60019150506108c0565b60ff84111561112e5761112e611065565b50506001821b6108c0565b5060208310610133831016604e8410600b841016171561115c575081810a6108c0565b611166838361109e565b806000190482111561117a5761117a611065565b029392505050565b600061064060ff8416836110e1565b6000826111ae57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156111cd576111cd611065565b500290565b600080604083850312156111e557600080fd5b50508035926020909101359150565b6000808585111561120457600080fd5b8386111561121157600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff19813581811691601485101561105d5760149490940360031b84901b1690921692915050565b6000821982111561126457611264611065565b500190565b6001600160a01b0385168152602081018490526060604082018190528101829052818360808301376000818301608090810191909152601f909201601f191601019392505050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906112e490830184610f30565b969550505050505056fea2646970667358221220d6aeab0916d4f99b3cb520c36d12cdb75caf1199b63cf4e8aff86ca428db188d64736f6c634300080b0033"; static readonly abi: ({ inputs: { internalType: string; name: string; type: string; }[]; stateMutability: string; type: string; name?: undefined; anonymous?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; anonymous?: undefined; outputs?: undefined; } | { anonymous: boolean; inputs: { indexed: boolean; internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; outputs: ({ internalType: string; name: string; type: string; components?: undefined; } | { components: { internalType: string; name: string; type: string; }[]; internalType: string; name: string; type: string; })[]; stateMutability: string; type: string; anonymous?: undefined; } | { stateMutability: string; type: string; inputs?: undefined; name?: undefined; anonymous?: undefined; outputs?: undefined; })[]; static createInterface(): NativeTokenHandlerInterface; static connect(address: string, signerOrProvider: Signer | Provider): NativeTokenHandler; } export {};