UNPKG

@vechain/vebetterdao-contracts

Version:

Open-source repository that houses the smart contracts powering the decentralized VeBetterDAO on the VeChain Thor blockchain.

1,772 lines (1,671 loc) 65.4 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener, } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod, } from "../../../common"; export declare namespace ChallengeTypesV1 { export type CreateChallengeParamsStruct = { kind: BigNumberish; visibility: BigNumberish; challengeType: BigNumberish; stakeAmount: BigNumberish; startRound: BigNumberish; endRound: BigNumberish; threshold: BigNumberish; numWinners: BigNumberish; appIds: BytesLike[]; invitees: AddressLike[]; title: string; description: string; imageURI: string; metadataURI: string; }; export type CreateChallengeParamsStructOutput = [ kind: bigint, visibility: bigint, challengeType: bigint, stakeAmount: bigint, startRound: bigint, endRound: bigint, threshold: bigint, numWinners: bigint, appIds: string[], invitees: string[], title: string, description: string, imageURI: string, metadataURI: string ] & { kind: bigint; visibility: bigint; challengeType: bigint; stakeAmount: bigint; startRound: bigint; endRound: bigint; threshold: bigint; numWinners: bigint; appIds: string[]; invitees: string[]; title: string; description: string; imageURI: string; metadataURI: string; }; export type ChallengeViewStruct = { challengeId: BigNumberish; kind: BigNumberish; visibility: BigNumberish; challengeType: BigNumberish; status: BigNumberish; settlementMode: BigNumberish; creator: AddressLike; stakeAmount: BigNumberish; startRound: BigNumberish; endRound: BigNumberish; duration: BigNumberish; threshold: BigNumberish; numWinners: BigNumberish; winnersClaimed: BigNumberish; prizePerWinner: BigNumberish; allApps: boolean; totalPrize: BigNumberish; participantCount: BigNumberish; invitedCount: BigNumberish; declinedCount: BigNumberish; selectedAppsCount: BigNumberish; winnersCount: BigNumberish; bestScore: BigNumberish; bestCount: BigNumberish; payoutsClaimed: BigNumberish; title: string; description: string; imageURI: string; metadataURI: string; }; export type ChallengeViewStructOutput = [ challengeId: bigint, kind: bigint, visibility: bigint, challengeType: bigint, status: bigint, settlementMode: bigint, creator: string, stakeAmount: bigint, startRound: bigint, endRound: bigint, duration: bigint, threshold: bigint, numWinners: bigint, winnersClaimed: bigint, prizePerWinner: bigint, allApps: boolean, totalPrize: bigint, participantCount: bigint, invitedCount: bigint, declinedCount: bigint, selectedAppsCount: bigint, winnersCount: bigint, bestScore: bigint, bestCount: bigint, payoutsClaimed: bigint, title: string, description: string, imageURI: string, metadataURI: string ] & { challengeId: bigint; kind: bigint; visibility: bigint; challengeType: bigint; status: bigint; settlementMode: bigint; creator: string; stakeAmount: bigint; startRound: bigint; endRound: bigint; duration: bigint; threshold: bigint; numWinners: bigint; winnersClaimed: bigint; prizePerWinner: bigint; allApps: boolean; totalPrize: bigint; participantCount: bigint; invitedCount: bigint; declinedCount: bigint; selectedAppsCount: bigint; winnersCount: bigint; bestScore: bigint; bestCount: bigint; payoutsClaimed: bigint; title: string; description: string; imageURI: string; metadataURI: string; }; export type InitializationDataStruct = { b3trAddress: AddressLike; veBetterPassportAddress: AddressLike; xAllocationVotingAddress: AddressLike; x2EarnAppsAddress: AddressLike; maxChallengeDuration: BigNumberish; maxSelectedApps: BigNumberish; maxParticipants: BigNumberish; minBetAmount: BigNumberish; }; export type InitializationDataStructOutput = [ b3trAddress: string, veBetterPassportAddress: string, xAllocationVotingAddress: string, x2EarnAppsAddress: string, maxChallengeDuration: bigint, maxSelectedApps: bigint, maxParticipants: bigint, minBetAmount: bigint ] & { b3trAddress: string; veBetterPassportAddress: string; xAllocationVotingAddress: string; x2EarnAppsAddress: string; maxChallengeDuration: bigint; maxSelectedApps: bigint; maxParticipants: bigint; minBetAmount: bigint; }; export type InitializationRoleDataStruct = { admin: AddressLike; upgrader: AddressLike; contractsAddressManager: AddressLike; settingsManager: AddressLike; }; export type InitializationRoleDataStructOutput = [ admin: string, upgrader: string, contractsAddressManager: string, settingsManager: string ] & { admin: string; upgrader: string; contractsAddressManager: string; settingsManager: string; }; } export interface B3TRChallengesV1Interface extends Interface { getFunction( nameOrSignature: | "CONTRACTS_ADDRESS_MANAGER_ROLE" | "DEFAULT_ADMIN_ROLE" | "SETTINGS_MANAGER_ROLE" | "UPGRADER_ROLE" | "UPGRADE_INTERFACE_VERSION" | "addInvites" | "cancelChallenge" | "challengeCount" | "claimChallengePayout" | "claimChallengeRefund" | "claimCreatorSplitWinRefund" | "claimSplitWinPrize" | "completeChallenge" | "createChallenge" | "declineChallenge" | "getChallenge" | "getChallengeDeclined" | "getChallengeInvited" | "getChallengeParticipants" | "getChallengeSelectedApps" | "getChallengeStatus" | "getChallengeWinners" | "getParticipantActions" | "getParticipantStatus" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isInvitationEligible" | "isSplitWinWinner" | "joinChallenge" | "leaveChallenge" | "maxChallengeDuration" | "maxParticipants" | "maxSelectedApps" | "minBetAmount" | "proxiableUUID" | "renounceRole" | "revokeRole" | "setB3TRAddress" | "setMaxChallengeDuration" | "setMaxParticipants" | "setMaxSelectedApps" | "setMinBetAmount" | "setVeBetterPassportAddress" | "setX2EarnAppsAddress" | "setXAllocationVotingAddress" | "supportsInterface" | "syncChallenge" | "upgradeToAndCall" | "version" | "withdraw" ): FunctionFragment; getEvent( nameOrSignatureOrTopic: | "AdminWithdrawal" | "B3TRAddressUpdated" | "ChallengeActivated" | "ChallengeCancelled" | "ChallengeCompleted" | "ChallengeCreated" | "ChallengeDeclined" | "ChallengeInvalidated" | "ChallengeInviteAdded" | "ChallengeJoined" | "ChallengeLeft" | "ChallengePayoutClaimed" | "ChallengeRefundClaimed" | "Initialized" | "MaxChallengeDurationUpdated" | "MaxParticipantsUpdated" | "MaxSelectedAppsUpdated" | "MinBetAmountUpdated" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "SplitWinConfigured" | "SplitWinCreatorRefunded" | "SplitWinPrizeClaimed" | "Upgraded" | "VeBetterPassportAddressUpdated" | "X2EarnAppsAddressUpdated" | "XAllocationVotingAddressUpdated" ): EventFragment; encodeFunctionData( functionFragment: "CONTRACTS_ADDRESS_MANAGER_ROLE", values?: undefined ): string; encodeFunctionData( functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined ): string; encodeFunctionData( functionFragment: "SETTINGS_MANAGER_ROLE", values?: undefined ): string; encodeFunctionData( functionFragment: "UPGRADER_ROLE", values?: undefined ): string; encodeFunctionData( functionFragment: "UPGRADE_INTERFACE_VERSION", values?: undefined ): string; encodeFunctionData( functionFragment: "addInvites", values: [BigNumberish, AddressLike[]] ): string; encodeFunctionData( functionFragment: "cancelChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "challengeCount", values?: undefined ): string; encodeFunctionData( functionFragment: "claimChallengePayout", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "claimChallengeRefund", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "claimCreatorSplitWinRefund", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "claimSplitWinPrize", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "completeChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "createChallenge", values: [ChallengeTypesV1.CreateChallengeParamsStruct] ): string; encodeFunctionData( functionFragment: "declineChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeDeclined", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeInvited", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeParticipants", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeSelectedApps", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeStatus", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getChallengeWinners", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getParticipantActions", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "getParticipantStatus", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "getRoleAdmin", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "grantRole", values: [BytesLike, AddressLike] ): string; encodeFunctionData( functionFragment: "hasRole", values: [BytesLike, AddressLike] ): string; encodeFunctionData( functionFragment: "initialize", values: [ ChallengeTypesV1.InitializationDataStruct, ChallengeTypesV1.InitializationRoleDataStruct ] ): string; encodeFunctionData( functionFragment: "isInvitationEligible", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "isSplitWinWinner", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "joinChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "leaveChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "maxChallengeDuration", values?: undefined ): string; encodeFunctionData( functionFragment: "maxParticipants", values?: undefined ): string; encodeFunctionData( functionFragment: "maxSelectedApps", values?: undefined ): string; encodeFunctionData( functionFragment: "minBetAmount", values?: undefined ): string; encodeFunctionData( functionFragment: "proxiableUUID", values?: undefined ): string; encodeFunctionData( functionFragment: "renounceRole", values: [BytesLike, AddressLike] ): string; encodeFunctionData( functionFragment: "revokeRole", values: [BytesLike, AddressLike] ): string; encodeFunctionData( functionFragment: "setB3TRAddress", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "setMaxChallengeDuration", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setMaxParticipants", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setMaxSelectedApps", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setMinBetAmount", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setVeBetterPassportAddress", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "setX2EarnAppsAddress", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "setXAllocationVotingAddress", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "supportsInterface", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "syncChallenge", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "upgradeToAndCall", values: [AddressLike, BytesLike] ): string; encodeFunctionData(functionFragment: "version", values?: undefined): string; encodeFunctionData( functionFragment: "withdraw", values: [AddressLike, BigNumberish] ): string; decodeFunctionResult( functionFragment: "CONTRACTS_ADDRESS_MANAGER_ROLE", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "SETTINGS_MANAGER_ROLE", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "UPGRADER_ROLE", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "UPGRADE_INTERFACE_VERSION", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "addInvites", data: BytesLike): Result; decodeFunctionResult( functionFragment: "cancelChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "challengeCount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimChallengePayout", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimChallengeRefund", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimCreatorSplitWinRefund", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "claimSplitWinPrize", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "completeChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "createChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "declineChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeDeclined", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeInvited", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeParticipants", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeSelectedApps", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeStatus", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getChallengeWinners", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getParticipantActions", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getParticipantStatus", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getRoleAdmin", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "isInvitationEligible", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "isSplitWinWinner", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "joinChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "leaveChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "maxChallengeDuration", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "maxParticipants", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "maxSelectedApps", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "minBetAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "proxiableUUID", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "renounceRole", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult( functionFragment: "setB3TRAddress", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setMaxChallengeDuration", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setMaxParticipants", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setMaxSelectedApps", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setMinBetAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setVeBetterPassportAddress", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setX2EarnAppsAddress", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setXAllocationVotingAddress", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "supportsInterface", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "syncChallenge", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "upgradeToAndCall", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "version", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; } export namespace AdminWithdrawalEvent { export type InputTuple = [ admin: AddressLike, recipient: AddressLike, amount: BigNumberish ]; export type OutputTuple = [admin: string, recipient: string, amount: bigint]; export interface OutputObject { admin: string; recipient: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace B3TRAddressUpdatedEvent { export type InputTuple = [oldAddress: AddressLike, newAddress: AddressLike]; export type OutputTuple = [oldAddress: string, newAddress: string]; export interface OutputObject { oldAddress: string; newAddress: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeActivatedEvent { export type InputTuple = [challengeId: BigNumberish]; export type OutputTuple = [challengeId: bigint]; export interface OutputObject { challengeId: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeCancelledEvent { export type InputTuple = [challengeId: BigNumberish]; export type OutputTuple = [challengeId: bigint]; export interface OutputObject { challengeId: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeCompletedEvent { export type InputTuple = [ challengeId: BigNumberish, settlementMode: BigNumberish, bestScore: BigNumberish, bestCount: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, settlementMode: bigint, bestScore: bigint, bestCount: bigint ]; export interface OutputObject { challengeId: bigint; settlementMode: bigint; bestScore: bigint; bestCount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeCreatedEvent { export type InputTuple = [ challengeId: BigNumberish, creator: AddressLike, endRound: BigNumberish, kind: BigNumberish, visibility: BigNumberish, challengeType: BigNumberish, stakeAmount: BigNumberish, startRound: BigNumberish, threshold: BigNumberish, allApps: boolean, selectedApps: BytesLike[], title: string, description: string, imageURI: string, metadataURI: string ]; export type OutputTuple = [ challengeId: bigint, creator: string, endRound: bigint, kind: bigint, visibility: bigint, challengeType: bigint, stakeAmount: bigint, startRound: bigint, threshold: bigint, allApps: boolean, selectedApps: string[], title: string, description: string, imageURI: string, metadataURI: string ]; export interface OutputObject { challengeId: bigint; creator: string; endRound: bigint; kind: bigint; visibility: bigint; challengeType: bigint; stakeAmount: bigint; startRound: bigint; threshold: bigint; allApps: boolean; selectedApps: string[]; title: string; description: string; imageURI: string; metadataURI: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeDeclinedEvent { export type InputTuple = [ challengeId: BigNumberish, participant: AddressLike ]; export type OutputTuple = [challengeId: bigint, participant: string]; export interface OutputObject { challengeId: bigint; participant: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeInvalidatedEvent { export type InputTuple = [challengeId: BigNumberish]; export type OutputTuple = [challengeId: bigint]; export interface OutputObject { challengeId: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeInviteAddedEvent { export type InputTuple = [challengeId: BigNumberish, invitee: AddressLike]; export type OutputTuple = [challengeId: bigint, invitee: string]; export interface OutputObject { challengeId: bigint; invitee: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeJoinedEvent { export type InputTuple = [ challengeId: BigNumberish, participant: AddressLike ]; export type OutputTuple = [challengeId: bigint, participant: string]; export interface OutputObject { challengeId: bigint; participant: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeLeftEvent { export type InputTuple = [ challengeId: BigNumberish, participant: AddressLike ]; export type OutputTuple = [challengeId: bigint, participant: string]; export interface OutputObject { challengeId: bigint; participant: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengePayoutClaimedEvent { export type InputTuple = [ challengeId: BigNumberish, account: AddressLike, amount: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, account: string, amount: bigint ]; export interface OutputObject { challengeId: bigint; account: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace ChallengeRefundClaimedEvent { export type InputTuple = [ challengeId: BigNumberish, account: AddressLike, amount: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, account: string, amount: bigint ]; export interface OutputObject { challengeId: bigint; account: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace InitializedEvent { export type InputTuple = [version: BigNumberish]; export type OutputTuple = [version: bigint]; export interface OutputObject { version: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace MaxChallengeDurationUpdatedEvent { export type InputTuple = [oldValue: BigNumberish, newValue: BigNumberish]; export type OutputTuple = [oldValue: bigint, newValue: bigint]; export interface OutputObject { oldValue: bigint; newValue: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace MaxParticipantsUpdatedEvent { export type InputTuple = [oldValue: BigNumberish, newValue: BigNumberish]; export type OutputTuple = [oldValue: bigint, newValue: bigint]; export interface OutputObject { oldValue: bigint; newValue: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace MaxSelectedAppsUpdatedEvent { export type InputTuple = [oldValue: BigNumberish, newValue: BigNumberish]; export type OutputTuple = [oldValue: bigint, newValue: bigint]; export interface OutputObject { oldValue: bigint; newValue: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace MinBetAmountUpdatedEvent { export type InputTuple = [oldValue: BigNumberish, newValue: BigNumberish]; export type OutputTuple = [oldValue: bigint, newValue: bigint]; export interface OutputObject { oldValue: bigint; newValue: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RoleAdminChangedEvent { export type InputTuple = [ role: BytesLike, previousAdminRole: BytesLike, newAdminRole: BytesLike ]; export type OutputTuple = [ role: string, previousAdminRole: string, newAdminRole: string ]; export interface OutputObject { role: string; previousAdminRole: string; newAdminRole: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RoleGrantedEvent { export type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; export type OutputTuple = [role: string, account: string, sender: string]; export interface OutputObject { role: string; account: string; sender: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RoleRevokedEvent { export type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; export type OutputTuple = [role: string, account: string, sender: string]; export interface OutputObject { role: string; account: string; sender: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace SplitWinConfiguredEvent { export type InputTuple = [ challengeId: BigNumberish, numWinners: BigNumberish, prizePerWinner: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, numWinners: bigint, prizePerWinner: bigint ]; export interface OutputObject { challengeId: bigint; numWinners: bigint; prizePerWinner: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace SplitWinCreatorRefundedEvent { export type InputTuple = [ challengeId: BigNumberish, creator: AddressLike, amount: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, creator: string, amount: bigint ]; export interface OutputObject { challengeId: bigint; creator: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace SplitWinPrizeClaimedEvent { export type InputTuple = [ challengeId: BigNumberish, winner: AddressLike, prize: BigNumberish, actions: BigNumberish, winnersClaimed: BigNumberish ]; export type OutputTuple = [ challengeId: bigint, winner: string, prize: bigint, actions: bigint, winnersClaimed: bigint ]; export interface OutputObject { challengeId: bigint; winner: string; prize: bigint; actions: bigint; winnersClaimed: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace UpgradedEvent { export type InputTuple = [implementation: AddressLike]; export type OutputTuple = [implementation: string]; export interface OutputObject { implementation: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace VeBetterPassportAddressUpdatedEvent { export type InputTuple = [oldAddress: AddressLike, newAddress: AddressLike]; export type OutputTuple = [oldAddress: string, newAddress: string]; export interface OutputObject { oldAddress: string; newAddress: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace X2EarnAppsAddressUpdatedEvent { export type InputTuple = [oldAddress: AddressLike, newAddress: AddressLike]; export type OutputTuple = [oldAddress: string, newAddress: string]; export interface OutputObject { oldAddress: string; newAddress: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace XAllocationVotingAddressUpdatedEvent { export type InputTuple = [oldAddress: AddressLike, newAddress: AddressLike]; export type OutputTuple = [oldAddress: string, newAddress: string]; export interface OutputObject { oldAddress: string; newAddress: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export interface B3TRChallengesV1 extends BaseContract { connect(runner?: ContractRunner | null): B3TRChallengesV1; waitForDeployment(): Promise<this>; interface: B3TRChallengesV1Interface; queryFilter<TCEvent extends TypedContractEvent>( event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEventLog<TCEvent>>>; queryFilter<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEventLog<TCEvent>>>; on<TCEvent extends TypedContractEvent>( event: TCEvent, listener: TypedListener<TCEvent> ): Promise<this>; on<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent> ): Promise<this>; once<TCEvent extends TypedContractEvent>( event: TCEvent, listener: TypedListener<TCEvent> ): Promise<this>; once<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent> ): Promise<this>; listeners<TCEvent extends TypedContractEvent>( event: TCEvent ): Promise<Array<TypedListener<TCEvent>>>; listeners(eventName?: string): Promise<Array<Listener>>; removeAllListeners<TCEvent extends TypedContractEvent>( event?: TCEvent ): Promise<this>; CONTRACTS_ADDRESS_MANAGER_ROLE: TypedContractMethod<[], [string], "view">; DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; SETTINGS_MANAGER_ROLE: TypedContractMethod<[], [string], "view">; UPGRADER_ROLE: TypedContractMethod<[], [string], "view">; UPGRADE_INTERFACE_VERSION: TypedContractMethod<[], [string], "view">; addInvites: TypedContractMethod< [challengeId: BigNumberish, invitees: AddressLike[]], [void], "nonpayable" >; cancelChallenge: TypedContractMethod< [challengeId: BigNumberish], [void], "nonpayable" >; challengeCount: TypedContractMethod<[], [bigint], "view">; claimChallengePayout: TypedContractMethod< [challengeId: BigNumberish], [bigint], "nonpayable" >; claimChallengeRefund: TypedContractMethod< [challengeId: BigNumberish], [bigint], "nonpayable" >; claimCreatorSplitWinRefund: TypedContractMethod< [challengeId: BigNumberish], [bigint], "nonpayable" >; claimSplitWinPrize: TypedContractMethod< [challengeId: BigNumberish], [bigint], "nonpayable" >; completeChallenge: TypedContractMethod< [challengeId: BigNumberish], [void], "nonpayable" >; createChallenge: TypedContractMethod< [params: ChallengeTypesV1.CreateChallengeParamsStruct], [bigint], "nonpayable" >; declineChallenge: TypedContractMethod< [challengeId: BigNumberish], [void], "nonpayable" >; getChallenge: TypedContractMethod< [challengeId: BigNumberish], [ChallengeTypesV1.ChallengeViewStructOutput], "view" >; getChallengeDeclined: TypedContractMethod< [challengeId: BigNumberish], [string[]], "view" >; getChallengeInvited: TypedContractMethod< [challengeId: BigNumberish], [string[]], "view" >; getChallengeParticipants: TypedContractMethod< [challengeId: BigNumberish], [string[]], "view" >; getChallengeSelectedApps: TypedContractMethod< [challengeId: BigNumberish], [string[]], "view" >; getChallengeStatus: TypedContractMethod< [challengeId: BigNumberish], [bigint], "view" >; getChallengeWinners: TypedContractMethod< [challengeId: BigNumberish], [string[]], "view" >; getParticipantActions: TypedContractMethod< [challengeId: BigNumberish, participant: AddressLike], [bigint], "view" >; getParticipantStatus: TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [bigint], "view" >; getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; grantRole: TypedContractMethod< [role: BytesLike, account: AddressLike], [void], "nonpayable" >; hasRole: TypedContractMethod< [role: BytesLike, account: AddressLike], [boolean], "view" >; initialize: TypedContractMethod< [ data: ChallengeTypesV1.InitializationDataStruct, roles: ChallengeTypesV1.InitializationRoleDataStruct ], [void], "nonpayable" >; isInvitationEligible: TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [boolean], "view" >; isSplitWinWinner: TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [boolean], "view" >; joinChallenge: TypedContractMethod< [challengeId: BigNumberish], [void], "nonpayable" >; leaveChallenge: TypedContractMethod< [challengeId: BigNumberish], [void], "nonpayable" >; maxChallengeDuration: TypedContractMethod<[], [bigint], "view">; maxParticipants: TypedContractMethod<[], [bigint], "view">; maxSelectedApps: TypedContractMethod<[], [bigint], "view">; minBetAmount: TypedContractMethod<[], [bigint], "view">; proxiableUUID: TypedContractMethod<[], [string], "view">; renounceRole: TypedContractMethod< [role: BytesLike, callerConfirmation: AddressLike], [void], "nonpayable" >; revokeRole: TypedContractMethod< [role: BytesLike, account: AddressLike], [void], "nonpayable" >; setB3TRAddress: TypedContractMethod< [newAddress: AddressLike], [void], "nonpayable" >; setMaxChallengeDuration: TypedContractMethod< [newValue: BigNumberish], [void], "nonpayable" >; setMaxParticipants: TypedContractMethod< [newValue: BigNumberish], [void], "nonpayable" >; setMaxSelectedApps: TypedContractMethod< [newValue: BigNumberish], [void], "nonpayable" >; setMinBetAmount: TypedContractMethod< [newValue: BigNumberish], [void], "nonpayable" >; setVeBetterPassportAddress: TypedContractMethod< [newAddress: AddressLike], [void], "nonpayable" >; setX2EarnAppsAddress: TypedContractMethod< [newAddress: AddressLike], [void], "nonpayable" >; setXAllocationVotingAddress: TypedContractMethod< [newAddress: AddressLike], [void], "nonpayable" >; supportsInterface: TypedContractMethod< [interfaceId: BytesLike], [boolean], "view" >; syncChallenge: TypedContractMethod< [challengeId: BigNumberish], [bigint], "nonpayable" >; upgradeToAndCall: TypedContractMethod< [newImplementation: AddressLike, data: BytesLike], [void], "payable" >; version: TypedContractMethod<[], [string], "view">; withdraw: TypedContractMethod< [to: AddressLike, amount: BigNumberish], [void], "nonpayable" >; getFunction<T extends ContractMethod = ContractMethod>( key: string | FunctionFragment ): T; getFunction( nameOrSignature: "CONTRACTS_ADDRESS_MANAGER_ROLE" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "DEFAULT_ADMIN_ROLE" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "SETTINGS_MANAGER_ROLE" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "UPGRADER_ROLE" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "UPGRADE_INTERFACE_VERSION" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "addInvites" ): TypedContractMethod< [challengeId: BigNumberish, invitees: AddressLike[]], [void], "nonpayable" >; getFunction( nameOrSignature: "cancelChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "challengeCount" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "claimChallengePayout" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "nonpayable">; getFunction( nameOrSignature: "claimChallengeRefund" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "nonpayable">; getFunction( nameOrSignature: "claimCreatorSplitWinRefund" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "nonpayable">; getFunction( nameOrSignature: "claimSplitWinPrize" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "nonpayable">; getFunction( nameOrSignature: "completeChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "createChallenge" ): TypedContractMethod< [params: ChallengeTypesV1.CreateChallengeParamsStruct], [bigint], "nonpayable" >; getFunction( nameOrSignature: "declineChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "getChallenge" ): TypedContractMethod< [challengeId: BigNumberish], [ChallengeTypesV1.ChallengeViewStructOutput], "view" >; getFunction( nameOrSignature: "getChallengeDeclined" ): TypedContractMethod<[challengeId: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getChallengeInvited" ): TypedContractMethod<[challengeId: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getChallengeParticipants" ): TypedContractMethod<[challengeId: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getChallengeSelectedApps" ): TypedContractMethod<[challengeId: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getChallengeStatus" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getChallengeWinners" ): TypedContractMethod<[challengeId: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getParticipantActions" ): TypedContractMethod< [challengeId: BigNumberish, participant: AddressLike], [bigint], "view" >; getFunction( nameOrSignature: "getParticipantStatus" ): TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [bigint], "view" >; getFunction( nameOrSignature: "getRoleAdmin" ): TypedContractMethod<[role: BytesLike], [string], "view">; getFunction( nameOrSignature: "grantRole" ): TypedContractMethod< [role: BytesLike, account: AddressLike], [void], "nonpayable" >; getFunction( nameOrSignature: "hasRole" ): TypedContractMethod< [role: BytesLike, account: AddressLike], [boolean], "view" >; getFunction( nameOrSignature: "initialize" ): TypedContractMethod< [ data: ChallengeTypesV1.InitializationDataStruct, roles: ChallengeTypesV1.InitializationRoleDataStruct ], [void], "nonpayable" >; getFunction( nameOrSignature: "isInvitationEligible" ): TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [boolean], "view" >; getFunction( nameOrSignature: "isSplitWinWinner" ): TypedContractMethod< [challengeId: BigNumberish, account: AddressLike], [boolean], "view" >; getFunction( nameOrSignature: "joinChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "leaveChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "maxChallengeDuration" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "maxParticipants" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "maxSelectedApps" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "minBetAmount" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "proxiableUUID" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "renounceRole" ): TypedContractMethod< [role: BytesLike, callerConfirmation: AddressLike], [void], "nonpayable" >; getFunction( nameOrSignature: "revokeRole" ): TypedContractMethod< [role: BytesLike, account: AddressLike], [void], "nonpayable" >; getFunction( nameOrSignature: "setB3TRAddress" ): TypedContractMethod<[newAddress: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "setMaxChallengeDuration" ): TypedContractMethod<[newValue: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setMaxParticipants" ): TypedContractMethod<[newValue: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setMaxSelectedApps" ): TypedContractMethod<[newValue: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setMinBetAmount" ): TypedContractMethod<[newValue: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setVeBetterPassportAddress" ): TypedContractMethod<[newAddress: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "setX2EarnAppsAddress" ): TypedContractMethod<[newAddress: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "setXAllocationVotingAddress" ): TypedContractMethod<[newAddress: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "supportsInterface" ): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; getFunction( nameOrSignature: "syncChallenge" ): TypedContractMethod<[challengeId: BigNumberish], [bigint], "nonpayable">; getFunction( nameOrSignature: "upgradeToAndCall" ): TypedContractMethod< [newImplementation: AddressLike, data: BytesLike], [void], "payable" >; getFunction( nameOrSignature: "version" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "withdraw" ): TypedContractMethod< [to: AddressLike, amount: BigNumberish], [void], "nonpayable" >; getEvent( key: "AdminWithdrawal" ): TypedContractEvent< AdminWithdrawalEvent.InputTuple, AdminWithdrawalEvent.OutputTuple, AdminWithdrawalEvent.OutputObject >; getEvent( key: "B3TRAddressUpdated" ): TypedContractEvent< B3TRAddressUpdatedEvent.InputTuple, B3TRAddressUpdatedEvent.OutputTuple, B3TRAddressUpdatedEvent.OutputObject >; getEvent( key: "ChallengeActivated" ): TypedContractEvent< ChallengeActivatedEvent.InputTuple, ChallengeActivatedEvent.OutputTuple, ChallengeActivatedEvent.OutputObject >; getEvent( key: "ChallengeCancelled" ): TypedContractEvent< ChallengeCancelledEvent.InputTuple, ChallengeCancelledEvent.OutputTuple, ChallengeCancelledEvent.OutputObject >; getEvent( key: "ChallengeCompleted" ): TypedContractEvent< ChallengeCompletedEvent.InputTuple, ChallengeCompletedEvent.OutputTuple, ChallengeCompletedEvent.OutputObject >; getEvent( key: "ChallengeCreated" ): TypedContractEvent< Challen