UNPKG

@cheethas/splits-sdk

Version:

Fork of the splits SDK for the 0xSplits protocol, testing experimental features

16 lines (15 loc) 796 B
import { EventFilter, Event } from '@ethersproject/contracts'; import { Result } from '@ethersproject/abi'; export declare type TypedEventFilter<_EventArgsArray, _EventArgsObject> = EventFilter; export interface TypedEvent<EventArgs extends Result> extends Event { args: EventArgs; } export declare type TypedListener<EventArgsArray extends Array<any>, EventArgsObject> = (...listenerArg: [ ...EventArgsArray, TypedEvent<EventArgsArray & EventArgsObject> ]) => void; export declare type MinEthersFactory<C, ARGS> = { deploy(...a: ARGS[]): Promise<C>; }; export declare type GetContractTypeFromFactory<F> = F extends MinEthersFactory<infer C, any> ? C : never; export declare type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any> ? Parameters<F['deploy']> : never;