import { type Abi } from "viem"; import type { EvmAddress, HexBytes, HexBytes32 } from "./evm.js"; type ReceiptRecord = Record; type DecodedReceiptLog = { address?: string; logIndex?: number; args?: unknown; }; export type ReceiptEventBase = { contractAddress: EvmAddress; logIndex: number | null; }; export declare function isReceiptRecord(value: unknown): value is ReceiptRecord; export declare function requireReceiptRecord(value: unknown, message: string): ReceiptRecord; export declare function requireReceiptAddress(value: ReceiptRecord, key: string, label: string): EvmAddress; export declare function requireReceiptBytes(value: ReceiptRecord, key: string, label: string): HexBytes; export declare function requireReceiptBytes32(value: ReceiptRecord, key: string, label: string): HexBytes32; export declare function requireReceiptBigInt(value: ReceiptRecord, key: string, label: string): bigint; export declare function requireReceiptBoolean(value: ReceiptRecord, key: string, label: string): boolean; export declare function requireReceiptNumericBigInt(value: ReceiptRecord, key: string, label: string): bigint; export declare function decodeLatestReceiptEvent(abi: Abi, logs: readonly unknown[], eventName: string): import("viem").Log | undefined; export declare function decodeReceiptEvents(abi: Abi, logs: readonly unknown[], eventName: string): import("viem").ParseEventLogsReturnType; export declare function mapLatestReceiptEvent(abi: Abi, logs: readonly unknown[], eventName: string, mapper: (args: ReceiptRecord, log: DecodedReceiptLog) => T): T | null; export declare function mapReceiptEvents(abi: Abi, logs: readonly unknown[], eventName: string, mapper: (args: ReceiptRecord, log: DecodedReceiptLog) => T): T[]; export declare function buildReceiptEventBase(log: { address?: string; logIndex?: number; }): ReceiptEventBase; export declare function sortReceiptEventsByLogIndex(events: readonly T[]): T[]; export {};