UNPKG

1.77 kBTypeScriptView Raw
1import { JsonRpcMiddleware, JsonRpcRequest } from 'json-rpc-engine';
2import { Block } from './utils/cache';
3interface TransactionParams {
4 from: string;
5}
6interface MessageParams extends TransactionParams {
7 data: string;
8}
9interface TypedMessageParams extends MessageParams {
10 version: string;
11}
12interface WalletMiddlewareOptions {
13 getAccounts: (req: JsonRpcRequest<unknown>) => Promise<string[]>;
14 processDecryptMessage?: (msgParams: MessageParams, req: JsonRpcRequest<unknown>) => Promise<Record<string, unknown>>;
15 processEncryptionPublicKey?: (address: string, req: JsonRpcRequest<unknown>) => Promise<Record<string, unknown>>;
16 processEthSignMessage?: (msgParams: MessageParams, req: JsonRpcRequest<unknown>) => Promise<Record<string, unknown>>;
17 processPersonalMessage?: (msgParams: MessageParams, req: JsonRpcRequest<unknown>) => Promise<Record<string, unknown>>;
18 processTransaction?: (txParams: TransactionParams, req: JsonRpcRequest<unknown>) => Promise<Record<string, unknown>>;
19 processTypedMessage?: (msgParams: MessageParams, req: JsonRpcRequest<unknown>, version: string) => Promise<Record<string, unknown>>;
20 processTypedMessageV3?: (msgParams: TypedMessageParams, req: JsonRpcRequest<unknown>, version: string) => Promise<Record<string, unknown>>;
21 processTypedMessageV4?: (msgParams: TypedMessageParams, req: JsonRpcRequest<unknown>, version: string) => Promise<Record<string, unknown>>;
22}
23export declare function createWalletMiddleware({ getAccounts, processDecryptMessage, processEncryptionPublicKey, processEthSignMessage, processPersonalMessage, processTransaction, processTypedMessage, processTypedMessageV3, processTypedMessageV4, }: WalletMiddlewareOptions): JsonRpcMiddleware<string, Block>;
24export {};