declare const contract: {
    readonly id: 6168;
    readonly address: "0xe3a360efad2f1dabfbfa3c354840dd64c7f9f0fb";
    readonly contract_name: "DuelArenaBattle";
    readonly display_name: "Duel Arena Battle";
    readonly is_deprecated: false;
    readonly is_proxy: false;
    readonly proxy_to: false;
    readonly created_at: 1735578030;
    readonly abi: readonly [{
        readonly type: "constructor";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "_owner";
        }, {
            readonly type: "address";
            readonly name: "_judge";
        }, {
            readonly type: "address";
            readonly name: "_withdrawJudge";
        }];
    }, {
        readonly name: "BattleAlreadyClaimed";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BattleAlreadyMatched";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BattleAlreadyNullified";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BattleNotMatched";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BattleSelfForbidden";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ClaimFromNonParticipant";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "EthFeeNumerTooHigh";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "EthStakeMustMatchMsgValue";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "EthStakeNotUnique";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ExceedsMaximumUniqueStakes";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ExistingStakes";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "FeeTooLow";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ForgedSignature";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ForgedWithdrawSignature";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "InvalidShortString";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "MustHaveStake";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "NotAllowedParticipant";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "OnlyInitiatorCanNullify";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "StringTooLong";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "string";
            readonly name: "str";
        }];
    }, {
        readonly name: "TransferFailed";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "UniqueJudge";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "UserAlreadyWithdrawn";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "WithdrawFromNonParticipant";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ZeroAddressNotAllowed";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BattleCanceled";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "caller";
            readonly indexed: true;
        }];
    }, {
        readonly name: "BattleInitialized";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "playerOne";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "playerTwo";
            readonly indexed: true;
        }, {
            readonly type: "uint256[]";
            readonly name: "assetEnum";
        }, {
            readonly type: "address[]";
            readonly name: "contractAddr";
        }, {
            readonly type: "uint256[]";
            readonly name: "amtOrTokenId";
        }];
    }, {
        readonly name: "BattleJoined";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "playerOne";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "playerTwo";
            readonly indexed: true;
        }, {
            readonly type: "uint256[]";
            readonly name: "assetEnum";
        }, {
            readonly type: "address[]";
            readonly name: "contractAddr";
        }, {
            readonly type: "uint256[]";
            readonly name: "amtOrTokenId";
        }];
    }, {
        readonly name: "BattleNullified";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "caller";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "counterparty";
            readonly indexed: true;
        }];
    }, {
        readonly name: "BattleWon";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "winner";
            readonly indexed: true;
        }];
    }, {
        readonly name: "EIP712DomainChanged";
        readonly type: "event";
        readonly inputs: readonly [];
    }, {
        readonly name: "EthFeeNumerChanged";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "ethFeeNumer";
            readonly indexed: true;
        }];
    }, {
        readonly name: "FeeChanged";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "feeChanged";
            readonly indexed: true;
        }];
    }, {
        readonly name: "JudgeChanged";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "newJudge";
            readonly indexed: true;
        }];
    }, {
        readonly name: "OwnershipTransferred";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "previousOwner";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "newOwner";
            readonly indexed: true;
        }];
    }, {
        readonly name: "WithdrawJudgeChanged";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "newWithdrawJudge";
            readonly indexed: true;
        }];
    }, {
        readonly name: "battles";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
            readonly name: "claimed";
        }, {
            readonly type: "bool";
            readonly name: "matched";
        }, {
            readonly type: "bool";
            readonly name: "nullified";
        }, {
            readonly type: "uint256";
            readonly name: "value";
        }, {
            readonly type: "tuple";
            readonly name: "one";
            readonly components: readonly [{
                readonly type: "bool";
                readonly name: "isWinner";
            }, {
                readonly type: "bool";
                readonly name: "hasWithdrawn";
            }, {
                readonly type: "address";
                readonly name: "user";
            }, {
                readonly type: "tuple[]";
                readonly name: "stakes";
                readonly components: readonly [{
                    readonly type: "uint8";
                    readonly name: "asset";
                }, {
                    readonly type: "address";
                    readonly name: "contractAddr";
                }, {
                    readonly type: "uint256";
                    readonly name: "amtOrTokenId";
                }];
            }];
        }, {
            readonly type: "tuple";
            readonly name: "two";
            readonly components: readonly [{
                readonly type: "bool";
                readonly name: "isWinner";
            }, {
                readonly type: "bool";
                readonly name: "hasWithdrawn";
            }, {
                readonly type: "address";
                readonly name: "user";
            }, {
                readonly type: "tuple[]";
                readonly name: "stakes";
                readonly components: readonly [{
                    readonly type: "uint8";
                    readonly name: "asset";
                }, {
                    readonly type: "address";
                    readonly name: "contractAddr";
                }, {
                    readonly type: "uint256";
                    readonly name: "amtOrTokenId";
                }];
            }];
        }];
    }, {
        readonly name: "calcEthFee";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "changeEthFeeNumer";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "feeNumer";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "changeFee";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "fee";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "changeJudge";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "newJudge";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "changeWithdrawJudge";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "newWithdrawJudge";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "claimProceeds";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }, {
            readonly type: "bytes";
            readonly name: "signature";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "eip712Domain";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "bytes1";
            readonly name: "fields";
        }, {
            readonly type: "string";
            readonly name: "name";
        }, {
            readonly type: "string";
            readonly name: "version";
        }, {
            readonly type: "uint256";
            readonly name: "chainId";
        }, {
            readonly type: "address";
            readonly name: "verifyingContract";
        }, {
            readonly type: "bytes32";
            readonly name: "salt";
        }, {
            readonly type: "uint256[]";
            readonly name: "extensions";
        }];
    }, {
        readonly name: "emergencyRefund";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "emergencyWithdraw";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "payee";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "emergencyWithdrawERC20";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "payee";
        }, {
            readonly type: "address";
            readonly name: "token";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "emergencyWithdrawERC721";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "payee";
        }, {
            readonly type: "address";
            readonly name: "nft";
        }, {
            readonly type: "uint256";
            readonly name: "tokenId";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "escrowAddr";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "ethFeeNumer";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "getBattle";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple";
            readonly components: readonly [{
                readonly type: "bool";
                readonly name: "claimed";
            }, {
                readonly type: "bool";
                readonly name: "matched";
            }, {
                readonly type: "bool";
                readonly name: "nullified";
            }, {
                readonly type: "uint256";
                readonly name: "value";
            }, {
                readonly type: "tuple";
                readonly name: "one";
                readonly components: readonly [{
                    readonly type: "bool";
                    readonly name: "isWinner";
                }, {
                    readonly type: "bool";
                    readonly name: "hasWithdrawn";
                }, {
                    readonly type: "address";
                    readonly name: "user";
                }, {
                    readonly type: "tuple[]";
                    readonly name: "stakes";
                    readonly components: readonly [{
                        readonly type: "uint8";
                        readonly name: "asset";
                    }, {
                        readonly type: "address";
                        readonly name: "contractAddr";
                    }, {
                        readonly type: "uint256";
                        readonly name: "amtOrTokenId";
                    }];
                }];
            }, {
                readonly type: "tuple";
                readonly name: "two";
                readonly components: readonly [{
                    readonly type: "bool";
                    readonly name: "isWinner";
                }, {
                    readonly type: "bool";
                    readonly name: "hasWithdrawn";
                }, {
                    readonly type: "address";
                    readonly name: "user";
                }, {
                    readonly type: "tuple[]";
                    readonly name: "stakes";
                    readonly components: readonly [{
                        readonly type: "uint8";
                        readonly name: "asset";
                    }, {
                        readonly type: "address";
                        readonly name: "contractAddr";
                    }, {
                        readonly type: "uint256";
                        readonly name: "amtOrTokenId";
                    }];
                }];
            }];
        }];
    }, {
        readonly name: "getClaimTypedDataHash";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "tuple";
            readonly name: "claim";
            readonly components: readonly [{
                readonly type: "uint256";
                readonly name: "battleId";
            }, {
                readonly type: "address";
                readonly name: "account";
            }];
        }];
        readonly outputs: readonly [{
            readonly type: "bytes32";
        }];
    }, {
        readonly name: "initBattle";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "challenging";
        }, {
            readonly type: "tuple[]";
            readonly name: "stakes";
            readonly components: readonly [{
                readonly type: "uint8";
                readonly name: "asset";
            }, {
                readonly type: "address";
                readonly name: "contractAddr";
            }, {
                readonly type: "uint256";
                readonly name: "amtOrTokenId";
            }];
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "joinBattle";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }, {
            readonly type: "tuple[]";
            readonly name: "stakes";
            readonly components: readonly [{
                readonly type: "uint8";
                readonly name: "asset";
            }, {
                readonly type: "address";
                readonly name: "contractAddr";
            }, {
                readonly type: "uint256";
                readonly name: "amtOrTokenId";
            }];
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "judge";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "nextBattleId";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "nullifyBattle";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "onERC721Received";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
        }, {
            readonly type: "address";
        }, {
            readonly type: "uint256";
        }, {
            readonly type: "bytes";
        }];
        readonly outputs: readonly [{
            readonly type: "bytes4";
        }];
    }, {
        readonly name: "owner";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "renounceOwnership";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
    }, {
        readonly name: "transferOwnership";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "newOwner";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "withdrawFee";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "withdrawJudge";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "withdrawStake";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "battleId";
        }, {
            readonly type: "bytes";
            readonly name: "signature";
        }];
        readonly outputs: readonly [];
    }];
};

export { contract as default };
