import { Signer as Signer$1, ContractTransactionResponse } from 'ethersV6'; import { Signer, ContractTransaction } from 'ethers'; import { CHAIN_ID } from '../utils/supportedChains/index.js'; import { GasValue } from '../token-registry-functions/types.js'; import '../utils/gasStation/index.js'; import '../utils/network/index.js'; /** * Revokes a document hash from the DocumentStore contract. * Supports both Ethers v5 and v6 signers. * Supports three types of document stores: * 1. DocumentStore (ERC-165 compliant) * 2. TransferableDocumentStore (ERC-165 compliant) * 3. TT Document Store (legacy, no ERC-165 support - used as fallback) * @param {string} documentStoreAddress - The address of the DocumentStore contract. * @param {string} documentHash - The hash of the document to revoke (must be a valid hex string). * @param {SignerV5 | SignerV6} signer - Signer instance (Ethers v5 or v6) that authorizes the revoke transaction. * @param {RevokeOptions} options - Optional transaction metadata including gas values and chain ID. * @returns {Promise} A promise resolving to the transaction result from the revoke call. * @throws {Error} If the document store address or signer provider is not provided. * @throws {Error} If the document hash is invalid. * @throws {Error} If the `callStatic.revoke` fails as a pre-check. */ interface RevokeOptions { chainId?: CHAIN_ID; maxFeePerGas?: GasValue; maxPriorityFeePerGas?: GasValue; isTransferable?: boolean; } declare const documentStoreRevoke: (documentStoreAddress: string, documentHash: string, signer: Signer | Signer$1, options?: RevokeOptions) => Promise; export { type RevokeOptions, documentStoreRevoke };