import { KeccakResponses, ResponseTree, ValidationWitnessResponse } from "../.."; import { BigNumberish } from "ethers"; import { InternalConfig } from "../../core/internalConfig"; import { Query } from "../../core/query"; export declare class QueryV1 extends Query { /** * @param config Axiom internal configuration parameters */ constructor(config: InternalConfig); new(...args: any): void; /** * Calls the API to get the QueryData rows for a given Query. Requires either one of * keccakQueryResponse or queryHash to be specified. * @param keccakQueryResponse (optional) A keccak256 hash of the entire query data blob * @param queryHash (optional) A keccak256 hash of the entire query data blob * @returns QueryData[] | undefined */ private getDataForQuery; /** * Gets parsed transaction logs from a transaction hash * @param txHash Transaction hash from the `sendQuery` call * @returns (ethers.LogDescription | null)[] */ private getTxLogsForTxHash; /** * Gets parsed transaction description from a transaction hash * @param txHash Transaction hash from the `sendQuery` call * @returns ethers.TransactionDescription | null */ private getTxDecodedForTxHash; /** * Gets a `ResponseTree` for a given queryHash * @param keccakQueryResponse A keccak256 hash calculated from the Query * @returns ResponseTree */ getResponseTreeForKeccakQueryResponse(keccakQueryResponse: string): Promise; /** * Gets a `ResponseTree` for a given queryHash * @param queryHash A keccak256 hash of the entire query data blob * @returns ResponseTree */ getResponseTreeForQueryHash(queryHash: string): Promise; /** * Gets a ValidationWitnessResponse, which contains the blockResponse, accountResponse, * and storageResponse * @param responseTree A `ResponseTree` object * @param blockNumber The block number to get the witness for * @param address (optional) the address to get the witness for * @param slot (optional) the slot to get the witness for * @returns ValidationWitnessResponse | undefined */ getValidationWitness(responseTree: ResponseTree, blockNumber: number, address?: string, slot?: BigNumberish): ValidationWitnessResponse | undefined; /** * Gets a keccakQueryResponse from the transaction hash (from the `sendQuery` call) * @param txHash Transaction hash from the `sendQuery` call * @returns keccakQueryResponse | undefined */ getKeccakQueryResponseFromTxHash(txHash: string): Promise; /** * Gets a queryHash from a the transaction hash (from the `sendQuery` call) * @param txHash Transaction hash from the `sendQuery` call * @returns keccakQueryResponse | undefined */ getQueryHashFromTxHash(txHash: string): Promise; /** * Gets a ResponseTree by passing in the transaction hash (from the `sendQuery` call) * @param txHash Transaction hash from the `sendQuery` call * @returns ResponseTree */ getResponseTreeFromTxHash(txHash: string): Promise; /** * Convenience function for getting the `KeccakResponses` from a `ResponseTree` * @param responseTree A `ResponseTree` object * @returns KeccakResponses */ getResponses(responseTree: ResponseTree): KeccakResponses; /** * A passthrough function that identifies the hash function used in `getBlockResponse` * @param blockHash Block hash of the block to use * @param blockNumber Block number of the block to use * @returns string - Keccak hash of the block response */ getKeccakBlockResponse(blockHash: string, blockNumber: number): string; /** * A passthrough function that identifies the hash function used in `getAccountResponse` * @param blockNumber Block number of the block to use * @param address Address of the account to use * @param nonce Nonce of the account * @param balance Balance of the account * @param storageRoot Storage root (aka storage hash) of the account * @param codeHash Code hash of the account * @returns string - Keccak hash of the account response */ getKeccakAccountResponse(blockNumber: number, address: string, nonce: BigNumberish, balance: BigNumberish, storageRoot: string, codeHash: string): string; /** * A passthrough function that identifies the hash function used in `getStorageResponse` * @param blockNumber Block number of the block to use * @param address Address of the account to use * @param slot Slot of the storage in the account * @param value Value at that slot * @returns string - Keccak hash of the storage response */ getKeccakStorageResponse(blockNumber: number, address: string, slot: BigNumberish, value: BigNumberish): string; } //# sourceMappingURL=queryV1.d.ts.map