import { ByteStringReader } from "../../utils/byteStringReader";
import { AccountSubquery, AxiomV2Query, AxiomV2Callback, AxiomV2ComputeQuery, AxiomV2DataQuery, AxiomV2Result, BeaconValidatorSubquery, HeaderSubquery, ReceiptSubquery, SolidityNestedMappingSubquery, StorageSubquery, TxSubquery, AxiomV2FeeData, AxiomV2FullQuery } from "./types";
/**
 * Decodes a query string into an AxiomV2Query object
 * @param query The query as a bytes hex string without the first byte (version number)
 * @returns The decoded query as a QueryV2 object
 */
export declare function decodeQueryV2(query: string): AxiomV2Query | null;
export declare function decodeFullQueryV2(query: string): AxiomV2FullQuery | null;
export declare function decodeDataQuery(reader: ByteStringReader): AxiomV2DataQuery | null;
export declare function decodeComputeQuery(reader: ByteStringReader): AxiomV2ComputeQuery | null;
export declare function decodeCallback(reader: ByteStringReader): AxiomV2Callback | null;
export declare function decodeFeeData(reader: ByteStringReader): AxiomV2FeeData | null;
export declare function decodeResult(query: string): AxiomV2Result | null;
export declare function decodeHeaderSubquery(reader: ByteStringReader): HeaderSubquery | null;
export declare function decodeAccountSubquery(reader: ByteStringReader): AccountSubquery | null;
export declare function decodeStorageSubquery(reader: ByteStringReader): StorageSubquery | null;
export declare function decodeTxSubquery(reader: ByteStringReader): TxSubquery | null;
export declare function decodeReceiptSubquery(reader: ByteStringReader): ReceiptSubquery | null;
export declare function decodeSolidityNestedMappingSubquery(reader: ByteStringReader): SolidityNestedMappingSubquery | null;
export declare function decodeBeaconValidatorsSubquery(reader: ByteStringReader): BeaconValidatorSubquery;
