{
	"name": "microevent.ts",
	"versions": {
		"0.1.0": {
			"name": "microevent.ts",
			"version": "0.1.0",
			"description": "Zero cost events",
			"scripts": {
				"prepublish": "tsc"
			},
			"author": {
				"name": "Christian Speckner",
				"email": "cnspeckn@googlemail.com",
				"url": "https://github.com/DirtyHairy/"
			},
			"license": "MIT",
			"repository": {
				"type": "git",
				"url": "git+https://github.com/DirtyHairy/microevent.git"
			},
			"keywords": [
				"events",
				"performance"
			],
			"devDependencies": {
				"typescript": "~2.0.3"
			},
			"main": "lib/index.js",
			"types": "lib/index.d.ts",
			"gitHead": "ecf6f44b51e72198d44c3c02152fad3a4596f024",
			"bugs": {
				"url": "https://github.com/DirtyHairy/microevent/issues"
			},
			"homepage": "https://github.com/DirtyHairy/microevent#readme",
			"_id": "microevent.ts@0.1.0",
			"_shasum": "390748b8a515083e6b63cd5112a3f18c2fe0eba8",
			"_from": ".",
			"_npmVersion": "2.14.7",
			"_nodeVersion": "4.2.2",
			"_npmUser": {
				"name": "dirtyhairy",
				"email": "cnspeckn@googlemail.com"
			},
			"dist": {
				"shasum": "390748b8a515083e6b63cd5112a3f18c2fe0eba8",
				"tarball": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.0.tgz"
			},
			"maintainers": [
				{
					"name": "dirtyhairy",
					"email": "cnspeckn@googlemail.com"
				}
			],
			"_npmOperationalInternal": {
				"host": "packages-16-east.internal.npmjs.com",
				"tmp": "tmp/microevent.ts-0.1.0.tgz_1475617424487_0.414320562267676"
			},
			"directories": {},
			"contributors": []
		},
		"0.1.1": {
			"name": "microevent.ts",
			"version": "0.1.1",
			"description": "Zero cost events",
			"scripts": {
				"prepublish": "tsc",
				"pretest": "typings install && tsc -p tsconfig.test.json",
				"test": "mocha -R spec -u tdd test"
			},
			"author": {
				"name": "Christian Speckner",
				"email": "cnspeckn@googlemail.com",
				"url": "https://github.com/DirtyHairy/"
			},
			"license": "MIT",
			"repository": {
				"type": "git",
				"url": "git+https://github.com/DirtyHairy/microevent.git"
			},
			"keywords": [
				"events",
				"performance"
			],
			"devDependencies": {
				"mocha": "~6.1.4",
				"typescript": "~3.4.5",
				"typings": "^2.1.1"
			},
			"main": "lib/index.js",
			"types": "lib/index.d.ts",
			"gitHead": "c9069d6ddd3a565802d79777ce9bf313e8c8d06d",
			"bugs": {
				"url": "https://github.com/DirtyHairy/microevent/issues"
			},
			"homepage": "https://github.com/DirtyHairy/microevent#readme",
			"_id": "microevent.ts@0.1.1",
			"_npmVersion": "5.6.0",
			"_nodeVersion": "8.11.3",
			"_npmUser": {
				"name": "dirtyhairy",
				"email": "cnspeckn@googlemail.com"
			},
			"dist": {
				"integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==",
				"shasum": "70b09b83f43df5172d0205a63025bce0f7357fa0",
				"tarball": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz",
				"fileCount": 18,
				"unpackedSize": 89520,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3r/ICRA9TVsSAnZWagAAHM4P/icrRf+nhqx1gTYLjG1Y\nTZX3VpHZHah22DjL4QN0r2hKML8J7Lkgg/MFDdC9zwLSxB8GIQCB5PtpQ09J\nIN24sCUExry16B3hmiAAUyRL9ul5xMATxmknHX0i0M4dlEPFpQWwIc+59I3O\nd3gyIwGxUyRckRfM+5sE5eVAh3Tntuzu7UL6eiW09KvwqsKyvTK4F7AxH1t8\n0OoWFgo/rLrQPExcw4zmkl9ER9iLueIkxFIJTGH203bc/G1mHarugExwIjec\nY2CqfXti8zsJ5mfccNBlMr2fqVde7mGCK9jLpHpE3Qw9lcReI/cks+fOBFEo\n9fckbK1o8R8LG9xaYggAhfck2FeCb24atoTCyphdlM8D/4bzN+Ixtiv47ysS\niDrGhAhjFAof6mGJPFl83ehC3+2TndanwtqIKfId3v35KWCD60KMgu+eaUic\nSikK2NoVVU+jOxZrLoi13x5BB327suXH6P9wVZHkaoFGXF/s08B8IZp4/4vO\nG3QUrh2Hb1JsoOYaz03AZefaliycAGoybzTFfSXZBD95kGqUH91/4H7SPnOP\nyftyXHZZo+GkWxCy22mJQUPAZGqtkf1wpqfID0X/UFk4UhrEny9MLhij2IAC\np3lKrxco50zN845zyXKVyLjbKMwsvOVcd7noEwkzDF/gc3y5ke4VUO6sOAIf\n2lSJ\r\n=uEYT\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "dirtyhairy",
					"email": "cnspeckn@googlemail.com"
				}
			],
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/microevent.ts_0.1.1_1558101960185_0.7749836764516471"
			},
			"_hasShrinkwrap": false,
			"contributors": []
		},
		"0.2.0": {
			"name": "microevent.ts",
			"version": "0.2.0",
			"description": "Zero cost events",
			"scripts": {
				"prepublish": "tsc",
				"test": "mocha --require ts-node/register -R spec -u tdd --recursive 'test/**/*.ts'"
			},
			"author": {
				"name": "Christian Speckner",
				"email": "cnspeckn@googlemail.com",
				"url": "https://github.com/DirtyHairy/"
			},
			"license": "MIT",
			"repository": {
				"type": "git",
				"url": "git+https://github.com/DirtyHairy/microevent.git"
			},
			"keywords": [
				"events",
				"performance"
			],
			"devDependencies": {
				"@types/mocha": "^5.2.6",
				"@types/node": "^12.0.2",
				"mocha": "~6.1.4",
				"ts-node": "^8.1.0",
				"typescript": "~3.4.5",
				"typings": "^2.1.1"
			},
			"main": "lib/index.js",
			"types": "lib/index.d.ts",
			"gitHead": "514d9b6460ddb36b08f7f5c28dbf017656ae47fa",
			"bugs": {
				"url": "https://github.com/DirtyHairy/microevent/issues"
			},
			"homepage": "https://github.com/DirtyHairy/microevent#readme",
			"_id": "microevent.ts@0.2.0",
			"_npmVersion": "5.6.0",
			"_nodeVersion": "8.11.3",
			"_npmUser": {
				"name": "dirtyhairy",
				"email": "cnspeckn@googlemail.com"
			},
			"dist": {
				"integrity": "sha512-fsGQFKpif3EtrTtbcSL6iS8TwLr5siHsFFtaLGsOS8kf4qrE4B3iGLchnET/dhnC3fHqBtOXv8tIg27amDVTaA==",
				"shasum": "bce7b13d3eb7b6abaad97280a3dd131b79eae690",
				"tarball": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.2.0.tgz",
				"fileCount": 10,
				"unpackedSize": 8838,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4c/KCRA9TVsSAnZWagAAMvQP/A5uQWrxUxaPY6gdVESZ\nFbTGR0U9kbP50D435+UEthitNpwKMBdTxVGqTgn6Zq7lurruqbBJiWt0knuL\nPfhEvBvMRqaxVtHAZlyLExaUOwKgimo0r6GHw3o689n5aaRgxU7voZtaKPrZ\nRCfsS98P2OU2eVcycbLs2ctzF1nThAdZChpvjrtxpDIpa8m1e+jxPnt+TMAr\nmYjFz18bWme3lCP0obeSMS8spXM8uyKF9fZFuKZc/yYCLdsogEWoSj0xXyFW\nIAEHZXRTHEc9gqdYKIg4x/ox78bxOks8iLSaCIgrwC+uk8xKNdMLknpBWPid\nW7GoCoRaKZXd52kE7osTeoVhb+GY33uxCyjt+WVjVwI8nTj2AkakZUvCdQrt\nReVm52TzBlQdgCrIaG784bFRqNBL4neqBbvlwjLk47KrJBfG3nE4j5hBmeTR\n+yGPi4DaSii3bPtnNiMI+HfRXc7+SCdarLAT8M3B7Z7ApGNnceiekz4hnYgZ\nCNblb+Imph63ZXS0jE3rsTaEfORNsn1JJlKuetPD8NmqG226m3eeNuvBosDy\nEzB7+NWCtwAn8V3pDIBc9ljRwnk5+/L2QyUbs7tbxWHQ98DLXzj0vaBBvqJi\nlLZirEadQ2409QzVMQKqfC/v6jrIYy2KtN79POXWSF4IczwzCW7t+5rmvGZC\nqBLy\r\n=mlwY\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "dirtyhairy",
					"email": "cnspeckn@googlemail.com"
				}
			],
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/microevent.ts_0.2.0_1558302665433_0.10635521898389277"
			},
			"_hasShrinkwrap": false,
			"contributors": []
		},
		"0.2.1": {
			"name": "microevent.ts",
			"version": "0.2.1",
			"description": "Zero cost events",
			"scripts": {
				"prepublish": "tsc",
				"test": "mocha --require ts-node/register -R spec -u tdd --recursive 'test/**/*.ts'"
			},
			"author": {
				"name": "Christian Speckner",
				"email": "cnspeckn@googlemail.com",
				"url": "https://github.com/DirtyHairy/"
			},
			"license": "MIT",
			"repository": {
				"type": "git",
				"url": "git+https://github.com/DirtyHairy/microevent.git"
			},
			"keywords": [
				"events",
				"performance"
			],
			"devDependencies": {
				"@types/mocha": "^5.2.6",
				"@types/node": "^12.0.2",
				"mocha": "~6.1.4",
				"ts-node": "^8.1.0",
				"typescript": "~3.4.5",
				"typings": "^2.1.1"
			},
			"main": "lib/index.js",
			"types": "lib/index.d.ts",
			"gitHead": "ea751989a930961e185c4118bb2076d2fa38da64",
			"bugs": {
				"url": "https://github.com/DirtyHairy/microevent/issues"
			},
			"homepage": "https://github.com/DirtyHairy/microevent#readme",
			"_id": "microevent.ts@0.2.1",
			"_npmVersion": "5.6.0",
			"_nodeVersion": "8.11.3",
			"_npmUser": {
				"name": "dirtyhairy",
				"email": "cnspeckn@googlemail.com"
			},
			"dist": {
				"integrity": "sha512-YaOQr4V70QzTy3sTRkBUa7+clmN4rMdKs9L5wCCxYjo8gknO/FXhcEX5Pot4IWtAdiZqhxN7vskoywQbAOAkDQ==",
				"shasum": "bfa357f97d577d296f47e9ac69cde7c03c75a882",
				"tarball": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.2.1.tgz",
				"fileCount": 10,
				"unpackedSize": 8903,
				"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4dCPCRA9TVsSAnZWagAAFSkP/2Wq+qoIpumIBtIp6d1D\nCxaVdeNnG1Q+HCukA3RleJbyoDynDiXW73oZIPnLNhjwaCcfbipIwAQebw7D\nInBP5baZ41+1PZ/45w61vb/u9XRJxm8diqeInPd5CWP2yqbuUj31e23UAb5H\nSd+4aOstQjFp8heSmKjpw/kSO66IG9Q/vTTccfCTsVjk9B4uxllAxqskkcag\n9LVht/Jl0NqNjIjZ73zM8Z2wZfHHQXt37irALQP+Pj33ikSL+lI6OG5pp+dU\niWVJ+KQwDtBDHJZUzvtfLhTfIZKO9BZZENDO7BqVd01nNPAzj18CBFXQiezj\nWND09eJ2BxWO8bwngRH3Xt/EMuk2mpG9zajMpKiqqrrrrPQ+9Q/LZ73KYcIX\nkLcgtcZz5gWUhbPIAVjgrh7rx7+iits4fNdtURCPxqqzx0fW0uTLYMDbGhar\nJBQRwLhUaVrB5cri7WLhcbeZ2gU2MOtugn82AscumFy3hZAArJnbYmm2V4Og\nNYgswqtKHz2fZErb/FkQK1pR1t7cwRjwX04vUEzr7lvpjCfNp/JUTgGNVScY\nyHClGaCY+1P78x9RwGjIcFQ4K4iIKYZLUTf8R6sdpVMgRB6RZ0qDqDyR1rzO\nVvmTHsS3WjPnECGXsY/6QKmfNqnXX7pdipZQqDfTCw7ie51sHpWaSQkja72s\n6i8D\r\n=/+HP\r\n-----END PGP SIGNATURE-----\r\n"
			},
			"maintainers": [
				{
					"name": "dirtyhairy",
					"email": "cnspeckn@googlemail.com"
				}
			],
			"directories": {},
			"_npmOperationalInternal": {
				"host": "s3://npm-registry-packages",
				"tmp": "tmp/microevent.ts_0.2.1_1558302863076_0.9992413953681949"
			},
			"_hasShrinkwrap": false,
			"contributors": []
		}
	},
	"time": {
		"modified": "2019-05-19T21:54:25.915Z",
		"created": "2016-10-04T21:43:46.508Z",
		"0.1.0": "2016-10-04T21:43:46.508Z",
		"0.1.1": "2019-05-17T14:06:00.320Z",
		"0.2.0": "2019-05-19T21:51:05.536Z",
		"0.2.1": "2019-05-19T21:54:23.353Z"
	},
	"users": {},
	"dist-tags": {
		"latest": "0.2.1"
	},
	"_uplinks": {
		"npmjs": {
			"etag": "W/\"c07d8ea65051a0e9449395c6071c1612\"",
			"fetched": 1600679315950
		}
	},
	"_distfiles": {
		"microevent.ts-0.1.0.tgz": {
			"url": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.0.tgz",
			"sha": "390748b8a515083e6b63cd5112a3f18c2fe0eba8",
			"registry": "npmjs"
		},
		"microevent.ts-0.1.1.tgz": {
			"url": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz",
			"sha": "70b09b83f43df5172d0205a63025bce0f7357fa0",
			"registry": "npmjs"
		},
		"microevent.ts-0.2.0.tgz": {
			"url": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.2.0.tgz",
			"sha": "bce7b13d3eb7b6abaad97280a3dd131b79eae690",
			"registry": "npmjs"
		},
		"microevent.ts-0.2.1.tgz": {
			"url": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.2.1.tgz",
			"sha": "bfa357f97d577d296f47e9ac69cde7c03c75a882",
			"registry": "npmjs"
		}
	},
	"_attachments": {
		"microevent.ts-0.1.1.tgz": {
			"shasum": "70b09b83f43df5172d0205a63025bce0f7357fa0"
		}
	},
	"_rev": "2-9f095624561938bb",
	"_id": "microevent.ts",
	"readme": "[![Build Status](https://travis-ci.org/DirtyHairy/microevent.svg?branch=master)](https://travis-ci.org/DirtyHairy/microevent)\n[![npm version](https://badge.fury.io/js/microevent.ts.svg)](https://badge.fury.io/js/microevent.ts)\n\n# What is it?\n\nThis package implements an event system with minimal dispatch overhead. Instead\nof recording handlers bound to an event in dynamic data structures, this library\nbinds the handlers to autogenerated code. This enables the VM to inline the\nhandler invocation and generate code that is just as fast as invoking the handlers\ndirectly.\n\nIn a (completely unscientific) benchmark, this library performs bettern than\nNodeJS events in terms of event dispatch calls per second by about two orders\nof magnitude.\n\n# How to use it?\n\n## Installation\n\nYou can install the library into your project via npm\n\n    npm install microevent.ts\n\nThe library is written in Typescript and will work in any environment that\nsupports ES5. No external typings are required for using this library with\nTypescript (version >= 2).\n\n## Importing\n\nES5 / CommonJS\n\n    var Event = require('microevent.ts').Event;\n\nES6\n\n    import {Event} from 'microevent.ts';\n\nTypescript\n\n    import {Event, EventInterface} from 'microevent.ts';\n\nThe `EventInterface` covers only the client side of an event, that is adding\nand removing handlers.\n\n##  API\n\n### Creating\n\nES5/ES6\n\n    const event = new Event();\n\nTypescript\n\n    const event = new Event<PayloadT>();\n\nCreate a new event that will dispatch a payload of type `PayloadT`.\n\n### Dispatching\n\n    event.dispatch(payload);\n\nThis will call all handlers in the order they were registered, passing `payload`\nas first argument.\n\n**IMPORTANT** `dispatch` is a property that refers to dynamically generated code. \n**DO NOT KEEP ANY REFERENCES** to `dispatch` as adding and removing handlers\nwill invalidate them.\n\n### Registering handlers\n\n    event.addHandler(handler, context);\n\n`context` is an optional parameter that will be passed to the handler on\neach invocation.\n\n### Removing handlers\n\n    event.removeHandler(handler, context);\n\nBoth `handler` and `context` must be identical to the values used when registering\nthe handler in the first place.\n\n### Checking for handlers\n\n    event.isHandlerAttached(handler, context)\n\nThis will check whether a handler was attached in a given context.\n\n    event.hasHandlers\n\n`true` if the event has any handlers attached, false otherwise.\n\n# License\n\nFeel free to use this library under the conditions of the MIT license."
}