import { type Hex } from 'viem'; import { Action, EntityManagerConfig, EntityManagerService, EntityManagerTransactionReceipt, EntityType, ManageEntityOptions } from './types'; export declare class EntityManagerClient implements EntityManagerService { private readonly audiusWalletClient; private readonly logger; private readonly chainId; private readonly contractAddress; private readonly endpoint; constructor(config_: EntityManagerConfig); /** * Calls the manage entity method on chain to update some data */ manageEntity({ userId, entityType, entityId, action, metadata, confirmationTimeout, skipConfirmation }: ManageEntityOptions): Promise; /** * Confirms a write by polling for the block to be indexed by API */ confirmWrite({ blockHash, blockNumber, confirmationTimeout, confirmationPollingInterval }: { blockHash: string; blockNumber: number; confirmationTimeout?: number; confirmationPollingInterval?: number; }): Promise; /** * Decodes the manage entity function data * @param data - The encoded function data * @returns The decoded function data */ decodeManageEntity(data: Hex): { userId: bigint; entityType: EntityType; entityId: bigint; action: Action; metadata: string; nonce: `0x${string}`; subjectSig: `0x${string}`; }; /** * Gets the domain used for proxy signing for the entity manager * @returns The domain object */ private getDomain; /** * Recovers the signer address from the encoded ABI * @param encodedABI - The encoded ABI * @returns The recovered signer address */ recoverSigner(encodedABI: Hex): Promise<`0x${string}`>; }