import { type ContractRunner } from "ethers";
import type { IInterfold, IInterfoldInterface } from "../../../contracts/interfaces/IInterfold.js";
export declare class IInterfold__factory {
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "size";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "minimum";
            readonly type: "uint256";
        }];
        readonly name: "BelowMinCommitteeSize";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "threshold";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "minimum";
            readonly type: "uint256";
        }];
        readonly name: "BelowMinThreshold";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }];
        readonly name: "BpsExceedsMax";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "CiphertextOutputAlreadyPublished";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "CiphertextOutputNotPublished";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "expiration";
            readonly type: "uint256";
        }];
        readonly name: "CommitteeDutiesCompleted";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "CommitteeSelectionFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "enum IInterfold.CommitteeSize";
            readonly name: "committeeSize";
            readonly type: "uint8";
        }];
        readonly name: "CommitteeSizeNotConfigured";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "enum IInterfold.CommitteeSize";
            readonly name: "committeeSize";
            readonly type: "uint8";
        }];
        readonly name: "CommitteeSizeTooSmall";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "E3AlreadyComplete";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "E3AlreadyFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "E3DoesNotExist";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "E3NotFailed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "E3ProgramNotAllowed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "FailureConditionNotMet";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }];
        readonly name: "FeeTokenNotAllowed";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "inputDeadline";
            readonly type: "uint256";
        }];
        readonly name: "InputDeadlineNotReached";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IBondingRegistry";
            readonly name: "bondingRegistry";
            readonly type: "address";
        }];
        readonly name: "InvalidBondingRegistry";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICiphernodeRegistry";
            readonly name: "ciphernodeRegistry";
            readonly type: "address";
        }];
        readonly name: "InvalidCiphernodeRegistry";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "duration";
            readonly type: "uint256";
        }];
        readonly name: "InvalidDuration";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "InvalidEncryptionScheme";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "feeToken";
            readonly type: "address";
        }];
        readonly name: "InvalidFeeToken";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "InvalidInputDeadline";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "end";
            readonly type: "uint256";
        }];
        readonly name: "InvalidInputDeadlineEnd";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "start";
            readonly type: "uint256";
        }];
        readonly name: "InvalidInputDeadlineStart";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes";
            readonly name: "output";
            readonly type: "bytes";
        }];
        readonly name: "InvalidOutput";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "expected";
            readonly type: "uint8";
        }, {
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "actual";
            readonly type: "uint8";
        }];
        readonly name: "InvalidStage";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidThresholdValues";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "InvalidTimeoutWindow";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "gracePeriodEnds";
            readonly type: "uint256";
        }];
        readonly name: "MarkE3FailedInGracePeriod";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "MinSizeBelowMinThreshold";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "module";
            readonly type: "address";
        }];
        readonly name: "ModuleAlreadyEnabled";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "module";
            readonly type: "address";
        }];
        readonly name: "ModuleNotEnabled";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "NoPaymentToRefund";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "NothingToClaim";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyCiphernodeRegistry";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlyCiphernodeRegistryOrSlashingManager";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "OnlySlashingManager";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }];
        readonly name: "PaymentRequired";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "PlaintextOutputAlreadyPublished";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "ProofRequired";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "threshold";
            readonly type: "uint256";
        }];
        readonly name: "ThresholdTooSmall";
        readonly type: "error";
    }, {
        readonly inputs: readonly [];
        readonly name: "TreasuryRequired";
        readonly type: "error";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "value";
            readonly type: "uint256";
        }];
        readonly name: "UtilizationBpsExceedsMax";
        readonly type: "error";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "bondingRegistry";
            readonly type: "address";
        }];
        readonly name: "BondingRegistrySet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "ciphernodeRegistry";
            readonly type: "address";
        }];
        readonly name: "CiphernodeRegistrySet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "ciphertextOutput";
            readonly type: "bytes";
        }];
        readonly name: "CiphertextOutputPublished";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "CommitteeFinalized";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "CommitteeFormed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "enum IInterfold.CommitteeSize";
            readonly name: "size";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "uint32[2]";
            readonly name: "threshold";
            readonly type: "uint32[2]";
        }];
        readonly name: "CommitteeThresholdsUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "failedAtStage";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "enum IInterfold.FailureReason";
            readonly name: "reason";
            readonly type: "uint8";
        }];
        readonly name: "E3Failed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "paymentAmount";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "honestNodeCount";
            readonly type: "uint256";
        }];
        readonly name: "E3FailureProcessed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "E3ProgramDisabled";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "E3ProgramEnabled";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "e3RefundManager";
            readonly type: "address";
        }];
        readonly name: "E3RefundManagerSet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "seed";
                readonly type: "uint256";
            }, {
                readonly internalType: "enum IInterfold.CommitteeSize";
                readonly name: "committeeSize";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "requestBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256[2]";
                readonly name: "inputWindow";
                readonly type: "uint256[2]";
            }, {
                readonly internalType: "bytes32";
                readonly name: "encryptionSchemeId";
                readonly type: "bytes32";
            }, {
                readonly internalType: "contract IE3Program";
                readonly name: "e3Program";
                readonly type: "address";
            }, {
                readonly internalType: "uint8";
                readonly name: "paramSet";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes";
                readonly name: "customParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "contract IDecryptionVerifier";
                readonly name: "decryptionVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "contract IPkVerifier";
                readonly name: "pkVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "committeePublicKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "ciphertextOutput";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes";
                readonly name: "plaintextOutput";
                readonly type: "bytes";
            }, {
                readonly internalType: "address";
                readonly name: "requester";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "proofAggregationEnabled";
                readonly type: "bool";
            }];
            readonly indexed: false;
            readonly internalType: "struct E3";
            readonly name: "e3";
            readonly type: "tuple";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "E3Requested";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "previousStage";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "newStage";
            readonly type: "uint8";
        }];
        readonly name: "E3StageChanged";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "EncryptionSchemeDisabled";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "EncryptionSchemeEnabled";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bool";
            readonly name: "allowed";
            readonly type: "bool";
        }];
        readonly name: "FeeTokenAllowed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "feeToken";
            readonly type: "address";
        }];
        readonly name: "FeeTokenSet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "inputHash";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "index";
            readonly type: "uint256";
        }];
        readonly name: "InputPublished";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "maxDuration";
            readonly type: "uint256";
        }];
        readonly name: "MaxDurationSet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint8";
            readonly name: "paramSet";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "encodedParams";
            readonly type: "bytes";
        }];
        readonly name: "ParamSetRegistered";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: false;
            readonly internalType: "uint8";
            readonly name: "paramSet";
            readonly type: "uint8";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "previousEncodedParams";
            readonly type: "bytes";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "newEncodedParams";
            readonly type: "bytes";
        }];
        readonly name: "ParamSetUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IPkVerifier";
            readonly name: "pkVerifier";
            readonly type: "address";
        }];
        readonly name: "PkVerifierSet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "plaintextOutput";
            readonly type: "bytes";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "proof";
            readonly type: "bytes";
        }];
        readonly name: "PlaintextOutputPublished";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "keyGenFixedPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "keyGenPerEncryptionProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "coordinationPerPair";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "availabilityPerNodePerSec";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "publicationBase";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "verificationPerProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "protocolTreasury";
                readonly type: "address";
            }, {
                readonly internalType: "uint16";
                readonly name: "marginBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "protocolShareBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "dkgUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "computeUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "decryptUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint32";
                readonly name: "minCommitteeSize";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "minThreshold";
                readonly type: "uint32";
            }];
            readonly indexed: false;
            readonly internalType: "struct IInterfold.PricingConfig";
            readonly name: "config";
            readonly type: "tuple";
        }];
        readonly name: "PricingConfigUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "RewardClaimed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "RewardCredited";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "address[]";
            readonly name: "nodes";
            readonly type: "address[]";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly name: "RewardsDistributed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "SlashedFundsEscrowed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "slashingManager";
            readonly type: "address";
        }];
        readonly name: "SlashingManagerSet";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "dkgWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "computeWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionWindow";
                readonly type: "uint256";
            }];
            readonly indexed: false;
            readonly internalType: "struct IInterfold.E3TimeoutConfig";
            readonly name: "config";
            readonly type: "tuple";
        }];
        readonly name: "TimeoutConfigUpdated";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "treasury";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "TreasuryClaimed";
        readonly type: "event";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "treasury";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "TreasuryCredited";
        readonly type: "event";
    }, {
        readonly inputs: readonly [];
        readonly name: "bondingRegistry";
        readonly outputs: readonly [{
            readonly internalType: "contract IBondingRegistry";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "checkFailureCondition";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "canFail";
            readonly type: "bool";
        }, {
            readonly internalType: "enum IInterfold.FailureReason";
            readonly name: "reason";
            readonly type: "uint8";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "claimReward";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "e3Ids";
            readonly type: "uint256[]";
        }];
        readonly name: "claimRewards";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "disableE3Program";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "disableEncryptionScheme";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IE3Program";
            readonly name: "e3Program";
            readonly type: "address";
        }];
        readonly name: "enableE3Program";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly name: "escrowSlashedFunds";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToken";
        readonly outputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "getDeadlines";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "dkgDeadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "computeDeadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionDeadline";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IInterfold.E3Deadlines";
            readonly name: "deadlines";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "getDecryptionVerifier";
        readonly outputs: readonly [{
            readonly internalType: "contract IDecryptionVerifier";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "getE3";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "seed";
                readonly type: "uint256";
            }, {
                readonly internalType: "enum IInterfold.CommitteeSize";
                readonly name: "committeeSize";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "requestBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256[2]";
                readonly name: "inputWindow";
                readonly type: "uint256[2]";
            }, {
                readonly internalType: "bytes32";
                readonly name: "encryptionSchemeId";
                readonly type: "bytes32";
            }, {
                readonly internalType: "contract IE3Program";
                readonly name: "e3Program";
                readonly type: "address";
            }, {
                readonly internalType: "uint8";
                readonly name: "paramSet";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes";
                readonly name: "customParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "contract IDecryptionVerifier";
                readonly name: "decryptionVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "contract IPkVerifier";
                readonly name: "pkVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "committeePublicKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "ciphertextOutput";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes";
                readonly name: "plaintextOutput";
                readonly type: "bytes";
            }, {
                readonly internalType: "address";
                readonly name: "requester";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "proofAggregationEnabled";
                readonly type: "bool";
            }];
            readonly internalType: "struct E3";
            readonly name: "e3";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "enum IInterfold.CommitteeSize";
                readonly name: "committeeSize";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256[2]";
                readonly name: "inputWindow";
                readonly type: "uint256[2]";
            }, {
                readonly internalType: "contract IE3Program";
                readonly name: "e3Program";
                readonly type: "address";
            }, {
                readonly internalType: "uint8";
                readonly name: "paramSet";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes";
                readonly name: "computeProviderParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "bytes";
                readonly name: "customParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "bool";
                readonly name: "proofAggregationEnabled";
                readonly type: "bool";
            }];
            readonly internalType: "struct IInterfold.E3RequestParams";
            readonly name: "e3Params";
            readonly type: "tuple";
        }];
        readonly name: "getE3Quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "fee";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "getE3Stage";
        readonly outputs: readonly [{
            readonly internalType: "enum IInterfold.E3Stage";
            readonly name: "stage";
            readonly type: "uint8";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "getFailureReason";
        readonly outputs: readonly [{
            readonly internalType: "enum IInterfold.FailureReason";
            readonly name: "reason";
            readonly type: "uint8";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }];
        readonly name: "getPkVerifier";
        readonly outputs: readonly [{
            readonly internalType: "contract IPkVerifier";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getPricingConfig";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "keyGenFixedPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "keyGenPerEncryptionProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "coordinationPerPair";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "availabilityPerNodePerSec";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "publicationBase";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "verificationPerProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "protocolTreasury";
                readonly type: "address";
            }, {
                readonly internalType: "uint16";
                readonly name: "marginBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "protocolShareBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "dkgUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "computeUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "decryptUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint32";
                readonly name: "minCommitteeSize";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "minThreshold";
                readonly type: "uint32";
            }];
            readonly internalType: "struct IInterfold.PricingConfig";
            readonly name: "";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "getRequester";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "requester";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getTimeoutConfig";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "dkgWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "computeWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionWindow";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IInterfold.E3TimeoutConfig";
            readonly name: "config";
            readonly type: "tuple";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }];
        readonly name: "isFeeTokenAllowed";
        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: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "markE3Failed";
        readonly outputs: readonly [{
            readonly internalType: "enum IInterfold.FailureReason";
            readonly name: "reason";
            readonly type: "uint8";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "onCommitteeFinalized";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "committeePublicKey";
            readonly type: "bytes32";
        }];
        readonly name: "onCommitteePublished";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint8";
            readonly name: "reason";
            readonly type: "uint8";
        }];
        readonly name: "onE3Failed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "account";
            readonly type: "address";
        }];
        readonly name: "pendingReward";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "treasury";
            readonly type: "address";
        }, {
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }];
        readonly name: "pendingTreasuryClaim";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }];
        readonly name: "processE3Failure";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes";
            readonly name: "ciphertextOutput";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "proof";
            readonly type: "bytes";
        }];
        readonly name: "publishCiphertextOutput";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "success";
            readonly type: "bool";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes";
            readonly name: "plaintextOutput";
            readonly type: "bytes";
        }, {
            readonly internalType: "bytes";
            readonly name: "proof";
            readonly type: "bytes";
        }];
        readonly name: "publishPlaintextOutput";
        readonly outputs: readonly [{
            readonly internalType: "bool";
            readonly name: "success";
            readonly type: "bool";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "enum IInterfold.CommitteeSize";
                readonly name: "committeeSize";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256[2]";
                readonly name: "inputWindow";
                readonly type: "uint256[2]";
            }, {
                readonly internalType: "contract IE3Program";
                readonly name: "e3Program";
                readonly type: "address";
            }, {
                readonly internalType: "uint8";
                readonly name: "paramSet";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes";
                readonly name: "computeProviderParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "bytes";
                readonly name: "customParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "bool";
                readonly name: "proofAggregationEnabled";
                readonly type: "bool";
            }];
            readonly internalType: "struct IInterfold.E3RequestParams";
            readonly name: "requestParams";
            readonly type: "tuple";
        }];
        readonly name: "request";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "e3Id";
            readonly type: "uint256";
        }, {
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "seed";
                readonly type: "uint256";
            }, {
                readonly internalType: "enum IInterfold.CommitteeSize";
                readonly name: "committeeSize";
                readonly type: "uint8";
            }, {
                readonly internalType: "uint256";
                readonly name: "requestBlock";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256[2]";
                readonly name: "inputWindow";
                readonly type: "uint256[2]";
            }, {
                readonly internalType: "bytes32";
                readonly name: "encryptionSchemeId";
                readonly type: "bytes32";
            }, {
                readonly internalType: "contract IE3Program";
                readonly name: "e3Program";
                readonly type: "address";
            }, {
                readonly internalType: "uint8";
                readonly name: "paramSet";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes";
                readonly name: "customParams";
                readonly type: "bytes";
            }, {
                readonly internalType: "contract IDecryptionVerifier";
                readonly name: "decryptionVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "contract IPkVerifier";
                readonly name: "pkVerifier";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "committeePublicKey";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "ciphertextOutput";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes";
                readonly name: "plaintextOutput";
                readonly type: "bytes";
            }, {
                readonly internalType: "address";
                readonly name: "requester";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "proofAggregationEnabled";
                readonly type: "bool";
            }];
            readonly internalType: "struct E3";
            readonly name: "e3";
            readonly type: "tuple";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IBondingRegistry";
            readonly name: "_bondingRegistry";
            readonly type: "address";
        }];
        readonly name: "setBondingRegistry";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract ICiphernodeRegistry";
            readonly name: "_ciphernodeRegistry";
            readonly type: "address";
        }];
        readonly name: "setCiphernodeRegistry";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "enum IInterfold.CommitteeSize";
            readonly name: "size";
            readonly type: "uint8";
        }, {
            readonly internalType: "uint32[2]";
            readonly name: "threshold";
            readonly type: "uint32[2]";
        }];
        readonly name: "setCommitteeThresholds";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }, {
            readonly internalType: "contract IDecryptionVerifier";
            readonly name: "decryptionVerifier";
            readonly type: "address";
        }];
        readonly name: "setDecryptionVerifier";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "_feeToken";
            readonly type: "address";
        }];
        readonly name: "setFeeToken";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "bool";
            readonly name: "allowed";
            readonly type: "bool";
        }];
        readonly name: "setFeeTokenAllowed";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "_maxDuration";
            readonly type: "uint256";
        }];
        readonly name: "setMaxDuration";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint8";
            readonly name: "paramSet";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes";
            readonly name: "encodedParams";
            readonly type: "bytes";
        }];
        readonly name: "setParamSet";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "encryptionSchemeId";
            readonly type: "bytes32";
        }, {
            readonly internalType: "contract IPkVerifier";
            readonly name: "pkVerifier";
            readonly type: "address";
        }];
        readonly name: "setPkVerifier";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "keyGenFixedPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "keyGenPerEncryptionProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "coordinationPerPair";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "availabilityPerNodePerSec";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionPerNode";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "publicationBase";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "verificationPerProof";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "protocolTreasury";
                readonly type: "address";
            }, {
                readonly internalType: "uint16";
                readonly name: "marginBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "protocolShareBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "dkgUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "computeUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint16";
                readonly name: "decryptUtilizationBps";
                readonly type: "uint16";
            }, {
                readonly internalType: "uint32";
                readonly name: "minCommitteeSize";
                readonly type: "uint32";
            }, {
                readonly internalType: "uint32";
                readonly name: "minThreshold";
                readonly type: "uint32";
            }];
            readonly internalType: "struct IInterfold.PricingConfig";
            readonly name: "config";
            readonly type: "tuple";
        }];
        readonly name: "setPricingConfig";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "uint256";
                readonly name: "dkgWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "computeWindow";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "decryptionWindow";
                readonly type: "uint256";
            }];
            readonly internalType: "struct IInterfold.E3TimeoutConfig";
            readonly name: "config";
            readonly type: "tuple";
        }];
        readonly name: "setTimeoutConfig";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "contract IERC20";
            readonly name: "token";
            readonly type: "address";
        }];
        readonly name: "treasuryClaim";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    static createInterface(): IInterfoldInterface;
    static connect(address: string, runner?: ContractRunner | null): IInterfold;
}
//# sourceMappingURL=IInterfold__factory.d.ts.map