import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../../../../common";
import type { API3Adapter, API3AdapterInterface } from "../../../../contracts/Oracle/API3Adapter.sol/API3Adapter";
type API3AdapterConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class API3Adapter__factory extends ContractFactory {
    constructor(...args: API3AdapterConstructorParams);
    getDeployTransaction(_correlatedToken: AddressLike, _underlyingToken: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(_correlatedToken: AddressLike, _underlyingToken: AddressLike, overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<API3Adapter & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): API3Adapter__factory;
    static readonly bytecode = "0x6080346100f357601f61056c38819003918201601f19168301916001600160401b038311848410176100f85780849260409485528339810103126100f357610052602061004b8361010e565b920161010e565b50600380546001600160a01b0319908116909155600280549182163390811790915560405192916001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3600180546001600160a01b03929092166001600160a01b031992831617905560008054731111111111111111111111111111111111111111921691909117905561044990816101238239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b03821682036100f35756fe608080604052600436101561001357600080fd5b60003560e01c9081633ba0b9a9146102b457508063715018a61461024d57806379ba5097146101815780638da5cb5b14610158578063b95528941461010d578063e30c3978146100e45763f2fde38b1461006c57600080fd5b346100df5760203660031901126100df576004356001600160a01b038116908190036100df5761009a6103bb565b600380546001600160a01b031916821790556002546001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e22700600080a3005b600080fd5b346100df5760003660031901126100df576003546040516001600160a01b039091168152602090f35b346100df5760203660031901126100df576004356001600160a01b038116908190036100df5761013b6103bb565b6bffffffffffffffffffffffff60a01b6004541617600455600080f35b346100df5760003660031901126100df576002546040516001600160a01b039091168152602090f35b346100df5760003660031901126100df57600354336001600160a01b03909116036101f657600380546001600160a01b0319908116909155600280543392811683179091556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b60405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b6064820152608490fd5b346100df5760003660031901126100df576102666103bb565b600380546001600160a01b03199081169091556002805491821690556000906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b346100df5760003660031901126100df576004546001600160a01b031680156103aa57816004816040936315f789a960e21b82525afa90811561039e57600091610320575b50601b0b6000811261031057602090604051908152f35b62bfc92160e01b60005260046000fd5b9060403d604011610397575b601f8101601f1916830167ffffffffffffffff81118482101761038357604091849183528101031261037c5781519182601b0b830361037f576020015163ffffffff81160361037c5750816102f9565b80fd5b5080fd5b634e487b7160e01b83526041600452602483fd5b503d61032c565b6040513d6000823e3d90fd5b632e7973df60e21b60005260046000fd5b6002546001600160a01b031633036103cf57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fdfea2646970667358221220f245b00ecae9ce59db0edb8c5567c9b085813a9f2dc43557fafc77709d1c5bcc64736f6c634300081a0033";
    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 stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidPrice";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidProxy";
        readonly type: "error";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "previousOwner";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "newOwner";
            readonly type: "address";
        }];
        readonly name: "OwnershipTransferStarted";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "previousOwner";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "newOwner";
            readonly type: "address";
        }];
        readonly name: "OwnershipTransferred";
        readonly type: "event";
    }, {
        readonly inputs: readonly [];
        readonly name: "acceptOwnership";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        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: "owner";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pendingOwner";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "renounceOwnership";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_proxy";
            readonly type: "address";
        }];
        readonly name: "setAPI3Proxy";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "newOwner";
            readonly type: "address";
        }];
        readonly name: "transferOwnership";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    static createInterface(): API3AdapterInterface;
    static connect(address: string, runner?: ContractRunner | null): API3Adapter;
}
export {};
