import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../../../../common";
import type { LayerBankAdapter, LayerBankAdapterInterface } from "../../../../contracts/Oracle/LayerBankAdapter.sol/LayerBankAdapter";
type LayerBankAdapterConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class LayerBankAdapter__factory extends ContractFactory {
    constructor(...args: LayerBankAdapterConstructorParams);
    getDeployTransaction(_correlatedToken: AddressLike, _underlyingToken: AddressLike, _feedAddr: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(_correlatedToken: AddressLike, _underlyingToken: AddressLike, _feedAddr: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<LayerBankAdapter & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): LayerBankAdapter__factory;
    static readonly bytecode = "0x60803460a357601f61022f38819003918201601f19168301916001600160401b0383118484101760a85780849260609460405283398101031260a35760428160be565b906057604060516020840160be565b920160be565b600180546001600160a01b039485166001600160a01b03199182161790915560008054938516938216939093179092556002805491909316911617905560405161015d90816100d28239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b038216820360a35756fe608080604052600436101561001357600080fd5b60003560e01c90816307391adb146101035750633ba0b9a91461003557600080fd5b346100fe5760003660031901126100fe5760025460015460405163b95ed06f60e01b81526001600160a01b0391821660048201529160209183916024918391165afa9081156100f257600091610091575b602082604051908152f35b60203d6020116100eb575b601f8101601f1916820167ffffffffffffffff8111838210176100d7576020918391604052810103126100d3575190506020610086565b5080fd5b634e487b7160e01b84526041600452602484fd5b503d61009c565b6040513d6000823e3d90fd5b600080fd5b346100fe5760003660031901126100fe576002546001600160a01b03168152602090f3fea2646970667358221220926b11b089496d6cec2f93bec2e894c20ae431b36d0603d3b6c499f990dc5e8264736f6c634300081a0033";
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_correlatedToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_underlyingToken";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_feedAddr";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "exchangeRate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feedAddr";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }];
    static createInterface(): LayerBankAdapterInterface;
    static connect(address: string, runner?: ContractRunner | null): LayerBankAdapter;
}
export {};
