import { Signer, ContractFactory, Overrides } from "ethers";
import type { Provider, TransactionRequest } from "@ethersproject/providers";
import type { DonationBox, DonationBoxInterface } from "../DonationBox";
type DonationBoxConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class DonationBox__factory extends ContractFactory {
    constructor(...args: DonationBoxConstructorParams);
    deploy(overrides?: Overrides & {
        from?: string;
    }): Promise<DonationBox>;
    getDeployTransaction(overrides?: Overrides & {
        from?: string;
    }): TransactionRequest;
    attach(address: string): DonationBox;
    connect(signer: Signer): DonationBox__factory;
    static readonly bytecode = "0x608080604052346059575f8054336001600160a01b0319821681178355916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3610320908161005e8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c908163715018a6146102265781638da5cb5b1461020457508063f2fde38b146101845763f3fef3a314610048575f80fd5b3461013c57604036600319011261013c576004356001600160a01b03811680910361013c5761007561028a565b6040515f806020830163a9059cbb60e01b81523360248501526024356044850152604484526100a560648561029d565b604051936100b460408661029d565b602085527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65646020860152519082865af13d15610177573d9067ffffffffffffffff821161016357604051610126949092610118601f8201601f19166020018561029d565b83523d5f602085013e6102bf565b8051908115918215610140575b50501561013c57005b5f80fd5b819250906020918101031261013c5760200151801515810361013c575f80610133565b634e487b7160e01b5f52604160045260245ffd5b91610126926060916102bf565b3461013c57602036600319011261013c576004356001600160a01b03811680910361013c576101b161028a565b801561013c576001600160a01b035f548273ffffffffffffffffffffffffffffffffffffffff198216175f55167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b3461013c575f36600319011261013c576020906001600160a01b035f54168152f35b3461013c575f36600319011261013c5761023e61028a565b5f6001600160a01b03815473ffffffffffffffffffffffffffffffffffffffff1981168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b6001600160a01b035f5416330361013c57565b90601f8019910116810190811067ffffffffffffffff82111761016357604052565b919250156102db578151156102d2575090565b3b1561013c5790565b50805190811561013c57602001fdfea26469706673582212201599abe8d67ef129ea7b740727c3050bd5ff3fc0efd05707667feeec0709c1f864736f6c634300081e0033";
    static readonly abi: readonly [{
        readonly type: "function";
        readonly name: "owner";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "renounceOwnership";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "transferOwnership";
        readonly inputs: readonly [{
            readonly name: "newOwner";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "withdraw";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly internalType: "contract IERC20";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "OwnershipTransferred";
        readonly inputs: readonly [{
            readonly name: "previousOwner";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newOwner";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }];
    static createInterface(): DonationBoxInterface;
    static connect(address: string, signerOrProvider: Signer | Provider): DonationBox;
}
export {};
