libp2p-middleware-evm
Version:
EVM middleware for libp2p
49 lines • 1.45 kB
TypeScript
/**
* @packageDocumentation
*
* The challenge-response middleware implements a challenge-response
* authentication protocol for libp2p protocol middleware.
*/
import { MiddlewareEVM as MiddlewareEVMClass } from './middleware-evm.js';
import type { ComponentLogger, PeerId } from '@libp2p/interface';
import type { ConnectionManager, Registrar } from '@libp2p/interface-internal';
import type { Wallet } from 'ethers';
import type { EVMRuleEngine } from 'evm-rule-engine';
export interface MiddlewareEVMInit {
/**
* How long to wait for challenge responses (in ms)
*/
timeout?: number;
/**
* Protocol prefix to use
*/
protocolPrefix?: string;
/**
* Maximum number of inbound streams
*/
maxInboundStreams?: number;
/**
* Maximum number of outbound streams
*/
maxOutboundStreams?: number;
/**
* Run on limited connection - default: true
*/
runOnLimitedConnection?: boolean;
/**
* A configured EVM rule engine
*/
evmRuleEngine: EVMRuleEngine;
/**
* Signer for EVM challenges
*/
signer: Wallet;
}
export interface MiddlewareEVMComponents {
connectionManager: ConnectionManager;
logger: ComponentLogger;
registrar: Registrar;
peerId: PeerId;
}
export declare function middlewareEVM(init: MiddlewareEVMInit): (components: MiddlewareEVMComponents) => MiddlewareEVMClass;
//# sourceMappingURL=index.d.ts.map