Move the EUM Agent to TypeScript

Description

As TypeScript is a superset of JavaScript, it only offers benefits to change the JS Agent from TypeScript to Java Script. For example, this allows us to strongly type beacon elements and allows the IDE do display more useful information when adding / modifying code of the JS Agent.
I also came up with an idea on how to decrease teh overhead of the listener instrumentation to low and constant amount using JS WeakMaps (or a corresponding polyfill), which will be implemented here.

Environment

None

Status

Assignee

Jonas Kunz

Reporter

Jonas Kunz

Labels

None

Pull Request

None

Integrator

Ivan Senic

Sprint

None

Fix versions

Priority

Medium
Configure