@phiresky/eth-scan
Version:
An efficient Ether and token balance scanner
10 lines • 555 B
TypeScript
export interface Provider<T> {
isProvider(provider: unknown): provider is T;
send<Result>(provider: T, method: string, params: unknown[]): Promise<Result>;
}
export declare type InferProviderType<P extends readonly unknown[]> = {
[K in keyof P]: P[K] extends P[number] ? (P[K] extends Provider<infer T> ? T : never) : never;
};
export declare type TupleToUnion<P extends readonly unknown[]> = P[number];
export declare type ProviderType<P extends readonly unknown[]> = TupleToUnion<InferProviderType<P>>;
//# sourceMappingURL=provider.d.ts.map