import { type ContractRunner } from "ethers";
import type { IHats, IHatsInterface } from "../../../../../../@excubiae/contracts/contracts/extensions/hats/IHats";
export declare class IHats__factory {
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "admin";
            readonly type: "uint256";
        }, {
            readonly internalType: "string";
            readonly name: "details";
            readonly type: "string";
        }, {
            readonly internalType: "uint32";
            readonly name: "maxSupply";
            readonly type: "uint32";
        }, {
            readonly internalType: "address";
            readonly name: "eligibility";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "toggle";
            readonly type: "address";
        }, {
            readonly internalType: "bool";
            readonly name: "isMutable";
            readonly type: "bool";
        }, {
            readonly internalType: "string";
            readonly name: "imageURI";
            readonly type: "string";
        }];
        readonly name: "createHat";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "hat";
            readonly type: "uint256";
        }];
        readonly name: "isWearerOfHat";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "";
            readonly type: "bool";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "hatId";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "wearer";
            readonly type: "address";
        }];
        readonly name: "mintHat";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "success";
            readonly type: "bool";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "target";
            readonly type: "address";
        }, {
            readonly internalType: "string";
            readonly name: "details";
            readonly type: "string";
        }, {
            readonly internalType: "string";
            readonly name: "imageURI";
            readonly type: "string";
        }];
        readonly name: "mintTopHat";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    static createInterface(): IHatsInterface;
    static connect(address: string, runner?: ContractRunner | null): IHats;
}
//# sourceMappingURL=IHats__factory.d.ts.map