// Copyright 2017-2018 @polkadot/api-provider authors & contributors // This software may be modified and distributed under the terms // of the ISC license. See the LICENSE file for details. import EventEmitter from 'eventemitter3'; import { Logger } from '@polkadot/util/types'; export type MockState$Subscription$Callback = (error: Error | null, value: any) => void; export type MockState$Subscriptions = { [index: string]: { callbacks: { [index: number]: MockState$Subscription$Callback }, lastValue: any } }; export type MockState$Db = { [index: string]: Uint8Array }; export type MockState$Requests = { [index: string]: (db: MockState$Db, params: Array) => string }; export type MockState = { emitter: EventEmitter, l: Logger, requests: MockState$Requests, db: MockState$Db, subscriptionId: number, subscriptionMap: { [index: number]: string }, subscriptions: MockState$Subscriptions };