{"_id":"ts-async-semaphore","_rev":"9-789824ebdb8b13ddefa7c54a93a1bdf4","name":"ts-async-semaphore","dist-tags":{"latest":"4.0.1"},"versions":{"1.0.0":{"name":"ts-async-semaphore","version":"1.0.0","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"scripts":{"serve":"tsc -w","build":" tsc","lint":"tslint src/**/*.ts","check-dependencies":"dependency-check package.json --no-dev --quiet","test":"jest","test:ci":"jest --ci --runInBand --coverage --config jest.config.ci.js && codecov","clean":"shx rm -rf node_modules/ dist/ docs/ coverage/","doc":"typedoc --out docs --name ts-async-semaphore --tsconfig tsconfig.json","semantic-release":"semantic-release"},"engines":{"node":">=8.0.0"},"dependencies":{"@types/node":"^8.0.0"},"devDependencies":{"@semantic-release/changelog":"^3.0.2","@types/jest":"24.0.11","codecov":"3.3.0","condition-circle":"^2.0.2","dependency-check":"3.3.0","jest":"24.7.1","jest-junit":"6.3.0","jest-silent-reporter":"0.1.2","rimraf":"2.6.3","semantic-release":"15.13.3","shx":"0.3.2","ts-jest":"24.0.2","tslint":"5.16.0","typedoc":"0.14.2","typescript":"3.4.5"},"gitHead":"65a79198427acdee39ceb0fe90c44a91a97d4dfb","_id":"ts-async-semaphore@1.0.0","_npmVersion":"6.5.0","_nodeVersion":"8.16.0","_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"dist":{"integrity":"sha512-t6Deg69nyV3fpUGND1puCyQKifTjiCQglL+ukAKWBjFpx7QL/Y44xuc7DFg2nmvkZSDKOF6KGlOViwuqONO/hQ==","shasum":"48dc2992ead1bf3d4cd946f1ec9e8bc3263f2be3","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-1.0.0.tgz","fileCount":6,"unpackedSize":16901,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxDk+CRA9TVsSAnZWagAAXSYP+gNeId5c9Gzt44a98Rt5\n1EXkosVFpsavVUBLYZwVzCNJ+6pXcvpF7XXwsfkNISZTZHQZqEH5UHpeNUsw\n2eV8N7epfnLxwZSSvygZvwU01mPm1wFVN6wCNHo6cLaBkrNQvFhRPeC48aX2\n1g6xjFTTXuFfmiPDkEahQhTPcmkWup2RZ/Var9e4M6Hlg6kN66lgT/yAeT2p\nXQctp5pgPPEa/LeAKZdclKUgEvNd3Gp2TvEGdR0oZYnEaitM9TwheixciQ/i\nS3p7qTGYIPWD0w29SgsHBbEbELw1bAIDLE7oGwUZLHql8l6/dYyiKS/6A9Ur\nM7HwOuibes6+WSXxKWZMpzJSg7kC+SBmQne6jCP6f98+M2AZQokNLQ62U6cm\n+HyDIGGDA6i3dChSaE3OvdNB8h+fXpcTNpKGDizU6TXrqukb/LDnqxcu+nqI\nYeByx0DlPU0a3ak1AxmV4Eikgm3nCdEgEqkswIdWGlpNGT8vXr74b1HF3QJT\nHJR+9GjF4ZxQEp4NQXwBzv8nlnlWeRQGFywkNdI/fQ1NyMxohOzM/Jk3Offl\nA9eMpHjGxSAxG594BB/vUbqnndnAX74bgbDXbzpSTJuBJlbQC34NTh1KiZbJ\nJgRbRDE+ZiKk23RTKsjrbHedi2OhInrUxeP08L09S2MDlnTgNe/lCCGHpp2D\nYnNR\r\n=wAuK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDmMETNO/pTVdADdWwnZ0i12s27uFW3V6eI1H+D4ba5uwIhAKvsKk3kDVPshDEEEJTViYr+ZeKpvOwolcXlcIgfHocF"}]},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_1.0.0_1556363581444_0.763523404336691"},"_hasShrinkwrap":false},"1.0.1":{"name":"ts-async-semaphore","version":"1.0.1","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"scripts":{"serve":"tsc -w","build":" tsc","lint":"tslint src/**/*.ts","check-dependencies":"dependency-check package.json --no-dev --quiet","test":"jest","test:ci":"jest --ci --runInBand --coverage --config jest.config.ci.js && codecov","clean":"shx rm -rf node_modules/ dist/ docs/ coverage/","doc":"typedoc --out docs --name ts-async-semaphore --tsconfig tsconfig.json","semantic-release":"semantic-release"},"engines":{"node":">=8.0.0"},"dependencies":{"@types/node":"^8.0.0"},"devDependencies":{"@semantic-release/changelog":"3.0.2","@types/jest":"24.0.13","codecov":"3.5.0","condition-circle":"2.0.2","dependency-check":"3.3.0","jest":"24.8.0","jest-junit":"6.4.0","jest-silent-reporter":"0.1.2","rimraf":"2.6.3","semantic-release":"15.13.12","shx":"0.3.2","ts-jest":"24.0.2","tslint":"5.17.0","typedoc":"0.14.2","typescript":"3.5.1"},"gitHead":"f49c1d0dca9f3d8093c742820f7ec2ee181621c3","_id":"ts-async-semaphore@1.0.1","_nodeVersion":"8.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-4hJ0tk5HlJHiH9hP6XWYMcBFYB8DGkbJf+i43+Tpjx9M4EApVoun2WSB5vudAgVFCT3CkNiEUg4oKjDzAoFkoQ==","shasum":"3a99d2901fad35e06e56e95786bdb2352fc2352e","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-1.0.1.tgz","fileCount":6,"unpackedSize":17237,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc+UasCRA9TVsSAnZWagAA/ocQAI4bVvQsSqF1IbNzk3iZ\nGI7CaRh/UGfdHzSzLP+Pdr4XHgllZ5DRB0MykH/gdRp0Oz8zUHb5fLWaAqQc\n3VdUTeI4OukXbPZWO6eMJGTuBSrVaNXd44DqgYvL1I6sRy5D7yOPoV+axsSN\n1frGmARb+oPczEUvp0j3vkbYAj2CIrPZOX9yYJ9kJA4iZoLEiWsGhj0+0GrD\nk9O6c/Wgpaqocy/z4xQToBAgKkCktxz+owwiKOkcjxbdqLxQQGJnLtHoUSkj\nNOOn0dfeDSTtVrOyPIdfG0ef3u2YxhaiwZaHCaifUvoJ8/4rkNYjX2Ii5jDz\nyoNJ0fhnLVgGV1mWf+ed4R07v9cPLJZS5rvPWpvAiphzhLs/J3+xUEqIyheN\nHSzXrl9a7VSvl3BpjNRu0nhD4vj/K8JGr+XRzaMGyu3ZnBvxafKzuBOeS15F\nM5NnpUBgPiCB3oq7Q0n06d3nKQEn6pFLxWT76aT5gzRpQ3FSjvoech9PAFd1\nSS2QeWvHNy8QIySEbwA1lKKAqoACn0hFnhXLFO4/+Xe/S+vHnxSlpuLwJUeW\nxlBYjWirJB6rZc3enjV1SbhLqeAD2o3Z1nx7cdJXM8riFTGwse2YwBKAxsxn\nGsyUvfxgzIW870mWa2tvkNuzfqcoUXhLTGcjti71/EMejvt11AKMpkPqJ6xX\nx6RD\r\n=HYJa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOWuys+Np4opUNaIcu1Fgc7Wlidt+fbBAKhClviP8GlwIhANETYfsOwyR8qg0OisOCy6xBQWGUl/9RfFU43zBxMnNa"}]},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_1.0.1_1559840427829_0.6581169905657411"},"_hasShrinkwrap":false},"2.0.0":{"name":"ts-async-semaphore","version":"2.0.0","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"scripts":{"serve":"tsc -w","build":"tsc","lint:ci":"yarn lint --format junit -o reports/tslint/results.xml","lint":"tslint 'src/**/*.ts'","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","check-formatting":"prettier --check \"src/**/*.ts\" \"test/**/*.ts\"","check-dependencies":"dependency-check package.json --missing --no-dev","test":"jest","test:ci":"jest --ci --runInBand --coverage --config jest.config.ci.js | coveralls","clean":"shx rm -rf node_modules/ dist/ docs/ coverage/","doc":"typedoc --out docs --name ts-async-semaphore --tsconfig tsconfig.json","semantic-release":"semantic-release"},"engines":{"node":">=12.8.1"},"dependencies":{"@types/node":"^12.12.14"},"devDependencies":{"@commitlint/cli":"^8.2.0","@commitlint/config-conventional":"^8.2.0","@semantic-release/changelog":"^3.0.6","@semantic-release/commit-analyzer":"^6.3.3","@semantic-release/git":"^7.0.18","@semantic-release/github":"^5.5.5","@semantic-release/npm":"^5.3.4","@semantic-release/release-notes-generator":"^7.3.4","@types/jest":"^24.0.23","commitlint-circle":"^1.0.0","condition-circle":"^2.0.2","coveralls":"^3.0.9","dependency-check":"^4.1.0","husky":"^3.1.0","jest":"^24.9.0","jest-junit":"^9.0.0","jest-silent-reporter":"^0.1.2","prettier":"^1.19.1","rimraf":"^3.0.0","semantic-release":"^15.13.31","shx":"^0.3.2","ts-jest":"^24.2.0","tslint":"^5.20.1","typedoc":"^0.15.3","typescript":"^3.7.2"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS && yarn check-formatting && yarn lint"}},"gitHead":"84be168933e3c7893c83facf20a43c858d7c6f8f","_id":"ts-async-semaphore@2.0.0","_nodeVersion":"12.13.1","_npmVersion":"6.13.1","dist":{"integrity":"sha512-9rFcjJ/bwwLyZUqq8GnAMbpr45JZDG01W9391jOmHtjLrvof6uK95dugG5vfNkr7JfciKn8IQheVTvbrrsjVTw==","shasum":"9975546af85accdde391cf766fbdb0a60abe5926","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-2.0.0.tgz","fileCount":6,"unpackedSize":19084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3uoCCRA9TVsSAnZWagAAKcoP/jrmHuHw+WBVy4muOWba\n8S+akGj41eRtIRu/aiXjDYNG1obHWi6OGPqCwfA/MvNL/46uzSFXx2UTNgal\n8fgXFLFqvybwlllXzGlaoVGD2DjQkAWiFinTz16aIQIED7X90LBZV/l9jjg8\nPrGGf1KIo7XZCEQ8/Zp6bGoOMJdWB+ddcpnRqcPTmzdSChl+Zd5dtSf6+K2V\nqYKeltPGw4xGnAV8EuvTNCSi8IgXOfey0KrNGV7Yx38mve0VFnvhNnHxX6Gd\n9aOlura0fpu5ZHRKOmMZ9lTky5hfuzENPwdb1tauC8IsAasjExcWJdgPg7Ks\nsRH7wlihg+eOKHkmDNtgwh5rgsP20BqUHxcvL9MmkQtk4i3KlhbRhPpu5WfY\n1JpeprIwPobswvA0t3B39nfo5YpGGNUFt/zNV4p0t0i5pVMwl9BDJViv/d83\no7EtPHayeAf7HQ+m/1e3IDQJPaFZ2vZPicuxPcVG9MHWjYiS2OuQPx+C+cl4\ni8ONMF1T89Syc80ceUW6B13BXY1y+HrOmJTIC63vLlzg8zzKXHcWCwssc5uE\nTMnNRB62MJHOt6odnCqH0+omKAReu0brP/Rf0UJNavLfRoJ80+jKE1D7w3Lg\nYhn2whzPV90LuiVzoc1sozjhGvKzO8HkH96P0ggK/2SgHq5Ex96mPKUnzxg8\nb8ua\r\n=b4X+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVmEjX3Fx+wSfFW/Obr5VQSt1cyHFAE9e4Vvt4hJs4HwIhAOegWb9a4pH7yMBJH5nYsO15D3/3QXSeLUj0GVsgGTsc"}]},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_2.0.0_1574889986484_0.20455100980318686"},"_hasShrinkwrap":false},"3.0.0":{"name":"ts-async-semaphore","version":"3.0.0","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"scripts":{"serve":"tsc -w","build":"tsc","lint:ci":"yarn lint --format junit -o reports/eslint/results.xml","lint":"eslint ./src --ext .ts","format":"prettier --write .","check-formatting":"prettier --check .","check-dependencies":"dependency-check package.json --missing --no-dev","test":"jest","test:ci":"jest --ci --runInBand --coverage --config jest.config.ci.js | coveralls","clean":"shx rm -rf node_modules/ dist/ docs/ coverage/","doc":"typedoc --out docs --name ts-async-semaphore --tsconfig tsconfig.json --entryPoints src/semaphore.ts","semantic-release":"semantic-release","postinstall":"husky install"},"engines":{"node":">=14.5.0"},"devDependencies":{"@commitlint/cli":"^12.0.0","@commitlint/config-conventional":"^12.0.0","@semantic-release/commit-analyzer":"^8.0.1","@semantic-release/github":"^7.2.0","@semantic-release/npm":"^7.0.10","@semantic-release/release-notes-generator":"^9.0.1","@types/jest":"^26.0.20","@typescript-eslint/eslint-plugin":"^4.15.2","@typescript-eslint/parser":"^4.15.2","commitlint-circle":"^1.0.0","condition-circle":"^2.0.2","coveralls":"^3.1.0","dependency-check":"^4.1.0","eslint":"^7.20.0","eslint-config-prettier":"^8.1.0","eslint-plugin-prettier":"^3.3.1","husky":"^5.1.1","jest":"^26.6.3","jest-junit":"^12.0.0","jest-silent-reporter":"^0.4.0","prettier":"^2.2.1","pretty-quick":"^3.1.0","rimraf":"^3.0.2","semantic-release":"^17.4.0","shx":"^0.3.3","ts-jest":"^26.5.2","typedoc":"^0.20.28","typescript":"~4.1.5"},"gitHead":"ab27843d150f131820ff07d657e52073ffe14e3b","_id":"ts-async-semaphore@3.0.0","_nodeVersion":"14.5.0","_npmVersion":"6.14.11","dist":{"integrity":"sha512-C0kCQavt/lseAnTd3C38y8OHhSmvm8mXMX0BnLn5bMjfVAbi7MLvLv7BcHS0/CFZferByIbx72wUxypGmEWsvA==","shasum":"c55cc3e321fe25de6d37c509b56fa59d602d1ebc","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-3.0.0.tgz","fileCount":5,"unpackedSize":18792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOTc7CRA9TVsSAnZWagAAEJ8P/2YX+M5IcG2rb5Nc0IFO\n5BN+1izijO7x3+eSQUVsBkaOTw8xUOyWROEq+RTLXksm1eawliLtjnlPXnQ/\nCqj9MnRFn2kSHLcHkxNOdy6zJbN0D84DjqCkrko8c6tYIqWerkE4jUvzge+U\nt0J/MxGje68GtnjLK+StRXIKJqARYE3fOictgvN95bQ1MnbR+DmPbrdIIcAQ\nfGhYd2wd6kYJVONq/oZhwqunlL9SZ+67cLJcyDkyqIBG34DJEuwwYV9LaMR6\n+nmgI71Dn7dPrVenoRzb8GrWzaQvALizvJaBqT4puPmL3DYaP2IUIyzioq+b\nfPfAW7eH9aIKng7uWCzsxw7mEePYTDP8la6uC3cxcCK4kLWYGlJbB6V3RMkb\nulUVnQhz92HtXh+ZZc+bFpUn8KDt9lRI1NB6eW8JaKUJDYNRsF5pJW//JpwD\nHlspg3mhTAMYtXEGz/4asULz/VYqlgUGEQ6edtrwL2OqJ78gBJ02a6+o3+Ts\nE3JZbTCLWtlnIuzC92sohp/pYjr+0gwlj8BEeu9xdqh6ghnlyFqTApi94NW+\n8n64BEPl9oY0nthHjumgpte9kmA890TnLZftSGBBdQ47s29w7sqIfDmNrfdU\n2b5zFwJ0sFIDyhgP0866+NK8bYErmYpwr/Y2zOtJp4UaArQRIhCRMqq5aaRk\nBWLT\r\n=ya5h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCaYIs6k/jp+kvKEOFiEJ+7/MEuU7ZBAbW3VyQdVxBSCwIgI4mrnqlBs7R7SzdY8mMKPaSx8j+EYrbcx93tczETIog="}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_3.0.0_1614362426646_0.4471486818884245"},"_hasShrinkwrap":false},"3.0.1":{"name":"ts-async-semaphore","version":"3.0.1","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"scripts":{"serve":"tsc -w","build":"tsc","lint:ci":"yarn lint --format junit -o reports/eslint/results.xml","lint":"eslint ./src --ext .ts","format":"prettier --write .","check-formatting":"prettier --check .","check-dependencies":"dependency-check package.json --missing --no-dev","test":"jest","test:ci":"jest --ci --runInBand --coverage --config jest.config.ci.js | coveralls","clean":"shx rm -rf node_modules/ dist/ docs/ coverage/","doc":"typedoc --out docs --name ts-async-semaphore --tsconfig tsconfig.json --entryPoints src/semaphore.ts","semantic-release":"semantic-release","postinstall":"husky install"},"engines":{"node":">=14.5.0"},"devDependencies":{"@commitlint/cli":"^16.0.2","@commitlint/config-conventional":"^16.0.0","@semantic-release/commit-analyzer":"^9.0.2","@semantic-release/github":"^8.0.2","@semantic-release/npm":"^8.0.3","@semantic-release/release-notes-generator":"^10.0.3","@types/jest":"^27.4.0","@types/node":"^14.18.7","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","commitlint-circle":"^1.0.0","condition-circle":"^2.0.2","coveralls":"^3.1.1","dependency-check":"^4.1.0","eslint":"^8.7.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","husky":"^7.0.4","jest":"^27.4.7","jest-junit":"^13.0.0","jest-silent-reporter":"^0.5.0","prettier":"^2.5.1","pretty-quick":"^3.1.3","rimraf":"^3.0.2","semantic-release":"^18.0.1","shx":"^0.3.4","ts-jest":"^27.1.3","typedoc":"^0.22.10","typescript":"~4.5.4"},"gitHead":"6b2ee881df39fbd711dd930bf57005c304b4d3d6","_id":"ts-async-semaphore@3.0.1","_nodeVersion":"14.18.2","_npmVersion":"7.24.2","dist":{"integrity":"sha512-tCNzTwD3k+lpvg0IuIOABi6GwFT/9zXO0DCKXiYF4tGQaC/s6bHWT1Xme7q2D//CGLEyShxlokeh9xOTBwG4Jg==","shasum":"eb892521c7937bf37f3d352672602bc7d22dfa68","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-3.0.1.tgz","fileCount":5,"unpackedSize":18825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5ddnCRA9TVsSAnZWagAA9NQQAIOSb5KZ6WcapCIPn1h2\nx//ZX28kwN7bPkVSKFLDA9p9VU1F3c4XuEdb0Hu5Vl0lX1X1WeW293dog51e\nONxE0xbSK51N3bpxfE6e+rx7xC2mBwxJsXBX1ErV7404yXNUKgGxvRcHgBEZ\nes9PhJE7x9jJhhy+wbGa4u0ekvkUGdbIdh5/3Ae+HV2hfiWE5pWQH2COOGJ3\n1Yl7fUnuu/WsCbEJQmTN6F03i3xIxWPsAHDMfA6ZIm3yifDlYBnnjl7qZoL+\nz9CHNWaE7x+lTaaUhweTnuNHaOJBvaB5QFAhtQW7DMAtc4MrhAqbcwwN0qXC\ncG8io8/XTJNQldG/QGcF+06kpVTTLu6jVenQIWhZkJqKYm2sHwaZWtUFm+SW\n0DCRCXQ6xxGB/FBn8LGqehsCUn/eCp0hpWkI/3XLybC4+2xuYshSrGNBakmX\neuL4C3WFzbq1rZ+SrsDOM9hAemwexYGTdW1bGlSPz2Srf9xA4R/TouJo1tpT\n7Zw4+0Ts+obbC7YJDjolz/sF7/O3ARCWaaXmCz0L2TArOlnvlSbmkFEoQJpT\nqpX7pSIasRsujEDvUNqMs+eqMfSJ4ZvbwjY3ElXVTOyLRB1F0Jab9xwuUWI1\nStzf4oAWJBh9O93558gybyA/RHdmK+M0iVmf+eCXJTYMblaqzvyGtMT7rE1F\neKHK\r\n=D7ZS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD742+10PW0qgSK97c7MZoyGspAp0jc/2TkNbXLFXQASAIhALUUC72B2Ve2iS+wHWKiSDC8VxpkbT4isI6ly4oiJGBe"}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_3.0.1_1642452839873_0.897905595365273"},"_hasShrinkwrap":false},"3.0.3":{"name":"ts-async-semaphore","version":"3.0.3","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"engines":{"node":">=14.5.0"},"devDependencies":{"@commitlint/cli":"^16.0.2","@commitlint/config-conventional":"^16.0.0","@semantic-release/commit-analyzer":"^9.0.2","@semantic-release/github":"^8.0.2","@semantic-release/npm":"^8.0.3","@semantic-release/release-notes-generator":"^10.0.3","@types/jest":"^27.4.0","@types/node":"^14.18.7","@typescript-eslint/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^5.10.0","commitlint-circle":"^1.0.0","condition-circle":"^2.0.2","coveralls":"^3.1.1","dependency-check":"^4.1.0","eslint":"^8.7.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","husky":"^7.0.4","jest":"^27.4.7","jest-junit":"^13.0.0","jest-silent-reporter":"^0.5.0","prettier":"^2.5.1","pretty-quick":"^3.1.3","rimraf":"^3.0.2","semantic-release":"^18.0.1","shx":"^0.3.4","ts-jest":"^27.1.3","typedoc":"^0.22.10","typescript":"~4.5.4"},"gitHead":"db0a7cdb168932b6ea4ad6b79179b82f14299976","_id":"ts-async-semaphore@3.0.3","_nodeVersion":"14.18.2","_npmVersion":"7.24.2","dist":{"integrity":"sha512-4AR2Vke+KCMLJPB/EghFp63mxumeq2/mNwR+qmlU5uvuiXSInoaUIf7JO00aPrtIlRxGmb4n6ztW994y924TCQ==","shasum":"c2508fda68f40adc6f5e990fd55c6c3f3d4b2739","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-3.0.3.tgz","fileCount":5,"unpackedSize":18067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5ekdCRA9TVsSAnZWagAAGAUP+QHifQNQvN8TwNmMil3b\nMCEJz0t28IeP7LjM+K3ZC2ArE3RtAkk6eix4h6sVoMz+vqKHsHL+qrRTHv2w\nut+GfSNSmNma+E2AxaYWyp7uusKIK6UDYOd+eVJcTYdcMr4jFuGEkGXwDPGn\nTfRfJlJb9DB/UwrLUbRQ6Ep+bjG8PLfyzDDyd5KJyaVTta3HbqLBvdcxOHT2\nDv3L54JOJLJu8qa1BCFFWNURLDQKPmcN4mRroHEyliLHeh49Mf9g8K9HfhiX\n0auFVapTS59440ToGlRYY4iRpEEVq01aHZs3URAeLw4N6XIOxZNitq+ViM/J\nuA9arClRaxo/2rJk9qs0nR4kCncU5texdOKjeqcUEcaikfjBmK43z9M/cjgR\nowgEMsrlhbKvzVAx4YmJ0oJz6Np3sOWitcZIlF2YFZSuYuy3R6C00biTQ2jg\nMaD7abLWHTBRvDlCDaF5aMPhBnuGdmkXYXM/2r/u2hNAZzqA5O6/ALNwwwrC\n6Fp99lIgXe65MQG3RmDbRRn3zSyYXncJWH7pWhwkVkim1wmNURRvseS4xD2o\nZ1DN/UYjsciw31By25J3osVFU0xfOFnDSoY9YuOkZmwX04QFr2Qjde5Carda\nTaTc8NEHvx9LvsvYAKARQxS6lo1ZV0kqOTSxtKZvit7oYu3frIA1fDng9UGx\n4DWh\r\n=L4oD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCymVgPLJpOQNHPZuCZ/01fVCkCUotyuqPnb0ntqWxpQIgLLH+gUWetKuQ+qvqQXH+2hNxnkoLQ6OrDgGZYJXYOog="}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_3.0.3_1642457373012_0.36093443913588685"},"_hasShrinkwrap":false},"3.0.4":{"name":"ts-async-semaphore","version":"3.0.4","description":"A counting semaphore for node based on Java's Sempahore.","main":"dist/semaphore.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"engines":{"node":">=14.5.0"},"gitHead":"3adf7aa01c564991754e07f9beb31339e0316441","_id":"ts-async-semaphore@3.0.4","_nodeVersion":"14.18.2","_npmVersion":"7.24.2","dist":{"integrity":"sha512-0NbGN4nbSvwyq8ebCMO8WcTQnaj8LtGj2yWFbkdKB8av4RBL3B4hFOsd9uH70wmBjn2x4iVuNdYbcAfscJqMTg==","shasum":"c20b3afd8c85c5ac411dbae5bb6d3140be9d1e94","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-3.0.4.tgz","fileCount":5,"unpackedSize":16924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5erCCRA9TVsSAnZWagAAljMP/3d6lyWjktqzzU5RCqm0\nHxKF9HI4f0KnEpO5AyHj23lWV94IlreXqDCnH/0JUUHMwHk2ZkbHnz4+cdmb\nhPm68se2F17uqa/TmyfYoLJ1dFmwGvKIXGIFLDWl56tVUUR60U5XssD2TwnV\nHJhT0YKmNQIXAYYbw9w3XwX6Ksob+FF5OfaGjxOkuX7EKZBLTwUGN2RWB5fR\nzQvZsRlqkQSLkwW5W14LZ9iypNJtbsjT+vcRuc4GROt/smLbOPEmAhBmuE57\noaWeBZ722GgSPpSxpAGLvxSEFcVmmc06yXP57KEK1x8fHN4/PoIPdvE4O4M5\ntGXRYjJtfU388IibAU4SiBdvxfCGVwdE2nAX4kZs9IZDqmuscHPHKoRuq64R\ne0qQUmXglf8pnL1Lg6bqPjgEGZEBHV8j9F6XfQo9GOWlbnjtwCPQGVC4ZsYh\nII+afXZfiWgIjyTwvnylnR6xmry17s9dHRH8PCmq+JFrq8VmuxoPAaom6u6J\n1B5QkVcACYAYg1dtwhdsEpDSIG+lCWVOnYSVLEobwq5K3FBbPVeH0CSmN/jH\nnsy3ZHIrhoQ66dswRO2KP2La1K2uvOpPIqDhx+7fV0Gib07zsrBV8gWvsBIO\nsdxMObe8HsdcNQ/jQZKit7YzRolJ8OBjdpGnO+K2/0b/jD+xjShde7RQyIwh\nkE1y\r\n=ynXl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbw/UlJrtYN1kr2PUfsBMvZqCZawVM0bwyWdwqM1SSmAiEA4CHPE1Ei8bdmjyoVWwYGYue3sGxoKVj0F+L98vr6RgI="}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_3.0.4_1642457794645_0.05287568323569003"},"_hasShrinkwrap":false},"4.0.0":{"name":"ts-async-semaphore","version":"4.0.0","description":"A counting semaphore for node based on Java's Sempahore.","main":"./src/index.js","types":"dist/semaphore.d.ts","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"engines":{"node":">=14.5.0"},"dependencies":{"tslib":"2.6.2"},"type":"commonjs","_id":"ts-async-semaphore@4.0.0","_integrity":"sha512-Ynu5Zr/inWU0P51nTI7zjPIvqj7nn9L6g65jgRghqakXYQg717Ly1c5JtCN0LpmtAJC2wV1/CXw54lnwEvMvxQ==","_resolved":"/tmp/1d71e3dfd510a5257168fa12ca182855/ts-async-semaphore-4.0.0.tgz","_from":"file:ts-async-semaphore-4.0.0.tgz","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-Ynu5Zr/inWU0P51nTI7zjPIvqj7nn9L6g65jgRghqakXYQg717Ly1c5JtCN0LpmtAJC2wV1/CXw54lnwEvMvxQ==","shasum":"bda292a2d5ba0f122ecdac7ee941db8de19594b4","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-4.0.0.tgz","fileCount":6,"unpackedSize":20681,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEitKSOEiHCbSnS2Jr6GY9aKyq/9/Z9Fb4Trlu3+IaaRAiANmJzyVinOG4dp7q2W6zs1PYs3qgSYmm+DTb4VNfublw=="}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_4.0.0_1708001996495_0.7642056736179095"},"_hasShrinkwrap":false},"4.0.1":{"name":"ts-async-semaphore","version":"4.0.1","description":"A counting semaphore for node based on Java's Sempahore.","repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"license":"MIT","private":false,"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"engines":{"node":">=14.5.0"},"dependencies":{},"types":"./src/semaphore.d.ts","exports":{"./package.json":"./package.json",".":{"module":"./semaphore.esm.js","import":"./semaphore.cjs.mjs","default":"./semaphore.cjs.js"}},"module":"./semaphore.esm.js","main":"./semaphore.cjs.js","_id":"ts-async-semaphore@4.0.1","_integrity":"sha512-0150x/54vpoKCjtX2Q10L/YQiGAWdxO1dcO12HVRzezA27FIVZhUYjSgrD1DL5/8aF+zNeUsOkY9rYAq11z/eQ==","_resolved":"/tmp/d135d656cf2f6a7129c96f266e469c29/ts-async-semaphore-4.0.1.tgz","_from":"file:ts-async-semaphore-4.0.1.tgz","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-0150x/54vpoKCjtX2Q10L/YQiGAWdxO1dcO12HVRzezA27FIVZhUYjSgrD1DL5/8aF+zNeUsOkY9rYAq11z/eQ==","shasum":"ed59042186e4d3be54a5ac3c189438613ade70af","tarball":"https://registry.npmjs.org/ts-async-semaphore/-/ts-async-semaphore-4.0.1.tgz","fileCount":9,"unpackedSize":22440,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGzxg1kkCBjpSE9L9VnDY6Cf65/Wf74Jv9OV1Xs96kmaAiB65OKtvdnpzJf6owN4zaVflUn67vbJuWvStJUdY2lMsw=="}]},"_npmUser":{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"},"directories":{},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-async-semaphore_4.0.1_1708431671927_0.3829899986875811"},"_hasShrinkwrap":false}},"time":{"created":"2019-04-27T11:13:01.444Z","1.0.0":"2019-04-27T11:13:01.566Z","modified":"2024-02-20T12:21:12.526Z","1.0.1":"2019-06-06T17:00:27.940Z","2.0.0":"2019-11-27T21:26:26.606Z","3.0.0":"2021-02-26T18:00:26.759Z","3.0.1":"2022-01-17T20:53:59.994Z","3.0.3":"2022-01-17T22:09:33.174Z","3.0.4":"2022-01-17T22:16:34.819Z","4.0.0":"2024-02-15T12:59:56.698Z","4.0.1":"2024-02-20T12:21:12.073Z"},"maintainers":[{"name":"skrtheboss","email":"denisfrenademetz97@gmail.com"}],"description":"A counting semaphore for node based on Java's Sempahore.","homepage":"https://github.com/skrtheboss/ts-async-semaphore#readme","keywords":["semaphore","async","await","async-semaphore","ts-async-semaphore","permits-semaphore","credits-semaphore","typescript","java","java-semaphore","concurrent"],"repository":{"type":"git","url":"git+https://github.com/skrtheboss/ts-async-semaphore.git"},"contributors":[{"name":"Denis Frenademetz","url":"https://github.com/skrtheboss"}],"author":{"name":"Denis Frenademetz"},"bugs":{"url":"https://github.com/skrtheboss/ts-async-semaphore/issues"},"license":"MIT","readme":"![TS Async Semaphore Banner](https://repository-images.githubusercontent.com/174854938/43fd2380-7682-11e9-92bf-8d162736f579)\n\n<p align=\"center\">\n  <a href=\"https://circleci.com/gh/skrtheboss/ts-async-semaphore\">\n    <img alt=\"CircleCi Build Status\" src=\"https://img.shields.io/circleci/build/github/skrtheboss/ts-async-semaphore/master?token=abc123def456&style=flat-square&logo=CircleCi\">\n  </a>\n  <a href=\"https://coveralls.io/github/skrtheboss/ts-async-semaphore\">\n    <img alt=\"Codecov Coverage Status\" src=\"https://img.shields.io/coveralls/github/skrtheboss/ts-async-semaphore/master?style=flat-square&logo=Coveralls\">\n  </a>\n  <a href=\"https://nodejs.org/\">\n    <img alt=\"NodeJs Support\" src=\"https://img.shields.io/node/v/ts-async-semaphore?style=flat-square&logo=Node.js\">\n  </a>\n  <a href=\"https://twitter.com/acdlite/status/974390255393505280\">\n    <img alt=\"Blazing Fast\" src=\"https://img.shields.io/badge/speed-blazing%20%F0%9F%94%A5-brightgreen.svg?style=flat-square\">\n  </a>\n  <a href=\"https://www.npmjs.com/package/ts-async-semaphore\">\n    <img alt=\"weekly downloads from npm\" src=\"https://img.shields.io/npm/dw/ts-async-semaphore.svg?style=flat-square\">\n  </a>\n  <a href=\"https://renovatebot.com/\">\n    <img alt=\"Renovate Bot\" src=\"https://img.shields.io/badge/renovate-enabled-brightgreen.svg?style=flat-square\">\n  </a>\n  <br/>\n  <a href=\"https://www.npmjs.org/package/ts-async-semaphore\">\n    <img alt=\"npm version\" src=\"http://img.shields.io/npm/v/ts-async-semaphore.svg?style=flat-square&logo=npm\">\n  </a>\n  <a href=\"https://bundlephobia.com/result?p=ts-async-semaphore\">\n    <img alt=\"Minified size\" src=\"https://img.shields.io/bundlephobia/min/ts-async-semaphore?style=flat-square\">\n  </a>\n  <a href=\"https://bundlephobia.com/result?p=ts-async-semaphore\">\n    <img alt=\"Minified-Zipped size\" src=\"https://img.shields.io/bundlephobia/minzip/ts-async-semaphore?style=flat-square\">\n  </a>\n  <a href=\"https://github.com/semantic-release/semantic-release\">\n    <img alt=\"Semantic Release\" src=\"https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-blue.svg?style=flat-square\">\n  </a>\n  <a href=\"https://github.com/prettier/prettier\">\n    <img alt=\"code style: prettier\" src=\"https://img.shields.io/badge/code%20style-prettier-blue?style=flat-square&logo=Prettier\">\n  </a>\n  <a href=\"https://github.com/skrtheboss/ts-async-semaphore/blob/master/LICENSE\">\n    <img alt=\"Mit License\" src=\"https://img.shields.io/npm/l/ts-async-semaphore?color=blue&style=flat-square\">\n  </a>\n</p>\n\n# Async Semaphore\n\nA counting semaphore based on Java's Concurrent Semaphore.\n\n## Install\n\nInstall the module via npm:\n\n    npm install ts-async-semaphore\n\n## Quick Example\n\n```typescript\n// fairness false\n\nimport { Semaphore } from 'ts-async-semaphore';\nconst semaphore = new Semaphore(0);\n\nsemaphore.acquire(2).then(() => {\n    console.log('Hello');\n});\n\nsemaphore.acquire().then(() => {\n    console.log('World');\n\n    semaphore.release(2);\n});\n\nsetTimeout(function () {\n    semaphore.release();\n}, 2000);\n```\n\n```typescript\n// fairness true\n\nimport { Semaphore } from 'ts-async-semaphore';\nconst semaphore = new Semaphore(0, true);\n\nsemaphore.acquire(2).then(() => {\n    console.log('Hello');\n});\n\nsemaphore.acquire().then(() => {\n    console.log('World');\n});\n\nsemaphore.release(1);\n\nsetTimeout(function () {\n    semaphore.release(2);\n}, 2000);\n```\n\n```typescript\nimport { Semaphore } from 'ts-async-semaphore';\nconst semaphore = new Semaphore(0, true);\n\nsemaphore.tryAcquire(1, 50).then((val) => {\n    console.log(`Acquire ${val ? 'success' : 'fail'}`);\n});\n```\n\n## Documentation\n\n#### Constructor: Semaphore([`permits`], [`fairness`])\n\n`permits: Integer` Initial available permits of semaphore. `Default: 0`.\n\n`fairness: Boolean` Fairness of semaphore. If set to `true`, a FIFO rules applied, else, look on each acquirers permit value.\n\n---\n\n#### #availablePermits()\n\nReturns the current number of permits available in this semaphore.\n\nReturns: `number`\n\n---\n\n#### #acquire([`permits`])\n\nAcquires the given number of permits from this semaphore.\n\n`permits: number` The number of permits to acquire. `Default: 0`.\n\n## Returns: `Promise<void>`\n\n#### #getQueuedAcquirers()\n\nReturns an estimate of the number of acquirers waiting to acquire.\n\nReturns: `Function[]`\n\n---\n\n#### #getQueueLength()\n\nReturns an estimate of the number of acquirers waiting to acquire.\n\nReturns: `number`\n\n---\n\n#### #release([`permits`])\n\nReleases the given number of permits, returning them to the semaphore.\n\n`permits: number` The number of permits to release. `Default: 0`.\n\n---\n\n#### #drainPermits()\n\nAcquires and returns all permits that are immediately available.\n\nReturns: `number`\n\n---\n\n#### #reducePermits(`permits`)\n\nShrinks the number of available permits by the indicated reduction.\n\n`permits: number` The number of permits to remove.\n\n---\n\n#### #tryAcquire([`permits`], [`timeoutMs`])\n\nAcquires the given number of permits from this semaphore.\n\n`permits: number` The number of permits to acquire. `Default: 0`.\n`timeoutMs: number` The timeout after which the acquire will fail\n\nReturns: `Boolean` Promise `true` if success, `false` false if fail\n","readmeFilename":"README.md"}