TypeScript async-like module (event-callback manager, promise, storage)