@zkp2p/reclaim-witness-sdk
Version:
<div> <div> <img src="https://raw.githubusercontent.com/reclaimprotocol/.github/main/assets/banners/Attestor-Core.png" /> </div> </div>
513 lines • 24.9 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.taskABI = void 0;
exports.taskABI = [
{
'inputs': [
{
'internalType': 'address',
'name': 'initialOwner',
'type': 'address'
},
{
'internalType': 'address',
'name': '_governanceAddress',
'type': 'address'
}
],
'stateMutability': 'nonpayable',
'type': 'constructor'
},
{
'inputs': [],
'name': 'ECDSAInvalidSignature',
'type': 'error'
},
{
'inputs': [
{
'internalType': 'uint256',
'name': 'length',
'type': 'uint256'
}
],
'name': 'ECDSAInvalidSignatureLength',
'type': 'error'
},
{
'inputs': [
{
'internalType': 'bytes32',
'name': 's',
'type': 'bytes32'
}
],
'name': 'ECDSAInvalidSignatureS',
'type': 'error'
},
{
'inputs': [
{
'internalType': 'address',
'name': 'owner',
'type': 'address'
}
],
'name': 'OwnableInvalidOwner',
'type': 'error'
},
{
'inputs': [
{
'internalType': 'address',
'name': 'account',
'type': 'address'
}
],
'name': 'OwnableUnauthorizedAccount',
'type': 'error'
},
{
'anonymous': false,
'inputs': [
{
'indexed': true,
'internalType': 'address',
'name': 'previousOwner',
'type': 'address'
},
{
'indexed': true,
'internalType': 'address',
'name': 'newOwner',
'type': 'address'
}
],
'name': 'OwnershipTransferred',
'type': 'event'
},
{
'anonymous': false,
'inputs': [
{
'components': [
{
'internalType': 'uint32',
'name': 'id',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampStart',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampEnd',
'type': 'uint32'
},
{
'components': [
{
'internalType': 'address',
'name': 'addr',
'type': 'address'
},
{
'internalType': 'string',
'name': 'host',
'type': 'string'
}
],
'internalType': 'struct ReclaimTask.Attestor[]',
'name': 'attestors',
'type': 'tuple[]'
}
],
'indexed': false,
'internalType': 'struct ReclaimTask.Task',
'name': 'task',
'type': 'tuple'
}
],
'name': 'TaskAdded',
'type': 'event'
},
{
'inputs': [],
'name': 'ZERO_ADDRESS',
'outputs': [
{
'internalType': 'address',
'name': '',
'type': 'address'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'uint32',
'name': '',
'type': 'uint32'
}
],
'name': 'consensusReached',
'outputs': [
{
'internalType': 'bool',
'name': '',
'type': 'bool'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'bytes32',
'name': 'seed',
'type': 'bytes32'
},
{
'internalType': 'uint32',
'name': 'timestamp',
'type': 'uint32'
}
],
'name': 'createNewTaskRequest',
'outputs': [
{
'internalType': 'uint32',
'name': '',
'type': 'uint32'
},
{
'components': [
{
'internalType': 'address',
'name': 'addr',
'type': 'address'
},
{
'internalType': 'string',
'name': 'host',
'type': 'string'
}
],
'internalType': 'struct ReclaimTask.Attestor[]',
'name': '',
'type': 'tuple[]'
}
],
'stateMutability': 'nonpayable',
'type': 'function'
},
{
'inputs': [],
'name': 'currentTask',
'outputs': [
{
'internalType': 'uint32',
'name': '',
'type': 'uint32'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'bytes32',
'name': 'seed',
'type': 'bytes32'
},
{
'internalType': 'uint32',
'name': 'timestamp',
'type': 'uint32'
}
],
'name': 'fetchAttestorsForClaim',
'outputs': [
{
'components': [
{
'internalType': 'address',
'name': 'addr',
'type': 'address'
},
{
'internalType': 'string',
'name': 'host',
'type': 'string'
}
],
'internalType': 'struct ReclaimTask.Attestor[]',
'name': '',
'type': 'tuple[]'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'uint32',
'name': 'task',
'type': 'uint32'
}
],
'name': 'fetchTask',
'outputs': [
{
'components': [
{
'internalType': 'uint32',
'name': 'id',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampStart',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampEnd',
'type': 'uint32'
},
{
'components': [
{
'internalType': 'address',
'name': 'addr',
'type': 'address'
},
{
'internalType': 'string',
'name': 'host',
'type': 'string'
}
],
'internalType': 'struct ReclaimTask.Attestor[]',
'name': 'attestors',
'type': 'tuple[]'
}
],
'internalType': 'struct ReclaimTask.Task',
'name': '',
'type': 'tuple'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [],
'name': 'governanceAddress',
'outputs': [
{
'internalType': 'address',
'name': '',
'type': 'address'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [],
'name': 'owner',
'outputs': [
{
'internalType': 'address',
'name': '',
'type': 'address'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [],
'name': 'renounceOwnership',
'outputs': [],
'stateMutability': 'nonpayable',
'type': 'function'
},
{
'inputs': [],
'name': 'requiredAttestors',
'outputs': [
{
'internalType': 'uint8',
'name': '',
'type': 'uint8'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'uint8',
'name': '_requiredAttestors',
'type': 'uint8'
}
],
'name': 'setRequiredAttestors',
'outputs': [],
'stateMutability': 'nonpayable',
'type': 'function'
},
{
'inputs': [],
'name': 'taskDurationS',
'outputs': [
{
'internalType': 'uint32',
'name': '',
'type': 'uint32'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'uint256',
'name': '',
'type': 'uint256'
}
],
'name': 'tasks',
'outputs': [
{
'internalType': 'uint32',
'name': 'id',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampStart',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'timestampEnd',
'type': 'uint32'
}
],
'stateMutability': 'view',
'type': 'function'
},
{
'inputs': [
{
'internalType': 'address',
'name': 'newOwner',
'type': 'address'
}
],
'name': 'transferOwnership',
'outputs': [],
'stateMutability': 'nonpayable',
'type': 'function'
},
{
'inputs': [
{
'components': [
{
'components': [
{
'internalType': 'string',
'name': 'provider',
'type': 'string'
},
{
'internalType': 'string',
'name': 'parameters',
'type': 'string'
},
{
'internalType': 'string',
'name': 'context',
'type': 'string'
}
],
'internalType': 'struct Claims.ClaimInfo',
'name': 'claimInfo',
'type': 'tuple'
},
{
'components': [
{
'components': [
{
'internalType': 'bytes32',
'name': 'identifier',
'type': 'bytes32'
},
{
'internalType': 'address',
'name': 'owner',
'type': 'address'
},
{
'internalType': 'uint32',
'name': 'timestampS',
'type': 'uint32'
},
{
'internalType': 'uint32',
'name': 'epoch',
'type': 'uint32'
}
],
'internalType': 'struct Claims.CompleteClaimData',
'name': 'claim',
'type': 'tuple'
},
{
'internalType': 'bytes[]',
'name': 'signatures',
'type': 'bytes[]'
}
],
'internalType': 'struct Claims.SignedClaim',
'name': 'signedClaim',
'type': 'tuple'
}
],
'internalType': 'struct ReclaimTask.Proof[]',
'name': 'proofs',
'type': 'tuple[]'
},
{
'internalType': 'uint32',
'name': 'taskId',
'type': 'uint32'
}
],
'name': 'verifyProofs',
'outputs': [
{
'internalType': 'bool',
'name': '',
'type': 'bool'
}
],
'stateMutability': 'payable',
'type': 'function'
}
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza0FCSS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZWNoYWluL2FiaXMvdGFza0FCSS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLE9BQU8sR0FBRztJQUN0QjtRQUNFLFFBQVEsRUFBRTtZQUNWO2dCQUNDLGNBQWMsRUFBRSxTQUFTO2dCQUN6QixNQUFNLEVBQUUsY0FBYztnQkFDdEIsTUFBTSxFQUFFLFNBQVM7YUFDakI7WUFDRDtnQkFDQyxjQUFjLEVBQUUsU0FBUztnQkFDekIsTUFBTSxFQUFFLG9CQUFvQjtnQkFDNUIsTUFBTSxFQUFFLFNBQVM7YUFDakI7U0FDQTtRQUNELGlCQUFpQixFQUFFLFlBQVk7UUFDL0IsTUFBTSxFQUFFLGFBQWE7S0FDdEI7SUFDRDtRQUNFLFFBQVEsRUFBRSxFQUFFO1FBQ1osTUFBTSxFQUFFLHVCQUF1QjtRQUMvQixNQUFNLEVBQUUsT0FBTztLQUNoQjtJQUNEO1FBQ0UsUUFBUSxFQUFFO1lBQ1Y7Z0JBQ0MsY0FBYyxFQUFFLFNBQVM7Z0JBQ3pCLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixNQUFNLEVBQUUsU0FBUzthQUNqQjtTQUNBO1FBQ0QsTUFBTSxFQUFFLDZCQUE2QjtRQUNyQyxNQUFNLEVBQUUsT0FBTztLQUNoQjtJQUNEO1FBQ0UsUUFBUSxFQUFFO1lBQ1Y7Z0JBQ0MsY0FBYyxFQUFFLFNBQVM7Z0JBQ3pCLE1BQU0sRUFBRSxHQUFHO2dCQUNYLE1BQU0sRUFBRSxTQUFTO2FBQ2pCO1NBQ0E7UUFDRCxNQUFNLEVBQUUsd0JBQXdCO1FBQ2hDLE1BQU0sRUFBRSxPQUFPO0tBQ2hCO0lBQ0Q7UUFDRSxRQUFRLEVBQUU7WUFDVjtnQkFDQyxjQUFjLEVBQUUsU0FBUztnQkFDekIsTUFBTSxFQUFFLE9BQU87Z0JBQ2YsTUFBTSxFQUFFLFNBQVM7YUFDakI7U0FDQTtRQUNELE1BQU0sRUFBRSxxQkFBcUI7UUFDN0IsTUFBTSxFQUFFLE9BQU87S0FDaEI7SUFD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