zonder
Version:
Ergonomic multi-chain indexing framework with dual runtime support for Ponder and Envio.
17 lines (16 loc) • 1.1 kB
TypeScript
import { AddressConfig, ChainConfig, ContractConfig } from 'ponder';
import type { Chain as ViemChain } from 'viem';
import type { ZonderConfig } from '../zonder/types.js';
export type PonderBuildConfigReturnType = {
chains: Record<string, ChainConfig>;
contracts: Record<string, ContractConfig>;
};
export declare function buildChains(chains: Record<string, ViemChain>): {
[k: string]: {
id: number;
rpc: string[];
};
};
export declare function buildContractChainAddressConfig<TChains extends Record<string, any>, TContracts extends Record<string, any>>(config: ZonderConfig<TChains, TContracts>, chainName: keyof TChains, contract: keyof TContracts): AddressConfig | null;
export declare function buildContractConfig<TChains extends Record<string, any>, TContracts extends Record<string, any>>(config: ZonderConfig<TChains, TContracts>, contract: keyof TContracts): ContractConfig;
export declare function buildConfig<TChains extends Record<string, any>, TContracts extends Record<string, any>>(config: ZonderConfig<TChains, TContracts>): PonderBuildConfigReturnType;