import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../../../common";
import type { SumerProxyAdmin, SumerProxyAdminInterface } from "../../../contracts/proxy/SumerProxyAdmin";
type SumerProxyAdminConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class SumerProxyAdmin__factory extends ContractFactory {
    constructor(...args: SumerProxyAdminConstructorParams);
    getDeployTransaction(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<SumerProxyAdmin & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): SumerProxyAdmin__factory;
    static readonly bytecode = "0x60808060405234605a5760008054336001600160a01b0319821681178355916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a361060f90816100608239f35b600080fdfe608080604052600436101561001357600080fd5b60009081803560e01c918263204e1c7a1461046d5750508063715018a6146104135780637eff275e146103825780638da5cb5b1461035b5780639623609d1461024957806399a88ec4146101b4578063f2fde38b146100ee5763f3b7dead1461007b57600080fd5b346100eb5760203660031901126100eb57808060046001600160a01b036100a06104ad565b6040516303e1469160e61b815291165afa6100b9610532565b90156100e75780516020916001600160a01b03916100de919081018401908401610562565b16604051908152f35b5080fd5b80fd5b50346100eb5760203660031901126100eb576101086104ad565b610110610581565b6001600160a01b031680156101605781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b50346100eb5760403660031901126100eb57806101cf6104ad565b6101d76104c8565b906101e0610581565b6001600160a01b031690813b1561024557604051631b2ce7f360e11b81526001600160a01b0390911660048201529082908290602490829084905af1801561023a576102295750f35b81610233916104de565b6100eb5780f35b6040513d84823e3d90fd5b5050fd5b5060603660031901126100eb5761025e6104ad565b906102676104c8565b6044359267ffffffffffffffff8411610353573660238501121561035357836004013561029381610516565b946102a160405196876104de565b81865236602483830101116103575781859260246020930183890137860101526102c9610581565b6001600160a01b0316803b15610353576040805163278f794360e11b81526001600160a01b0390931660048401526024830152835160448301819052835b81811061033d57848085818187816064818a86838284010152601f8019910116810103019134905af1801561023a576102295750f35b8060208092880101516064828701015201610307565b8280fd5b8480fd5b50346100eb57806003193601126100eb57546040516001600160a01b039091168152602090f35b50346100eb5760403660031901126100eb578061039d6104ad565b6103a56104c8565b906103ae610581565b6001600160a01b031690813b15610245576040516308f2839760e41b81526001600160a01b039091166004820152919081908390602490829084905af18015610406576103f85780f35b610401916104de565b388180f35b50604051903d90823e3d90fd5b50346100eb57806003193601126100eb5761042c610581565b80546001600160a01b03198116825581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b8190346104aa5760203660031901126104aa5781906004906001600160a01b036104956104ad565b635c60da1b60e01b8352165afa6100b9610532565b50fd5b600435906001600160a01b03821682036104c357565b600080fd5b602435906001600160a01b03821682036104c357565b90601f8019910116810190811067ffffffffffffffff82111761050057604052565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161050057601f01601f191660200190565b3d1561055d573d9061054382610516565b9161055160405193846104de565b82523d6000602084013e565b606090565b908160209103126104c357516001600160a01b03811681036104c35790565b6000546001600160a01b0316330361059557565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fdfea2646970667358221220358a4bb8e290f97de860e8c573a6a1f8ad9d27ac36a78d0f975fdd227d821b9464736f6c634300081a0033";
    static readonly abi: readonly [{
        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: "contract TransparentUpgradeableProxy";
            readonly name: "proxy";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "newAdmin";
            readonly type: "address";
        }];
        readonly name: "changeProxyAdmin";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract TransparentUpgradeableProxy";
            readonly name: "proxy";
            readonly type: "address";
        }];
        readonly name: "getProxyAdmin";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract TransparentUpgradeableProxy";
            readonly name: "proxy";
            readonly type: "address";
        }];
        readonly name: "getProxyImplementation";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        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: "renounceOwnership";
        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";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract TransparentUpgradeableProxy";
            readonly name: "proxy";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "implementation";
            readonly type: "address";
        }];
        readonly name: "upgrade";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract TransparentUpgradeableProxy";
            readonly name: "proxy";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "implementation";
            readonly type: "address";
        }, {
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }];
        readonly name: "upgradeAndCall";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }];
    static createInterface(): SumerProxyAdminInterface;
    static connect(address: string, runner?: ContractRunner | null): SumerProxyAdmin;
}
export {};
