{"_id":"@btilford/ts-base","_rev":"7-69b57890118cfbafd0dc78bd68af6bbd","name":"@btilford/ts-base","dist-tags":{"latest":"1.1.2"},"versions":{"0.0.7":{"name":"@btilford/ts-base","version":"0.0.7","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean lint test compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"^4.2.11","@types/chai-http":"^4.2.0","@types/expect":"^24.3.0","@types/express":"^4.17.3","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","nyc":"^15.0.1","sinon":"^9.0.1","source-map-support":"^0.5.16","ts-mocha":"^7.0.0","tsconfig-paths":"^3.9.0","typescript":"^3.8.3"},"dependencies":{"@btilford/ts-base-lint":"^0.0.7","@istanbuljs/nyc-config-typescript":"^1.0.1","npm-watch":"^0.6.0","reflect-metadata":"^0.1.13","ts-toolbelt":"^6.3.11","utility-types":"^3.10.0","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"72a0bda94eb12ea79712c113f19c1d4475ec79eb","_id":"@btilford/ts-base@0.0.7","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (linux)","dist":{"integrity":"sha512-Zpa1ukbCbTn/dSrMhkTK+f97DAwrN7PwOW6YERoMyTj5Ox4Hgw08gOlvzIvrDjfQpyptXtqSNsc8MSn/jlHIHA==","shasum":"e3ad4bf0e43fe0e1702ba3cfd42a29e018eb93ac","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-0.0.7.tgz","fileCount":530,"unpackedSize":919066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejjcwCRA9TVsSAnZWagAAFqUQAJXxtoMoe9/dVAfc6lGd\ngjkHzJIDTzxxWTEPsemD4b0SddR92Y6GoK2lFV6SriciopTkhD2FpwcAo9Jb\nkHOx6i+wjxXwpVhRhMO4P8rnrSV7/v/fl1mSJ64uuJi/8scbtuOhWWtU0Jfx\nInUPxr08jbOQQHuyB3uqRkXkiWA3PZHI0w32pLuPT59/xUN1Qi6jyN3up8d5\nm23fIc8sMcpmGmM2I3FQA2UB2941LKUJiQvkMeb8/O3+e2E0S+0Dfj69Vk0B\nhN84A+Cbt6qCo85Uw7qSu3TT/ntZxXpgXF3U6eeZyS7ECut0lc6zph1XPDNZ\nNZ5FTeq/DM4zUZcwLNkycfGjGee9Uv2Xz5HPFmeLD+5dneJB0A7Ws/ElGCPI\nBBXV/ZGWd8B3b6iLPbmyCsKXGLyTN5cB/KKWoWMhly/ocdNPjBnasXxzR4sk\nba1B4we4ItruAcLZqMblFVhwzXv5WJk8STUb5KdikVAasOlk/9n0fFM/luPV\nOraaP7Kok3UVel+1HjyEEZIU7IfpgNfkTVmltQPONL2MvhEOJ/U3jrtvtMzv\nInrmhIYjYI0oOebSemCZdoc85ouRwf6UloMA6SJCKymXKXktfs0QdCG34ys8\nOelSk52gn0UtASZBUdIjAfwnhwHOGPSezzTihvmvcn/McAFKL3WxLO6uLh59\n4JHi\r\n=U+8t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBUaEZuUxeo6LLbxSmQg/XlnDkTPWxrm15GdVjj5l7rtAiEAhJPsQLpLL+G6NUvRTjkU1/aDs0NoW0VkCMkR4ln6QdE="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_0.0.7_1586378543660_0.915932762224066"},"_hasShrinkwrap":false},"0.1.0":{"name":"@btilford/ts-base","version":"0.1.0","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean lint test compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"^4.2.11","@types/chai-http":"^4.2.0","@types/expect":"^24.3.0","@types/express":"^4.17.3","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"^9.0.1","source-map-support":"^0.5.16","ts-mocha":"^7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0"},"dependencies":{"@btilford/ts-base-lint":"^0.1.0","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"6ccd83ad8a0c46f6bef6a030a9af21383fea794c","_id":"@btilford/ts-base@0.1.0","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (linux)","dist":{"integrity":"sha512-FCn0CQXVgN4xF8JJf/sYZSh9lW18927IfsK0wnokW3bu6YOZuTkZjbiL4nIUEM59b9Ov4+H2FECe0vFrI/AGmg==","shasum":"159b95abe967cc59bc15db91a486fda16fdab1f5","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-0.1.0.tgz","fileCount":827,"unpackedSize":1551147,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek6RrCRA9TVsSAnZWagAAzJAP/RI2nDH3e9cywv+JBNiu\n4P35X+LdH8VwVm534eQmkUoQdiytPUsjZ8KZH1mg6O4srGKA/K72nnz6B6dK\nqzCGRN8xQyLBUG1+4IAsj7ieRnM+Ub2CJlE02jvMtCVFzNNxMwe7yOFLCgcg\nYapYrYvxHcM8byEXb1ZjpOwdYYtwZISC2dd+EXqLzhOzfUs8bHUe2waLi29L\n2xlUnysl1dNssjMWOajDk3GGQKvoaI6JJj61ZqKdX66epMGT3B6t+n3B/ncs\ndYZRKOyII9Ff+HeBV+iSC4Fb8edrf9KpejhvGTiweTtSh5JsF/2tiCX+v/EZ\nqsMqyWn++lcccgulFj1iGcshgKS7d3ACAYimh1jzUtk5QFfBPEKoEo5dijHE\n1ekCKNWhJx6AReKuPDGFQTtpj60qEL1P83fTrcV8guqQ9N9FvUjXyXRYLC7G\njZxwYDLgjDqqOw2fT4nPW7aMTpLbvhiijKFFYCl5mzZI1uCJ0mtFJYUthQ/A\nJKsGz+X/mC3pKQ/lyUVGTll9WD2SLO6pZIR0LJEDqizRKuixLfs/QjFQKWQW\nS1d9ZsPGoVuz4vbSgeZsQRR/FHy+ReNHFEEtr8rCxYC+6LBT7FOpGTp5sc9h\nA/LYa9xFJpAxTh90AiboVMN3+5vFy2jnkRDXJzGV2kcof0WkAlYdHCtBKaaM\nUDJo\r\n=B2zD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4haw2oSfiDOCvywy30NbZHxsCfuXB4n7WqNBZtje5kAiAoEoQaEYygYuOZBs0VXUmMIHsLZpxvHiTl2FPRI6310w=="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_0.1.0_1586734187156_0.2981136553164869"},"_hasShrinkwrap":false},"1.0.0":{"name":"@btilford/ts-base","version":"1.0.0","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean lint test compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"^4.2.11","@types/chai-http":"^4.2.0","@types/expect":"^24.3.0","@types/express":"^4.17.3","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"^2.26.0","@typescript-eslint/parser":"^2.26.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"^9.0.1","source-map-support":"^0.5.16","ts-mocha":"^7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0"},"dependencies":{"@btilford/ts-base-lint":"^1.0.0","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"8466e4d270c1e35184c2460e086a16d19d93e9fb","_id":"@btilford/ts-base@1.0.0","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (linux)","dist":{"integrity":"sha512-IeHT6bWQ1kwnTmkjwecM/SWxqi7XAhe1PJBNVci5LjCgrBriSa6qJWMebHIHCOXH8o4F1w/C8OZSjCCG0lV4PQ==","shasum":"47c396ecea63ef97b294752a5a1b07fb29311e08","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-1.0.0.tgz","fileCount":855,"unpackedSize":1577752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJek93RCRA9TVsSAnZWagAAEPoP/2MvczfuPuX6Q8xJYPq+\n4H64mPx02gesQc2BgGTNBJKsFKiYB/Cch3Zczhy08cj9fW85mhy9qiVCeNx5\nJrPVhmpllFYT6UcAYHVLXolknPaoiYUx11xQnBA4M/HLDlsV4y4YQ5elvPxn\nXKpaKn5VTM3bTjmhm9c5BFmHaHZFUs1k/wy40OqT+WNrOxZV1Znpn4jNEM4f\ni+AE7zcNiaUdq7CULD3L8pu9Rrw1cJ6aPCV5nOB+Amc+HLH5pldx/V3uICSO\nfpRP2OJc8SGlCRPFh1YpAPl5U7/I4CbdvxmEn5LHuNCRy4fHXf7YX43Lp+HJ\nT3Lblukux2UQ5qg7reXCOAVS5B3kt9Ebyd7NmJaU4jC5VZanKdy4A/Hl06j3\nt2EffnjUc5JPZpvU5tud+ZCAQu6eb+4yS8SVOfscNrVjUPH7+gV/83674C7Z\nGWAfyLmsGvnF6PzAUugfUQCpnczp3898naZdNPgAZDSfv2D1jg8PQmy5z3Wz\n68Lv7nQvAcJwbWCFbRPw47/QzASwZKHGxSpS7x9zS4LS3CBsGohoRcf8QHtI\n1qGQYx8+unHaTrsWQg+O1E8sjuucIAROZvHb6zuB5QPmjFsG6wSkQDczZF4w\nbWRNSe2AWjRGH2O3ZMETYrZ92ViyQKC1m3Fw7a6p/VTAIGd+xEPJh8AfTDrg\nLgiE\r\n=XyNj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAOjI+Xq1QKiaIpSSxHNodH+Kwdv0vTOZyKMXU28a4VNAiEAoxnyKXeDF52B7CHmm0QnfSxooO6j1iMaCbuInegRB+0="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_1.0.0_1586748880655_0.7382011135183646"},"_hasShrinkwrap":false},"1.1.0":{"name":"@btilford/ts-base","version":"1.1.0","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"~4.2.11","@types/express":"~4.17.6","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"~2.29.0","@typescript-eslint/parser":"~2.29.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"~9.0.2","source-map-support":"^0.5.16","ts-mocha":"~7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0","ts-node":"~8.9.1"},"dependencies":{"@btilford/ts-base-lint":"~1.1.0","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"ae3ab3160af63c98520306d9a9f4792a3e60ec6d","_id":"@btilford/ts-base@1.1.0","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-ym/YeghnvIsazRQjTzT6QlLgFTnGQXc5hS+GzyK227hNj7OLRlObT51v6WXsW5UE4evEKiEcar0X1ekDzrNZ6A==","shasum":"baeb00bfeef1e680badb1c9a9006cd5a7add6a6a","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-1.1.0.tgz","fileCount":577,"unpackedSize":1107005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJepkYbCRA9TVsSAnZWagAA3hYQAJZpj1nspvXp+R/v6gpf\nSiFHxkcKcg2ORnsSjVUhFAsPxcD153hMzggbp6onGvRjLziu/hnbBJ5/n6wy\nntNTwNShOPyZHCiQZNPGlZ3ZGJYkU6WYHpW9wAx2VXFaTCHljzbmoWoRB6b9\nI1Ifi/Gcur3VIqXokCJNslZxyQubZ1kWDUr8YuRJFMf8dV71vyksJBa6hin1\nwood2TgJMoOaUC95K0Ba7DwsHDNajbq5cl34VZBUXczsdwH5mhamo1+JE4p+\nF3RPMrO9eemaAEph3MOvhPXyTNNYYIAjeChGYTDd+soHK5wJ33cghvdOK0SJ\nxsVp0ZaCPdwXR3xgc2XB04TFRwFIjR8LGH4p4jQkW6QOM3c4YJMIb1O+EIiB\nxZc1lSOfZh6ddKHkJjJr0i0QXye5VtxEnUfRNB3xPjXnaE9fjwKNuXrVXG0V\nyVwggaXt2CkAxw9B3oYsclIwM9nbH5uDykC4KBf4WJtKjSQpV5MwTJrBN5E+\nRRtZUg7WJRRYPAyo3Z+sWAOAwiR+CkZLUP4CVeMhtw0T65TJ0syf684f2NnQ\nBTLVDRPrvhBIryW4xQ2eOKXTCejYQPXHpBEze9JVLVMJmWUVmHp+lheHr6DU\neUrSoQ1bY62btZSGdoJdpR+SezyYg7mca8BAaLqmB0wIBLKeovJiofLYXSir\nvedS\r\n=c8iK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAXcH3pFt8zYR29CKmLX6DKEgM4sOMAK0OLjUHOeOneVAiEAo6WnS1TzmPKJsShXNbO13juhW6buUIy+QJDZETkCceM="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_1.1.0_1587955226354_0.4214549456170287"},"_hasShrinkwrap":false},"1.1.1-0":{"name":"@btilford/ts-base","version":"1.1.1-0","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"~4.2.11","@types/express":"~4.17.6","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"~2.29.0","@typescript-eslint/parser":"~2.29.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"~9.0.2","source-map-support":"^0.5.16","ts-mocha":"~7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0","ts-node":"~8.9.1"},"dependencies":{"@btilford/ts-base-lint":"~1.1.1-0","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"ae3ab3160af63c98520306d9a9f4792a3e60ec6d","_id":"@btilford/ts-base@1.1.1-0","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-x06reuQtYDREqw8t1CIdzsstj3HC7BU9UMq9gBKdx7A5hhpbNpcUCCjVxB299orOIPpQ61ZBlUrrdWh4D1bQtQ==","shasum":"4acdad1b032017aa2d1942ad34e1d92e9e525770","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-1.1.1-0.tgz","fileCount":577,"unpackedSize":1107167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesLflCRA9TVsSAnZWagAA1PUQAKLSDJGLKfDjhkCKl4Q7\nNfaKOihJJiYdy8B6q0hRy6tFAyd2Mc3ICLDgmL1bghDfoEl2C9H7PT8k/F89\n3cBgaUPlMyH3mU++4S7t0R02+Lo9hYFf176sQZjnyvovumRHFrTRJYczD7Oj\nDenk7olK/aV5b965rYvTNZZ+uLn/DQUU78Kdrdv0VVHFertvDD/GvKfLdg1k\n8iiSb3jBPM3erKu7U+9KoPoqwlM8UWb2yC/0q6wctaHtrQbq7IN+6LX2oFsq\nyEyEvRoFKQfgnOfl886NnaRXbjm8YcVvVENpk+b8/ACXh8AuGr030ZhjZaDd\nS1aNr/gKr7PeCjKJsH/Ea461KBexRImSN7y+K2+qPF4JRyKzJF9PEbndcRIR\npCqVbzhlrHJwPj4YhLKaWrf/ah9Vlpemv70iv2DV+/L6mDMTnHenTESz/X34\nC+qP4zY/E/498qGfn4swCAZwqKBa6bqb+a6Q8vHQ7IFPl+fCy0XNOILYxmHl\nQHCAaqp/xEq2S4bxoouivrZm3Wbok+k5+pD7ykTkU39BYN22gQedkQJV4cND\niZ1BZvkWVpt0Hxl+dE60NYH9a5kztXX4bobO8moBWv0SsaudxkKjmncWYkma\n5kJ7yq3+V/Emy/a0VywyI5fh3dhrqKweN7wW1+2+dixo+6sTeLp7NSjJmE9D\nm/+l\r\n=lXVB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEVwafUuYcJl5ViMsjHmVjZBYLfltttE3K8CeTcG/mHOAiEAgdHN5e64fbXtpg4xhC8/UL+tRJAYzvK8Lo6z9PApsoc="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_1.1.1-0_1588639716897_0.5969909006565011"},"_hasShrinkwrap":false},"1.1.1":{"name":"@btilford/ts-base","version":"1.1.1","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"~4.2.11","@types/express":"~4.17.6","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"~2.29.0","@typescript-eslint/parser":"~2.29.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"~9.0.2","source-map-support":"^0.5.16","ts-mocha":"~7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0","ts-node":"~8.9.1"},"dependencies":{"@btilford/ts-base-lint":"~1.1.1","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"ae3ab3160af63c98520306d9a9f4792a3e60ec6d","_id":"@btilford/ts-base@1.1.1","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-3wWV9hEb2oOB5qpE313YAdHLwPw0Glx2vrviA9J/5zJs2sMDiSnH9YNNq0zNI3fJoAZPqMdPIhlNBn+4DjnneQ==","shasum":"999d9e73edb109724c9e29fdf5a6ba394d97339b","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-1.1.1.tgz","fileCount":577,"unpackedSize":1107695,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesLhRCRA9TVsSAnZWagAAzVMQAKAJTvKNX6kmcJguIwbn\ncNv60geZqS7yDpwAFV//hD5f3EosFUt31Qr8q0fAD9xe3Ypx51EuSdHsU6Xw\nI0hGMKj2Rkmh+h5aCahpCObC2WCemG2bNAjJnuXR+8k2FmOvy42P4hSV26b4\naX0dLrA06k4UR2tSzd0IPdAVPUHvthxRvFfOmhnE6BUIlLLQLPtdJejQo/7/\nUtXoZnLcEZAYgJWGbGv9YR2Ca6g3r3hJ5nh9GiO/cxqq4eE5ycl9tdEy9M+X\nHrlRzossyaJBZWiNmJXpcKNI1lZst2hWyGzoW3CYXjfN8iiBSJ3ipiPcRuyP\nDQL2XP1mqsk9S3mkU1kUXSuOqpGQlh+1nxohWbhmKiisVX3x9juJPShTZOm1\n3XefuQHGX6UnS4lachcG9s8iWBdZbDbHhoc0/LhqH72GA2MYKAF8kXjfHukR\n+muYOb2gxIeWK2Os6NLQP2wwcrUoaChR4uZxLhB5aXxQ3Gsun1ge6nNkc/i3\nvjF2R7+2db4jUvY6Y9id4wnXIrwpi4Ww2P71KSfnbIxn1hFWmxfJUmimrrWZ\nDK8NSqGT4c4onJlxfOO/0ndCTRw04nJwhU18jkzsnqhuimRbuo+59/UteIBu\n9MXRS31DEwqxQZqoWcVHce+PaZMVd6yxyJ39u4lmp17c+VBqKZBS9zQzBVmv\nSgbY\r\n=q+m7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBZy7HDX9ka/ldz33fkLJuvYAi1ZmSi0uZckMNtziDPcAiEA6maMYgngW2RJUv/DhHhhFGtU4Ug342u/NyVRZFUVfg0="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_1.1.1_1588639824966_0.30691278866245986"},"_hasShrinkwrap":false},"1.1.2":{"name":"@btilford/ts-base","version":"1.1.2","description":"Boring things used in projects.","keywords":["console","logging","profiling","monitoring","performance","metrics"],"publishConfig":{"access":"public"},"homepage":"https://btilford.github.io/ts-base/","contributors":[],"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"author":{"name":"btilford"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"main":"dist/index.js","types":"dist/index.d.ts","watch":{"test":{"patterns":["src","test","node_modules/@btilford"],"extensions":"ts","quiet":true,"delay":2000,"clearBuffer":false},"lint":{"patterns":["."],"ignore":["reports/**/*","dist/**/*","dist/**/*",".nyc.output/**/*"],"extensions":"ts,json,html,js,md","quiet":true,"delay":2000,"clearBuffer":false}},"scripts":{"compile":"tsc --project tsconfig.production.json","watch:compile":"tsc --watch --project tsconfig.json","test":"nyc mocha --enable-source-maps --require ts-node/register --sort $(pwd)/test/**/*.spec.ts","watch:test":"npm-watch test","lint":"eslint . --ext js --ext ts --ext json --ext md","lint:fix":"eslint . --fix --ext js --ext ts --ext json --ext md","watch:lint":"npm-watch lint","docs:test":"mocha --enable-source-maps --require ts-node/register --sort $(pwd)/usage/**/*.usage.ts","watch":"run-p watch:lint watch:test watch:compile","clean":"rm -rf dist/ reports/","build":"run-s clean compile"},"directories":{"test":"./test","lib":"./src","doc":"../../docs"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.1","@mocha/eslint-config-mocha":"^0.0.0","@types/chai":"~4.2.11","@types/express":"~4.17.6","@types/mocha":"^7.0.2","@types/sinon":"^7.5.2","@typescript-eslint/eslint-plugin":"~2.29.0","@typescript-eslint/parser":"~2.29.0","chai":"^4.2.0","chai-http":"^4.3.0","eslint":"^6.8.0","eslint-config-standard":"^14.1.1","eslint-plugin-editorconfig":"^2.1.2","eslint-plugin-import":"^2.20.2","eslint-plugin-json":"^2.1.1","eslint-plugin-markdown":"^1.0.2","eslint-plugin-md":"^1.0.15","eslint-plugin-mocha":"^6.3.0","eslint-plugin-mocha-only":"^0.0.3","eslint-plugin-no-secrets":"^0.6.5","eslint-plugin-optimize-regex":"^1.1.7","eslint-plugin-promise":"^4.2.1","eslint-plugin-security":"^1.4.0","eslint-plugin-sonarjs":"^0.5.0","eslint-plugin-standard":"^4.0.1","eslint-watch":"^6.0.1","mocha":"^7.1.1","mocha-sinon":"^2.1.2","npm-run-all":"^4.1.5","npm-watch":"^0.6.0","nyc":"^15.0.1","sinon":"~9.0.2","source-map-support":"^0.5.16","ts-mocha":"~7.0.0","ts-toolbelt":"^6.3.11","tsconfig-paths":"^3.9.0","typescript":"^3.8.3","utility-types":"^3.10.0","ts-node":"~8.9.1"},"dependencies":{"@btilford/ts-base-lint":"~1.1.2","fluent-logger":"^3.4.1"},"optionalDependencies":{"fluent-logger":"^3.4.1"},"gitHead":"ae3ab3160af63c98520306d9a9f4792a3e60ec6d","_id":"@btilford/ts-base@1.1.2","_nodeVersion":"12.16.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-WMpQ2rIIneliuooWPXtpA8nhsF8QZPZKCHrNWMg9ek/BZymLGgo03QOvYmFQOJ546yRxDKkeCJWDKvqTw6DAYQ==","shasum":"edb5c02d565cba68e560292088cd17f1028d6c4b","tarball":"https://registry.npmjs.org/@btilford/ts-base/-/ts-base-1.1.2.tgz","fileCount":577,"unpackedSize":1107906,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesLlqCRA9TVsSAnZWagAAEEwP/2Bkukmq628aBaDuqJig\nSzNlvT+/xWe5weLCnAS94vUyXBE+7GeMgjhflcciDXvPXKBJ6dyZTzg+3MhA\ny7s3tLxLNjQMrBQVpIb69eZU+fN56V/HtgioJWj7LR08QKooDWc311swGmq8\nS5x9bGrRFsDw15yQ37Ea4QeJc01xLCajYlvWS+O3dIt8Jm/pd/uqB0P4KCoy\nfIpurf+kLKujfIDGkUWqmFrWghW5dlOqrqE+iHQssIchycpdKWbH6nhkIY3G\ntJ02qc0mFJziTfeNz79i8dZqH8t/6AjlmoDMagkJvXCLhGjzXKGTnRdyFsJw\n+1Ubob556f5MC/cSzErKRbmDs8OH8cAmD8onUgL6dCLE42Y1uNbaG5KIqapY\n+VeXhGhBk1D5dSQazjDcuqDzQkb/XonXuT1//xwqZCBQ5IuqSVG34laZYB7Z\nozEs60WeBduSI0PDGVL0Ce8ChAzOBrNwH3YsXXgJ0/ghxQ8lWR1AyqOgKhvB\nCDb5tnuZxuuCLNe+Cfe8kBMu7PE3nb626DHoU76QKOI2N7r7B5A/EDuCraaU\nVOQ2n01TAmIWz4+g+twap7xZWF3EYm/0KwO+ZodeHAoTGa08oftAF1+J1CWF\nIo1CPZDcJYmZUIiVCpA2XdsHaovIwfhyV8Zgnzu0byHfB37oVEXLhlLqLQPM\ny7X6\r\n=3FQH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkTBkfffxttJw/4fhbjnZcoN2/dqJ1cKF/kpgylRe3+AIgXb0AoCMDH2kz4gKc5EGE/rgbPEJ3TlsioO/zjog1zZ0="}]},"_npmUser":{"name":"btilford","email":"ben@tilford.info"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts-base_1.1.2_1588640105503_0.1417912900640239"},"_hasShrinkwrap":false}},"time":{"created":"2020-04-08T20:42:23.127Z","0.0.7":"2020-04-08T20:42:23.868Z","modified":"2022-04-04T20:52:50.255Z","0.1.0":"2020-04-12T23:29:47.332Z","1.0.0":"2020-04-13T03:34:40.884Z","1.1.0":"2020-04-27T02:40:26.684Z","1.1.1-0":"2020-05-05T00:48:37.394Z","1.1.1":"2020-05-05T00:50:25.239Z","1.1.2":"2020-05-05T00:55:05.698Z"},"maintainers":[{"name":"btilford","email":"ben@tilford.info"}],"description":"Boring things used in projects.","homepage":"https://btilford.github.io/ts-base/","keywords":["console","logging","profiling","monitoring","performance","metrics"],"repository":{"type":"git","url":"git+https://github.com/btilford/ts-base.git"},"contributors":[],"author":{"name":"btilford"},"bugs":{"url":"https://github.com/btilford/ts-base/issues"},"license":"MIT","readme":"# ts-base\n![Build PR/Master](https://github.com/btilford/ts-base/workflows/Build%20PR/Master/badge.svg)\n\nBoring project components.\n\n## Install\n\n```console\nnpm install --save @btilford/ts-base-node\nnpm install --save @btilford/ts-base-browser\n```\n\n## Usage\n\nExamples can be found [here](https://btilford.github.io/ts-base/usage.html)\n\n## Features\n\n\n### Logging\n\nExtra features and configurability for logging. By default uses **Console** but with node can also use a **stream.Writable**\nfor stdout and stderr output.\n\n* Configure default **LogLevel**\n* Configure and register a root **Log**\n* **Log.extend** creates a new **Log** extending it's name and any configuration not overridden.   \n* **Log.copy** creates a new **Log** instance sharing the configs that were not overridden but does not inherit naming like **Log.extend** does.\n* You can add **Interceptor**s to your **LogConfig** to perform additional tasks on log messages. In the node module there is an interceptor\nfor Stackdriver and Datadog that can be combined with a **FilterLogMessage** to send critical messages.\n* In your **LogConfig** you can provide a **Context** function to supply additional properties to make available in a **MessageTemplate**.\n* You can configure a **MessageTemplate** and **MessageFormat** in your **LogConfig**. \n    * `MessageTemplate { format(ctx: MessageContext):string }` is generates a string that can include items supplied by a **Context** call.\n    * `MessageFormat {(msg, ...args):string}` can be used to format you log message if you wanted to use something like **printj** instead of `console.log(message, ...args)`.\n\n| Log Type      | Browser   | Node  | Comment                                       |\n|---            |---        |---    |---                                            |\n| ConsoleLog    | yes       | yes   | Just a wrapper around console                 |\n| StdOutLog     | no        | yes   | Uses a **Writable** defaulting to stdout/stderr |\n| JsonLog       | no        | yes   | TODO                                          |\n\n### APM\n\nThere are some method decorators for instrumenting methods with custom APM. The decorators can accept a **Filter** that can determine\nwhether to run the decorator or just run the original method. For example only run the decorator N times or at intervals.\n\n\n\n| Type              | System    | Provider                      |\n|---                |---        |---                            |\n| @Timed            | Browser   | Console                       |                                        \n| @Timed            | Node      | Console, StatsD, Prometheus   |\n| @TimedAsync       | Browser   | Console                       |                                        \n| @TimedAsync       | Node      | Console, StatsD, Prometheus   |\n| @CountInvocations | Browser   | Console                       |                                        \n| @CountInvocations | Node      | Console, StatsD, Prometheus   |\n| @CountSuccess     | Browser   | Console                       |                                        \n| @CountSuccess     | Node      | Console, StatsD, Prometheus   |\n| @CountErrors      | Browser   | Console                       |                                        \n| @CountErrors      | Node      | Console, StatsD, Prometheus   |\n| @GaugeInvocations | Node      | Console, StatsD, Prometheus   |\n| @GaugeSuccess     | Node      | Console, StatsD, Prometheus   |\n| @GaugeErrors      | Node      | Console, StatsD, Prometheus   |\n        \n\n\n                                        \n### Time\n\n_Note most of the things in this package use **BigInt** which isn't super well supported yet._\n\n**Classes**\n\n* **TimeMeasurement** -- Holds a bigint of arbitrary nanoseconds.\n* **Duration** -- Holds a bigint representing time elapsed between 2 arbitrary nano seconds.\n* **Instant** -- Holds a bigint of nanoseconds representing a point in time.\n* **Period** -- Holds a bigint of elapsed nanoseconds between 2 Instants.\n\n**Utilities**\n\n* **timePart(nanos, unit)** -- Returns the count of **unit** in **nanos** and the remainder. `[count:bigint, remainder:bigint]` \n* **timeParts(nanos, parts:{name:string, unit:bigint}[])** -- Returns a `Record<string, bigint>` with the count for each name based on the remainder of larger units.\n* **millisAsString(nanos:bigint, postfix?: '' \\| 'n')** -- Turn nanoseconds into a string... Lots of things don't serialize bigint yet.     \n* **millisAsNanoString(milliseconds:number, postfix?: '' \\| 'n')** -- Turn milliseconds into a string with all the extra 0s for a nanosecond.     \n\n\n\n\n### Other Stuff\n\n* **Providers** -- A service locator/lookup utility.\n* **Env** -- Load and access environmental configs with support for nested **EnvProps** configs based on a prefix. There are loaders for:\n    * **processEnvLoader** -- For **process.env** on node.\n    * **loadEnvWithObj** -- For providing arbitrary variables.   \n    * **documentQueryExtractor** -- For loading data from the DOM in the browser.   \n    * **loadEnvWithMetaTags** -- For loading meta tags with a specific prefix in the browser.   \n    * **debugEnv** -- Initializes internal components to full debug.   \n* **PropEnabled** -- Matches keys in an **EnvProps** against a set of accepted values.\n* **bootstrap()** -- Helper can be called from your entry point to initialize the different components you want to use. \n\n","readmeFilename":"README.md"}