aboutsummaryrefslogtreecommitdiff
path: root/test/types.ts
blob: 23334bbd44a1e1464d8b2062f99e344b9d7f0847 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import mitt, { EventHandlerList, EventHandlerMap } from '..';

const events = mitt();
function foo() {}
events.on('foo', foo);
events.emit('foo', 'hello');

// handler return type should be ignored:
events.on('foo', async e => e * 42);

// event map type
const map = new Map<string, EventHandlerList>([
	['foo', [foo]]
]);
const events2 = mitt(map);
events2.emit('foo', 'hello');

// event map type & iterables
const map2 : EventHandlerMap = new Map(Object.entries(({ foo: [foo] })));
mitt(map2);