import type { PromiseOrValue } from "../../../../common";
import type { MockPendlePtOracle, MockPendlePtOracleInterface } from "../../../../contracts/oracles/mocks/MockPendlePtOracle";
import type { Provider, TransactionRequest } from "@ethersproject/providers";
import { Signer, ContractFactory, Overrides } from "ethers";
type MockPendlePtOracleConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class MockPendlePtOracle__factory extends ContractFactory {
    constructor(...args: MockPendlePtOracleConstructorParams);
    deploy(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<MockPendlePtOracle>;
    getDeployTransaction(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): TransactionRequest;
    attach(address: string): MockPendlePtOracle;
    connect(signer: Signer): MockPendlePtOracle__factory;
    static readonly bytecode = "0x6080604052348015600f57600080fd5b50601733601b565b606b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6104ae8061007a6000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80638da5cb5b1161005b5780638da5cb5b146100f6578063abca0eab1461010f578063b861c67c14610122578063f2fde38b1461013557600080fd5b80636784827514610082578063715018a6146100c3578063873e9600146100cd575b600080fd5b6100ad6100903660046102c6565b600160209081526000928352604080842090915290825290205481565b6040516100ba919061030b565b60405180910390f35b6100cb610148565b005b6100e76100db3660046102c6565b60008060019250925092565b6040516100ba9392919061032b565b6000546001600160a01b03166040516100ba9190610364565b6100ad61011d3660046102c6565b61015c565b6100cb610130366004610383565b61018d565b6100cb6101433660046103d3565b6101c2565b610150610205565b61015a600061022f565b565b6001600160a01b038216600090815260016020908152604080832063ffffffff851684529091529020545b92915050565b610195610205565b6001600160a01b03909216600090815260016020908152604080832063ffffffff90941683529290522055565b6101ca610205565b6001600160a01b0381166101f95760405162461bcd60e51b81526004016101f0906103f4565b60405180910390fd5b6102028161022f565b50565b6000546001600160a01b0316331461015a5760405162461bcd60e51b81526004016101f09061043e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006001600160a01b038216610187565b6102998161027f565b811461020257600080fd5b803561018781610290565b63ffffffff8116610299565b8035610187816102af565b600080604083850312156102dc576102dc600080fd5b60006102e885856102a4565b92505060206102f9858286016102bb565b9150509250929050565b805b82525050565b602081016101878284610303565b801515610305565b61ffff8116610305565b606081016103398286610319565b6103466020830185610321565b6103536040830184610319565b949350505050565b6103058161027f565b60208101610187828461035b565b80610299565b803561018781610372565b60008060006060848603121561039b5761039b600080fd5b60006103a786866102a4565b93505060206103b8868287016102bb565b92505060406103c986828701610378565b9150509250925092565b6000602082840312156103e8576103e8600080fd5b600061035384846102a4565b6020808252810161018781602681527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160208201526564647265737360d01b604082015260600190565b60208082528181019081527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260408301526060820161018756fea2646970667358221220a0a9d233e29571fcde8a63fab0aaf85494b550cfddd063b4e5bfc0d60ece6b0d64736f6c63430008190033";
    static readonly abi: readonly [{
        readonly inputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        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 internalType: "address";
            readonly name: "market";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "duration";
            readonly type: "uint32";
        }];
        readonly name: "getOracleState";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "increaseCardinalityRequired";
            readonly type: "bool";
        }, {
            readonly internalType: "uint16";
            readonly name: "cardinalityRequired";
            readonly type: "uint16";
        }, {
            readonly internalType: "bool";
            readonly name: "oldestObservationSatisfied";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "market";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "duration";
            readonly type: "uint32";
        }];
        readonly name: "getPtToAssetRate";
        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 internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "";
            readonly type: "uint32";
        }];
        readonly name: "ptToAssetRate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        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: "market";
            readonly type: "address";
        }, {
            readonly internalType: "uint32";
            readonly name: "duration";
            readonly type: "uint32";
        }, {
            readonly internalType: "uint256";
            readonly name: "rate";
            readonly type: "uint256";
        }];
        readonly name: "setPtToAssetRate";
        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(): MockPendlePtOracleInterface;
    static connect(address: string, signerOrProvider: Signer | Provider): MockPendlePtOracle;
}
export {};
//# sourceMappingURL=MockPendlePtOracle__factory.d.ts.map