UNPKG

viem-tracer

Version:

[![npm package][npm-img]][npm-url] [![Build Status][build-img]][build-url] [![Downloads][downloads-img]][downloads-url] [![Issues][issues-img]][issues-url] [![Commitizen Friendly][commitizen-img]][commitizen-url] [![Semantic Release][semantic-release-img]

29 lines (28 loc) 1.19 kB
import { BaseError, type Transport } from "viem"; import { type TraceFormatConfig } from "./format"; export type TracerConfig = TraceFormatConfig & { /** * Whether to trace all transactions. Defaults to `false`. */ all: boolean; /** * Whether to trace the next submitted transaction. Defaults to `undefined`. */ next?: boolean; /** * Whether to trace all failed transactions. Defaults to `true`. */ failed: boolean; }; export type TracedTransport<transport extends Transport = Transport> = transport extends Transport<infer type, infer rpcAttributes, infer eip1193RequestFn> ? Transport<type, rpcAttributes & { tracer: TracerConfig; }, eip1193RequestFn> : never; export declare class ExecutionRevertedTraceError extends BaseError { static code: number; static nodeMessage: RegExp; constructor(trace: string, message?: string); } /** * @description Overloads a transport intended to be used with a test client, to trace and debug transactions. */ export declare function traced<transport extends Transport>(transport: transport, { all, next, failed, gas, raw }?: Partial<TracerConfig>): TracedTransport<transport>;