UNPKG

vana-sdk

Version:

A TypeScript library for interacting with Vana Network smart contracts

1,192 lines 130 kB
import { VanaContract } from "../abi"; import { getContractController } from "./contractController"; import { VanaProvider } from "../core/provider"; /** * Base contract client class that can be extended by specific contract clients */ export declare abstract class ContractClient<T extends VanaContract> { protected readonly provider: VanaProvider; protected contract: ReturnType<typeof getContractController<T>>; /** * @param contractName The name of the contract to use * @param provider The VanaProvider instance */ constructor(contractName: T, provider: VanaProvider); /** * Get the raw contract instance * Useful for direct access to all contract methods * @returns The raw contract instance */ getRawContract(): { address: `0x${string}`; abi: { readonly DataRegistry: readonly [{ readonly inputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "constructor"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "target"; readonly type: "address"; }]; readonly name: "AddressEmptyCode"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }]; readonly name: "ERC1967InvalidImplementation"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "ERC1967NonPayable"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "EnforcedPause"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "ExpectedPause"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "FailedInnerCall"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "InvalidInitialization"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NotFileOwner"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NotInitializing"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }]; readonly name: "OwnableInvalidOwner"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "OwnableUnauthorizedAccount"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "UUPSUnauthorizedCallContext"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "slot"; readonly type: "bytes32"; }]; readonly name: "UUPSUnsupportedProxiableUUID"; readonly type: "error"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }]; readonly name: "FileAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint64"; readonly name: "version"; readonly type: "uint64"; }]; readonly name: "Initialized"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferStarted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferred"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "Paused"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "PermissionGranted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "proofIndex"; readonly type: "uint256"; }]; readonly name: "ProofAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "Unpaused"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }]; readonly name: "Upgraded"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "UPGRADE_INTERFACE_VERSION"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "acceptOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }]; readonly name: "addFile"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "key"; readonly type: "string"; }]; readonly name: "addFilePermission"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }, { readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }, { readonly components: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "key"; readonly type: "string"; }]; readonly internalType: "struct IDataRegistry.Permission[]"; readonly name: "permissions"; readonly type: "tuple[]"; }]; readonly name: "addFileWithPermissions"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "bytes"; readonly name: "signature"; readonly type: "bytes"; }, { readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "score"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "dlpId"; readonly type: "uint256"; }, { readonly internalType: "string"; readonly name: "metadata"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "proofUrl"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "instruction"; readonly type: "string"; }]; readonly internalType: "struct IDataRegistry.ProofData"; readonly name: "data"; readonly type: "tuple"; }]; readonly internalType: "struct IDataRegistry.Proof"; readonly name: "proof"; readonly type: "tuple"; }]; readonly name: "addProof"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "filePermissions"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "index"; readonly type: "uint256"; }]; readonly name: "fileProofs"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bytes"; readonly name: "signature"; readonly type: "bytes"; }, { readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "score"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "dlpId"; readonly type: "uint256"; }, { readonly internalType: "string"; readonly name: "metadata"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "proofUrl"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "instruction"; readonly type: "string"; }]; readonly internalType: "struct IDataRegistry.ProofData"; readonly name: "data"; readonly type: "tuple"; }]; readonly internalType: "struct IDataRegistry.Proof"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }]; readonly name: "files"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "id"; readonly type: "uint256"; }, { readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }, { readonly internalType: "uint256"; readonly name: "addedAtBlock"; readonly type: "uint256"; }]; readonly internalType: "struct IDataRegistry.FileResponse"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "filesCount"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }]; readonly name: "initialize"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "pause"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "paused"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "pendingOwner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "proxiableUUID"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "renounceOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "transferOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "unpause"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newImplementation"; readonly type: "address"; }, { readonly internalType: "bytes"; readonly name: "data"; readonly type: "bytes"; }]; readonly name: "upgradeToAndCall"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "pure"; readonly type: "function"; }]; readonly TeePool: readonly [{ readonly inputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "constructor"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "target"; readonly type: "address"; }]; readonly name: "AddressEmptyCode"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "CancelDelayNotPassed"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }]; readonly name: "ERC1967InvalidImplementation"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "ERC1967NonPayable"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "EnforcedPause"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "ExpectedPause"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "FailedInnerCall"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "InsufficientFee"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "InvalidInitialization"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "InvalidJobStatus"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "InvalidJobTee"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "JobCompleted"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NoActiveTee"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NotInitializing"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NotJobOwner"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "NothingToClaim"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "owner"; readonly type: "address"; }]; readonly name: "OwnableInvalidOwner"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "OwnableUnauthorizedAccount"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "ReentrancyGuardReentrantCall"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "TeeAlreadyAdded"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "TeeNotActive"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "TransferFailed"; readonly type: "error"; }, { readonly inputs: readonly []; readonly name: "UUPSUnauthorizedCallContext"; readonly type: "error"; }, { readonly inputs: readonly [{ readonly internalType: "bytes32"; readonly name: "slot"; readonly type: "bytes32"; }]; readonly name: "UUPSUnsupportedProxiableUUID"; readonly type: "error"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }]; readonly name: "Claimed"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint64"; readonly name: "version"; readonly type: "uint64"; }]; readonly name: "Initialized"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }]; readonly name: "JobCanceled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "bidAmount"; readonly type: "uint256"; }]; readonly name: "JobSubmitted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferStarted"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "previousOwner"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "address"; readonly name: "newOwner"; readonly type: "address"; }]; readonly name: "OwnershipTransferred"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "Paused"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "attestator"; readonly type: "address"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }, { readonly indexed: true; readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }]; readonly name: "ProofAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }]; readonly name: "TeeAdded"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }]; readonly name: "TeeRemoved"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "account"; readonly type: "address"; }]; readonly name: "Unpaused"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "address"; readonly name: "implementation"; readonly type: "address"; }]; readonly name: "Upgraded"; readonly type: "event"; }, { readonly inputs: readonly []; readonly name: "UPGRADE_INTERFACE_VERSION"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "acceptOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "activeTeeList"; readonly outputs: readonly [{ readonly internalType: "address[]"; readonly name: ""; readonly type: "address[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "index"; readonly type: "uint256"; }]; readonly name: "activeTeeListAt"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }, { readonly internalType: "enum ITeePool.TeeStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "uint256"; readonly name: "amount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "withdrawnAmount"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "jobsCount"; readonly type: "uint256"; }, { readonly internalType: "string"; readonly name: "publicKey"; readonly type: "string"; }]; readonly internalType: "struct ITeePool.TeeInfo"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "activeTeesCount"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }, { readonly components: readonly [{ readonly internalType: "bytes"; readonly name: "signature"; readonly type: "bytes"; }, { readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "score"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "dlpId"; readonly type: "uint256"; }, { readonly internalType: "string"; readonly name: "metadata"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "proofUrl"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "instruction"; readonly type: "string"; }]; readonly internalType: "struct IDataRegistry.ProofData"; readonly name: "data"; readonly type: "tuple"; }]; readonly internalType: "struct IDataRegistry.Proof"; readonly name: "proof"; readonly type: "tuple"; }]; readonly name: "addProof"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }, { readonly internalType: "string"; readonly name: "url"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "publicKey"; readonly type: "string"; }]; readonly name: "addTee"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "cancelDelay"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }]; readonly name: "cancelJob"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "claim"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "dataRegistry"; readonly outputs: readonly [{ readonly internalType: "contract IDataRegistry"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }]; readonly name: "fileJobIds"; readonly outputs: readonly [{ readonly internalType: "uint256[]"; readonly name: ""; readonly type: "uint256[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "dataRegistryAddress"; readonly type: "address"; }, { readonly internalType: "uint256"; readonly name: "initialCancelDelay"; readonly type: "uint256"; }]; readonly name: "initialize"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }]; readonly name: "isTee"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "jobId"; readonly type: "uint256"; }]; readonly name: "jobs"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "bidAmount"; readonly type: "uint256"; }, { readonly internalType: "enum ITeePool.JobStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "uint256"; readonly name: "addedTimestamp"; readonly type: "uint256"; }, { readonly internalType: "address"; readonly name: "ownerAddress"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }]; readonly internalType: "struct ITeePool.Job"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "jobsCount"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "bytes[]"; readonly name: "data"; readonly type: "bytes[]"; }]; readonly name: "multicall"; readonly outputs: readonly [{ readonly internalType: "bytes[]"; readonly name: "results"; readonly type: "bytes[]"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "pause"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "paused"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: ""; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "pendingOwner"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "proxiableUUID"; readonly outputs: readonly [{ readonly internalType: "bytes32"; readonly name: ""; readonly type: "bytes32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "teeAddress"; readonly type: "address"; }]; readonly name: "removeTee"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "renounceOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "fileId"; readonly type: "uint256"; }]; readonly name: "requestContributionProof"; readonly outputs: readonly []; readonly stateMutability: "payable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly inte