diff options
Diffstat (limited to 'src/types.ts')
-rw-r--r-- | src/types.ts | 54 |
1 files changed, 50 insertions, 4 deletions
diff --git a/src/types.ts b/src/types.ts index 9d3127325..68194f548 100644 --- a/src/types.ts +++ b/src/types.ts @@ -35,8 +35,26 @@ export type OrderAddresses = [string, string, string, string, string]; export type OrderValues = [BigNumber.BigNumber, BigNumber.BigNumber, BigNumber.BigNumber, BigNumber.BigNumber, BigNumber.BigNumber, BigNumber.BigNumber]; +export type EventCallbackAsync = (err: Error, event: ContractEvent) => Promise<void>; +export type EventCallbackSync = (err: Error, event: ContractEvent) => void; +export type EventCallback = EventCallbackSync|EventCallbackAsync; +export interface ContractEventObj { + watch: (eventWatch: EventCallback) => void; + stopWatching: () => void; +} +export type CreateContractEvent = (indexFilterValues: IndexFilterValues, + subscriptionOpts: SubscriptionOpts) => ContractEventObj; export interface ExchangeContract { - isValidSignature: any; + isValidSignature: { + call: (signerAddressHex: string, dataHex: string, v: number, r: string, s: string, + txOpts: TxOpts) => Promise<boolean>; + }; + LogFill: CreateContractEvent; + LogCancel: CreateContractEvent; + LogError: CreateContractEvent; + ZRX: { + call: () => Promise<string>; + }; getUnavailableValueT: { call: (orderHash: string) => BigNumber.BigNumber; }; @@ -56,9 +74,6 @@ export interface ExchangeContract { cancelled: { call: (orderHash: string) => BigNumber.BigNumber; }; - ZRX: { - call: () => Promise<string>; - }; } export interface TokenContract { @@ -121,6 +136,13 @@ export interface ContractResponse { } export interface ContractEvent { + logIndex: number; + transactionIndex: number; + transactionHash: string; + blockHash: string; + blockNumber: number; + address: string; + type: string; event: string; args: any; } @@ -158,3 +180,27 @@ export interface TxOpts { from: string; gas?: number; } + +export interface TokenAddressBySymbol { + [symbol: string]: string; +} + +export const ExchangeEvents = strEnum([ + 'LogFill', + 'LogCancel', + 'LogError', +]); +export type ExchangeEvents = keyof typeof ExchangeEvents; + +export interface IndexFilterValues { + [index: string]: any; +} + +export type BlockParam = 'latest'|'earliest'|'pending'|number; + +export interface SubscriptionOpts { + fromBlock: BlockParam; + toBlock: BlockParam; +} + +export type DoneCallback = (err?: Error) => void; |