import { Signer, HDNodeWallet } from 'ethers'; import { Address, SubgraphDeploymentID } from '@graphprotocol/common-ts'; import { Allocation } from './types'; export declare const allocationSignerPrivateKey: (wallet: HDNodeWallet, allocation: Allocation) => string; export declare const allocationSigner: (wallet: HDNodeWallet, allocation: Allocation) => Signer; /** * Derive an allocation ID that is specific to the current epoch, * the deployment ID, the indexer's private key AND that doesn't * collide with any existing allocations; this is achieved by * deriving a key pair from the indexer's private key using the * path [currentEpoch, ..., ]. * * The unique index (number between 0 and 100) is identified by * enumerating all numbers and using the first where the derivation * does not collidate with any of the current allocations; this is * the smallest unique index not currently being used */ export declare const uniqueAllocationID: (indexerMnemonic: string, epoch: number, deployment: SubgraphDeploymentID, existingIDs: Address[]) => { allocationSigner: Signer; allocationId: Address; }; export declare const legacyAllocationIdProof: (signer: Signer, indexerAddress: string, allocationId: string) => Promise; export declare const EIP712_ALLOCATION_ID_PROOF_TYPES: { AllocationIdProof: { name: string; type: string; }[]; }; export declare const horizonAllocationIdProof: (signer: Signer, chainId: number, indexerAddress: Address, allocationId: Address, subgraphServiceAddress: string) => Promise; export declare const tapAllocationIdProof: (signer: Signer, chainId: number, sender: Address, allocationId: Address, escrowContract: Address) => Promise;