import type { AnyCell, SheetProxy } from "@okcontract/cells";
import { type CacheQuery } from "@okcontract/coredata";
import type { Address, ChainType, Network } from "@okcontract/multichain";
import type { LocalSubscriber } from "@scv/cache";
import type { AnalyzedLog } from "./analyze";
import type { AnyAddress } from "./types";
export declare const PRETTY = "pretty";
export declare const ANALYZED = "analyzed";
export declare const RAW = "raw";
/**
 * logAbi is a pre-built ABI for log messages
 * @todo add more static definitions
 * @todo get other definitions from datacache
 */
export declare const logAbi: string[];
/**
 * logTitle transforms a log open format to a Title.
 */
export declare const logTitle: (proxy: SheetProxy, wallet: AnyCell<Address<Network>>, aLog: AnyCell<AnalyzedLog>) => import("@okcontract/cells").MapCell<string[], false>;
/**
 * logSearch search a specific log
 * @param proxy
 * @param local
 * @param chain
 * @param logs
 * @param step
 * @param event
 * @param prop
 * @param emitter
 * @param filter
 * @returns
 */
export declare const logSearch: <Prop extends string | null, Emitter extends AnyAddress | null, Filter extends {
    [k: string]: string | Address<Network> | number | bigint;
} | null>(proxy: SheetProxy, local: LocalSubscriber<CacheQuery>, chain: AnyCell<ChainType>, logs: AnyCell<AnalyzedLog[][]>, step: AnyCell<number>, event: AnyCell<string>, prop: AnyCell<Prop>, emitter: AnyCell<Emitter>, filter: AnyCell<Filter>) => import("@okcontract/cells").MapCell<unknown, false>;
