{
  "_format": "hh-sol-artifact-1",
  "contractName": "IDisputeManager",
  "sourceName": "contracts/subgraph-service/IDisputeManager.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerDisputeAlreadyCreated",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerDisputeInConflict",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerDisputeNotInConflict",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "enum IDisputeManager.DisputeStatus",
          "name": "status",
          "type": "uint8"
        }
      ],
      "name": "DisputeManagerDisputeNotPending",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerDisputePeriodNotFinished",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerDisputePeriodZero",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "allocationId",
          "type": "address"
        }
      ],
      "name": "DisputeManagerIndexerNotFound",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerInvalidDispute",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "disputeDeposit",
          "type": "uint256"
        }
      ],
      "name": "DisputeManagerInvalidDisputeDeposit",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint32",
          "name": "cut",
          "type": "uint32"
        }
      ],
      "name": "DisputeManagerInvalidFishermanReward",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint32",
          "name": "maxSlashingCut",
          "type": "uint32"
        }
      ],
      "name": "DisputeManagerInvalidMaxSlashingCut",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "tokensSlash",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "maxTokensSlash",
          "type": "uint256"
        }
      ],
      "name": "DisputeManagerInvalidTokensSlash",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerInvalidZeroAddress",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "relatedDisputeId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerMustAcceptRelatedDispute",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "requestCID1",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "responseCID1",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "subgraphDeploymentId1",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "requestCID2",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "responseCID2",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "subgraphDeploymentId2",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerNonConflictingAttestations",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "subgraphDeploymentId1",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "subgraphDeploymentId2",
          "type": "bytes32"
        }
      ],
      "name": "DisputeManagerNonMatchingSubgraphDeployment",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerNotArbitrator",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerNotFisherman",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerSubgraphServiceNotSet",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "DisputeManagerZeroTokens",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "arbitrator",
          "type": "address"
        }
      ],
      "name": "ArbitratorSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        }
      ],
      "name": "DisputeAccepted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        }
      ],
      "name": "DisputeCancelled",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "disputeDeposit",
          "type": "uint256"
        }
      ],
      "name": "DisputeDepositSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        }
      ],
      "name": "DisputeDrawn",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId1",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId2",
          "type": "bytes32"
        }
      ],
      "name": "DisputeLinked",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint64",
          "name": "disputePeriod",
          "type": "uint64"
        }
      ],
      "name": "DisputePeriodSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        }
      ],
      "name": "DisputeRejected",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint32",
          "name": "fishermanRewardCut",
          "type": "uint32"
        }
      ],
      "name": "FishermanRewardCutSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "allocationId",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "poi",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "blockNumber",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "stakeSnapshot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "cancellableAt",
          "type": "uint256"
        }
      ],
      "name": "IndexingDisputeCreated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "allocationId",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokensSlash",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokensRewards",
          "type": "uint256"
        }
      ],
      "name": "LegacyDisputeCreated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint32",
          "name": "maxSlashingCut",
          "type": "uint32"
        }
      ],
      "name": "MaxSlashingCutSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "tokens",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "subgraphDeploymentId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "attestation",
          "type": "bytes"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "stakeSnapshot",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "cancellableAt",
          "type": "uint256"
        }
      ],
      "name": "QueryDisputeCreated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "subgraphService",
          "type": "address"
        }
      ],
      "name": "SubgraphServiceSet",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "tokensSlash",
          "type": "uint256"
        }
      ],
      "name": "acceptDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "tokensSlash",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "acceptDisputeInConflict",
          "type": "bool"
        },
        {
          "internalType": "uint256",
          "name": "tokensSlashRelated",
          "type": "uint256"
        }
      ],
      "name": "acceptDisputeConflict",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "bytes32",
              "name": "requestCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "responseCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "subgraphDeploymentId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "r",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "s",
              "type": "bytes32"
            },
            {
              "internalType": "uint8",
              "name": "v",
              "type": "uint8"
            }
          ],
          "internalType": "struct IAttestation.State",
          "name": "attestation1",
          "type": "tuple"
        },
        {
          "components": [
            {
              "internalType": "bytes32",
              "name": "requestCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "responseCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "subgraphDeploymentId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "r",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "s",
              "type": "bytes32"
            },
            {
              "internalType": "uint8",
              "name": "v",
              "type": "uint8"
            }
          ],
          "internalType": "struct IAttestation.State",
          "name": "attestation2",
          "type": "tuple"
        }
      ],
      "name": "areConflictingAttestations",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "cancelDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "allocationId",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "fisherman",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "tokensSlash",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "tokensRewards",
          "type": "uint256"
        }
      ],
      "name": "createAndAcceptLegacyDispute",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "allocationId",
          "type": "address"
        },
        {
          "internalType": "bytes32",
          "name": "poi",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "blockNumber",
          "type": "uint256"
        }
      ],
      "name": "createIndexingDispute",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "attestationData",
          "type": "bytes"
        }
      ],
      "name": "createQueryDispute",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "attestationData1",
          "type": "bytes"
        },
        {
          "internalType": "bytes",
          "name": "attestationData2",
          "type": "bytes"
        }
      ],
      "name": "createQueryDisputeConflict",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "drawDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "bytes32",
              "name": "requestCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "responseCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "subgraphDeploymentId",
              "type": "bytes32"
            }
          ],
          "internalType": "struct IAttestation.Receipt",
          "name": "receipt",
          "type": "tuple"
        }
      ],
      "name": "encodeReceipt",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "bytes32",
              "name": "requestCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "responseCID",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "subgraphDeploymentId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "r",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "s",
              "type": "bytes32"
            },
            {
              "internalType": "uint8",
              "name": "v",
              "type": "uint8"
            }
          ],
          "internalType": "struct IAttestation.State",
          "name": "attestation",
          "type": "tuple"
        }
      ],
      "name": "getAttestationIndexer",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getDisputePeriod",
      "outputs": [
        {
          "internalType": "uint64",
          "name": "",
          "type": "uint64"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getFishermanRewardCut",
      "outputs": [
        {
          "internalType": "uint32",
          "name": "",
          "type": "uint32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "indexer",
          "type": "address"
        }
      ],
      "name": "getStakeSnapshot",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "arbitrator",
          "type": "address"
        },
        {
          "internalType": "uint64",
          "name": "disputePeriod",
          "type": "uint64"
        },
        {
          "internalType": "uint256",
          "name": "disputeDeposit",
          "type": "uint256"
        },
        {
          "internalType": "uint32",
          "name": "fishermanRewardCut_",
          "type": "uint32"
        },
        {
          "internalType": "uint32",
          "name": "maxSlashingCut_",
          "type": "uint32"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "isDisputeCreated",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "disputeId",
          "type": "bytes32"
        }
      ],
      "name": "rejectDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "arbitrator",
          "type": "address"
        }
      ],
      "name": "setArbitrator",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "disputeDeposit",
          "type": "uint256"
        }
      ],
      "name": "setDisputeDeposit",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "disputePeriod",
          "type": "uint64"
        }
      ],
      "name": "setDisputePeriod",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint32",
          "name": "fishermanRewardCut_",
          "type": "uint32"
        }
      ],
      "name": "setFishermanRewardCut",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint32",
          "name": "maxSlashingCut_",
          "type": "uint32"
        }
      ],
      "name": "setMaxSlashingCut",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "subgraphService",
          "type": "address"
        }
      ],
      "name": "setSubgraphService",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
