@lavanet/lava-viem
Version:
Lava extension for Viem library
142 lines (141 loc) • 15.1 kB
TypeScript
import { LavaSDKOptions } from "@lavanet/lava-sdk";
export declare function createViemClientWithLavaSDK(options: LavaSDKOptions): Promise<{
account: undefined;
batch?: {
multicall?: boolean | {
batchSize?: number | undefined;
wait?: number | undefined;
} | undefined;
} | undefined;
cacheTime: number;
chain: undefined;
key: string;
name: string;
pollingInterval: number;
request: import("viem").EIP1193RequestFn<import("viem").PublicRpcSchema>;
transport: import("viem").TransportConfig<"custom", import("viem").EIP1193RequestFn>;
type: string;
uid: string;
call: (parameters: import("viem").CallParameters<undefined>) => Promise<import("viem").CallReturnType>;
createBlockFilter: () => Promise<{
id: `0x${string}`;
request: import("viem").EIP1193RequestFn<readonly [{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: import("viem").RpcLog[] | `0x${string}`[];
}, {
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: import("viem").RpcLog[];
}, {
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
}]>;
type: "block";
}>;
createContractEventFilter: <const TAbi extends import("viem").Abi | readonly unknown[], TEventName extends string | undefined, TArgs extends import("viem/_types/types/contract").MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined, TStrict extends boolean | undefined = undefined, TFromBlock extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock extends bigint | import("viem").BlockTag | undefined = undefined>(args: import("viem").CreateContractEventFilterParameters<TAbi, TEventName, TArgs, TStrict, TFromBlock, TToBlock>) => Promise<import("viem").CreateContractEventFilterReturnType<TAbi, TEventName, TArgs, TStrict, TFromBlock, TToBlock>>;
createEventFilter: <const TAbiEvent extends import("abitype").AbiEvent | undefined = undefined, const TAbiEvents extends readonly unknown[] | readonly import("abitype").AbiEvent[] | undefined = TAbiEvent extends import("abitype").AbiEvent ? [TAbiEvent] : undefined, TStrict_1 extends boolean | undefined = undefined, TFromBlock_1 extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock_1 extends bigint | import("viem").BlockTag | undefined = undefined, _EventName extends string | undefined = import("viem/_types/types/contract").MaybeAbiEventName<TAbiEvent>, _Args extends import("viem/_types/types/contract").MaybeExtractEventArgsFromAbi<TAbiEvents, _EventName> | undefined = undefined>(args?: import("viem").CreateEventFilterParameters<TAbiEvent, TAbiEvents, TStrict_1, TFromBlock_1, TToBlock_1, _EventName, _Args> | undefined) => Promise<import("viem").Filter<"event", TAbiEvents, _EventName, _Args, TStrict_1, TFromBlock_1, TToBlock_1> extends infer T ? { [K in keyof T]: import("viem").Filter<"event", TAbiEvents, _EventName, _Args, TStrict_1, TFromBlock_1, TToBlock_1>[K]; } : never>;
createPendingTransactionFilter: () => Promise<{
id: `0x${string}`;
request: import("viem").EIP1193RequestFn<readonly [{
Method: "eth_getFilterChanges";
Parameters: [filterId: `0x${string}`];
ReturnType: import("viem").RpcLog[] | `0x${string}`[];
}, {
Method: "eth_getFilterLogs";
Parameters: [filterId: `0x${string}`];
ReturnType: import("viem").RpcLog[];
}, {
Method: "eth_uninstallFilter";
Parameters: [filterId: `0x${string}`];
ReturnType: boolean;
}]>;
type: "transaction";
}>;
estimateContractGas: <TChain extends import("viem").Chain | undefined, const TAbi_1 extends import("viem").Abi | readonly unknown[], TFunctionName extends string>(args: import("viem").EstimateContractGasParameters<TAbi_1, TFunctionName, TChain, import("viem").Account | undefined>) => Promise<bigint>;
estimateGas: (args: import("viem").EstimateGasParameters<undefined, import("viem").Account | undefined>) => Promise<bigint>;
getBalance: (args: import("viem").GetBalanceParameters) => Promise<bigint>;
getBlock: <TIncludeTransactions extends boolean = false, TBlockTag extends import("viem").BlockTag = "latest">(args?: import("viem").GetBlockParameters<TIncludeTransactions, TBlockTag> | undefined) => Promise<import("viem").GetBlockReturnType<undefined, TIncludeTransactions, TBlockTag>>;
getBlockNumber: (args?: import("viem").GetBlockNumberParameters | undefined) => Promise<bigint>;
getBlockTransactionCount: (args?: import("viem").GetBlockTransactionCountParameters | undefined) => Promise<number>;
getBytecode: (args: import("viem").GetBytecodeParameters) => Promise<import("viem").GetBytecodeReturnType>;
getChainId: () => Promise<number>;
getContractEvents: <const TAbi_2 extends import("viem").Abi | readonly unknown[], TEventName_1 extends string | undefined = undefined, TStrict_2 extends boolean | undefined = undefined, TFromBlock_2 extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock_2 extends bigint | import("viem").BlockTag | undefined = undefined>(args: import("viem/_types/actions/public/getContractEvents").GetContractEventsParameters<TAbi_2, TEventName_1, TStrict_2, TFromBlock_2, TToBlock_2>) => Promise<import("viem/_types/actions/public/getContractEvents").GetContractEventsReturnType<TAbi_2, TEventName_1, TStrict_2, TFromBlock_2, TToBlock_2>>;
getEnsAddress: (args: {
blockNumber?: bigint | undefined;
blockTag?: import("viem").BlockTag | undefined;
coinType?: number | undefined;
name: string;
universalResolverAddress?: `0x${string}` | undefined;
}) => Promise<import("viem").GetEnsAddressReturnType>;
getEnsAvatar: (args: {
name: string;
blockNumber?: bigint | undefined;
blockTag?: import("viem").BlockTag | undefined;
universalResolverAddress?: `0x${string}` | undefined;
gatewayUrls?: import("viem").AssetGatewayUrls | undefined;
}) => Promise<import("viem/_types/actions/ens/getEnsAvatar").GetEnsAvatarReturnType>;
getEnsName: (args: {
blockNumber?: bigint | undefined;
blockTag?: import("viem").BlockTag | undefined;
address: `0x${string}`;
universalResolverAddress?: `0x${string}` | undefined;
}) => Promise<import("viem").GetEnsNameReturnType>;
getEnsResolver: (args: {
blockNumber?: bigint | undefined;
blockTag?: import("viem").BlockTag | undefined;
name: string;
universalResolverAddress?: `0x${string}` | undefined;
}) => Promise<`0x${string}`>;
getEnsText: (args: {
blockNumber?: bigint | undefined;
blockTag?: import("viem").BlockTag | undefined;
name: string;
key: string;
universalResolverAddress?: `0x${string}` | undefined;
}) => Promise<import("viem/_types/actions/ens/getEnsText").GetEnsTextReturnType>;
getFeeHistory: (args: import("viem").GetFeeHistoryParameters) => Promise<import("viem").GetFeeHistoryReturnType>;
estimateFeesPerGas: <TChainOverride extends import("viem").Chain | undefined = undefined, TType extends import("viem").FeeValuesType = "eip1559">(args?: import("viem").EstimateFeesPerGasParameters<undefined, TChainOverride, TType> | undefined) => Promise<import("viem").EstimateFeesPerGasReturnType>;
getFilterChanges: <TFilterType extends import("viem/_types/types/filter").FilterType, const TAbi_3 extends import("viem").Abi | readonly unknown[] | undefined, TEventName_2 extends string | undefined, TStrict_3 extends boolean | undefined = undefined, TFromBlock_3 extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock_3 extends bigint | import("viem").BlockTag | undefined = undefined>(args: import("viem").GetFilterChangesParameters<TFilterType, TAbi_3, TEventName_2, TStrict_3, TFromBlock_3, TToBlock_3>) => Promise<import("viem").GetFilterChangesReturnType<TFilterType, TAbi_3, TEventName_2, TStrict_3, TFromBlock_3, TToBlock_3>>;
getFilterLogs: <const TAbi_4 extends import("viem").Abi | readonly unknown[] | undefined, TEventName_3 extends string | undefined, TStrict_4 extends boolean | undefined = undefined, TFromBlock_4 extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock_4 extends bigint | import("viem").BlockTag | undefined = undefined>(args: import("viem").GetFilterLogsParameters<TAbi_4, TEventName_3, TStrict_4, TFromBlock_4, TToBlock_4>) => Promise<import("viem").GetFilterLogsReturnType<TAbi_4, TEventName_3, TStrict_4, TFromBlock_4, TToBlock_4>>;
getGasPrice: () => Promise<bigint>;
getLogs: <const TAbiEvent_1 extends import("abitype").AbiEvent | undefined = undefined, const TAbiEvents_1 extends readonly unknown[] | readonly import("abitype").AbiEvent[] | undefined = TAbiEvent_1 extends import("abitype").AbiEvent ? [TAbiEvent_1] : undefined, TStrict_5 extends boolean | undefined = undefined, TFromBlock_5 extends bigint | import("viem").BlockTag | undefined = undefined, TToBlock_5 extends bigint | import("viem").BlockTag | undefined = undefined>(args?: import("viem").GetLogsParameters<TAbiEvent_1, TAbiEvents_1, TStrict_5, TFromBlock_5, TToBlock_5> | undefined) => Promise<import("viem").GetLogsReturnType<TAbiEvent_1, TAbiEvents_1, TStrict_5, TFromBlock_5, TToBlock_5>>;
getProof: (args: import("viem/_types/actions/public/getProof").GetProofParameters) => Promise<import("viem/_types/actions/public/getProof").GetProofReturnType>;
estimateMaxPriorityFeePerGas: <TChainOverride_1 extends import("viem").Chain | undefined = undefined>(args?: {
chain: TChainOverride_1 | null;
} | undefined) => Promise<bigint>;
getStorageAt: (args: import("viem").GetStorageAtParameters) => Promise<import("viem").GetStorageAtReturnType>;
getTransaction: <TBlockTag_1 extends import("viem").BlockTag = "latest">(args: import("viem").GetTransactionParameters<TBlockTag_1>) => Promise<import("viem").GetTransactionReturnType<undefined, TBlockTag_1>>;
getTransactionConfirmations: (args: import("viem").GetTransactionConfirmationsParameters<undefined>) => Promise<bigint>;
getTransactionCount: (args: import("viem").GetTransactionCountParameters) => Promise<number>;
getTransactionReceipt: (args: import("viem").GetTransactionReceiptParameters) => Promise<import("viem").TransactionReceipt>;
multicall: <TContracts extends import("viem").ContractFunctionConfig[], TAllowFailure extends boolean = true>(args: import("viem").MulticallParameters<TContracts, TAllowFailure>) => Promise<import("viem").MulticallReturnType<TContracts, TAllowFailure>>;
prepareTransactionRequest: <TChainOverride_2 extends import("viem").Chain | undefined = undefined>(args: import("viem").PrepareTransactionRequestParameters<undefined, import("viem").Account | undefined, TChainOverride_2>) => Promise<import("viem").PrepareTransactionRequestReturnType>;
readContract: <const TAbi_5 extends import("viem").Abi | readonly unknown[], TFunctionName_1 extends string>(args: import("viem").ReadContractParameters<TAbi_5, TFunctionName_1>) => Promise<import("viem").ReadContractReturnType<TAbi_5, TFunctionName_1>>;
sendRawTransaction: (args: import("viem/_types/actions/wallet/sendRawTransaction").SendRawTransactionParameters) => Promise<`0x${string}`>;
simulateContract: <const TAbi_6 extends import("viem").Abi | readonly unknown[], TFunctionName_2 extends string, TChainOverride_3 extends import("viem").Chain | undefined = undefined>(args: import("viem").SimulateContractParameters<TAbi_6, TFunctionName_2, undefined, TChainOverride_3>) => Promise<import("viem").SimulateContractReturnType<TAbi_6, TFunctionName_2, undefined, TChainOverride_3>>;
verifyMessage: (args: import("viem/_types/actions/public/verifyMessage").VerifyMessageParameters) => Promise<boolean>;
verifyTypedData: (args: import("viem/_types/actions/public/verifyTypedData").VerifyTypedDataParameters) => Promise<boolean>;
uninstallFilter: (args: import("viem").UninstallFilterParameters) => Promise<boolean>;
waitForTransactionReceipt: (args: import("viem").WaitForTransactionReceiptParameters<undefined>) => Promise<import("viem").TransactionReceipt>;
watchBlockNumber: (args: import("viem").WatchBlockNumberParameters) => import("viem").WatchBlockNumberReturnType;
watchBlocks: <TIncludeTransactions_1 extends boolean = false, TBlockTag_2 extends import("viem").BlockTag = "latest">(args: import("viem").WatchBlocksParameters<import("viem").CustomTransport, undefined, TIncludeTransactions_1, TBlockTag_2>) => import("viem").WatchBlocksReturnType;
watchContractEvent: <const TAbi_7 extends import("viem").Abi | readonly unknown[], TEventName_4 extends string, TStrict_6 extends boolean | undefined = undefined>(args: import("viem").WatchContractEventParameters<TAbi_7, TEventName_4, TStrict_6>) => import("viem").WatchContractEventReturnType;
watchEvent: <const TAbiEvent_2 extends import("abitype").AbiEvent | undefined = undefined, const TAbiEvents_2 extends readonly unknown[] | readonly import("abitype").AbiEvent[] | undefined = TAbiEvent_2 extends import("abitype").AbiEvent ? [TAbiEvent_2] : undefined, TStrict_7 extends boolean | undefined = undefined>(args: import("viem").WatchEventParameters<TAbiEvent_2, TAbiEvents_2, TStrict_7>) => import("viem").WatchEventReturnType;
watchPendingTransactions: (args: import("viem").WatchPendingTransactionsParameters<import("viem").CustomTransport>) => import("viem").WatchPendingTransactionsReturnType;
extend: <const client extends {
[x: string]: unknown;
account?: undefined;
batch?: undefined;
cacheTime?: undefined;
chain?: undefined;
key?: undefined;
name?: undefined;
pollingInterval?: undefined;
request?: undefined;
transport?: undefined;
type?: undefined;
uid?: undefined;
} & Partial<Pick<import("viem").PublicActions, "call" | "createContractEventFilter" | "createEventFilter" | "estimateContractGas" | "estimateGas" | "getBlock" | "getBlockNumber" | "getChainId" | "getContractEvents" | "getEnsText" | "getFilterChanges" | "getGasPrice" | "getLogs" | "getTransaction" | "getTransactionCount" | "getTransactionReceipt" | "prepareTransactionRequest" | "readContract" | "sendRawTransaction" | "simulateContract" | "uninstallFilter" | "watchBlockNumber" | "watchContractEvent"> & Pick<import("viem").WalletActions, "sendTransaction" | "writeContract">>>(fn: (client: import("viem").Client<import("viem").CustomTransport, undefined, undefined, import("viem").PublicRpcSchema, import("viem").PublicActions<import("viem").CustomTransport, undefined>>) => client) => import("viem").Client<import("viem").CustomTransport, undefined, undefined, import("viem").PublicRpcSchema, { [K_1 in keyof client]: client[K_1]; } & import("viem").PublicActions<import("viem").CustomTransport, undefined>>;
}>;