{"_id":"@boulton/disposable-types","_rev":"2-614a926d89c1bcf7d3ba4c396fa162a4","name":"@boulton/disposable-types","dist-tags":{"4dfad159cba64cbfacc1156f98aecb24f7c633e7":"0.0.1","latest":"0.0.3"},"versions":{"0.0.1":{"name":"@boulton/disposable-types","version":"0.0.1","description":"> A shared library that exports commonly-used types related to disposable items.","main":"dist/index.js","types":"dist/index.d.ts","author":"","license":"MIT","composite":true,"scripts":{"compile":"rm -rf dist/* && tsc -p tsconfig.pkg.json","test":"vitest run","test-watch":"vitest watch","coverage":"vitest run --coverage"},"dependencies":{},"devDependencies":{"typescript":"^5.0.3"},"gitHead":"4dfad159cba64cbfacc1156f98aecb24f7c633e7","_id":"@boulton/disposable-types@0.0.1","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-gCFAaToT7KXWHDiYWf8qMcQJki8B6f5FHteSNucmbKJ5JE3p9jyzVFo0GZlb09EsDhuOmfke+oODNGZZvnOdYA==","shasum":"632ea457da7a7c37c2326e763518222013f33c51","tarball":"https://registry.npmjs.org/@boulton/disposable-types/-/disposable-types-0.0.1.tgz","fileCount":5,"unpackedSize":1729,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDUPj289a9bXOXjAEGyiOtqT61mwXX8E0zDkrlNfBKmJAiEAj8dnSWquYNUGiPBJoCzivAxiO4PoFDNmXFB3cbrDNBY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTVzLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp8+g//Z40tiV8cc8HbBmbftQp0xyvxzeWlQ/7D/ArsKl02Eh06CZCt\r\n/VrLtOP0zM8965mDDnqc2nglA8s0JQD7WaSa4rDD7/bwksW2ajIx1Kt8PlGD\r\n6XD9qWa+1O0Xg/cyFv3zXuvN6W0p15dKu76wo30k+wIsY/IgRQWctyJ/AUom\r\nOAiDo1k+Uvx3tYHaFkKIdUlj9/4kq/0MClSNIP+koLaoH9L9qN1l84tKvNfN\r\nWR6rTpvPLWxJ1LWDwLLgUoMZ1SkKT1YMzoNC4ntzTBln6njo8WkbBvZ6QPHK\r\nyyPedVhSabpMLZVXtCyLBrrWuirescxnXKCVNa6B6i042XamasiFoVZ04WzB\r\nIJju/9hhTstXgRHlXXtjxHfLftK2oThLqhZftTVyru8eAtySXtd6js8emmiU\r\nyuGIPP1HOFy7RraBe6IQxqmnC0YxwiYhMolyNeIpVAzqKaHZ+zAaE8jxTDLr\r\nS62bYK0UpGbygoJc+yUCQ8FeaZ8es28phA/FJP8BUQgsyhSNM4iOTVgjLmQs\r\nAUAdk1VfXWSh5drNa8Dn7WgsCEqCATotqAaMkZZBnvQMO60/55MytEz3cNEz\r\nLiTi/QFR0x8zcSF6IxUlYc8d/xhsmrFhxtspNL6gWBQH9AvHTelV9fKbHxex\r\nriLiShpLnWs4EQrGlxq7oFXp/Ma6qSlqxlo=\r\n=hoKc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"boulton","email":"robert@boultonlabs.com"},"directories":{},"maintainers":[{"name":"boulton","email":"robert@boultonlabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/disposable-types_0.0.1_1682791627631_0.10868719766920476"},"_hasShrinkwrap":false},"0.0.2":{"name":"@boulton/disposable-types","version":"0.0.2","description":"Common types for disposable items","main":"dist/index.js","types":"dist/index.d.ts","author":"","license":"MIT","composite":true,"scripts":{"compile":"rm -rf dist/* && tsc -p tsconfig.pkg.json","test":"vitest run","test-watch":"vitest watch","coverage":"vitest run --coverage","prepublish":"compile"},"dependencies":{},"devDependencies":{"typescript":"^5.0.3"},"gitHead":"09225332a5739f2b225ddde295331f4b782d521d","_id":"@boulton/disposable-types@0.0.2","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-G+qRHEGx5x/jpeAhHb8VHQDC+mruqclrrQgWn2+lMQp8YNYE5l+xDqBNIO/mO7ahuUJT15c7hityzOEK4V5GbQ==","shasum":"f652aac0ae3bbc52ffd2b04dba218e075fb18c8b","tarball":"https://registry.npmjs.org/@boulton/disposable-types/-/disposable-types-0.0.2.tgz","fileCount":5,"unpackedSize":1816,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEb4BACy4wwcu56X2uq3HE7uKNQWwRQATcNk5sknJ50gIhALHrcOeLMH/UVCcL2QKvmUladwiuJ/dn5nlcFA7HHPJ4"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTWLYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1vRAAoimcThFBAyYoPIy0Qck5tfv4gd0xP9tHBLolUd/MmtVWquVj\r\nopQrD1Qy8xez9SYZ0timQ0UryTU4vMiU4rNmMqqQNQIqJWOyx7dKR4MyA+K+\r\nG6VEq7bcgSOesUS852RVd/ttxpvImId2PTV8yQ3WVPNKcQuEpjdoNYy+G5zX\r\n3uDD+xDtv+3knm3aSp1aV0MxAGKOVC6OgK8Z/M5z1nBOjohd9sA7WozHA3zL\r\nCzbL0NheubrOuu+PzeOK1G2xAtPecn9QiePXNgyrrnGP8q2tAJr0S9S+KRcm\r\nf4Ze0gUfTp8MUEKlKSim2BctEQbqX6OrJNYjMpnxB6XwQyNoAXdvyrsn4V/G\r\nSMXw2xGv/u3swB6IY2MZm2R5DKQ437oyizqS3+AT2sudFvN0X1+J0UElSE43\r\nv6ayYac2YU6hXHjwQjXhxnRHyQBbCr1Ur7iiCWLM9wZSGPUfCa3ZxWltUQ0T\r\nXiEUEUONyne0iQKOv3ron6xwjPwIU0oiYiMSRZ3zIqvfxzWTfdGUkfZx0kua\r\n1NG/6/fJ8ilU0cijICwqFCWKZOztmr8wWy7fu8EMDLOow+ncI7oWNEGDT+x6\r\no3wLoFJ6tZYu2X+vQP32HPR5x4ji3pCbHJEe0vqQjuEuzwP88dcotlZWUwRj\r\nPqWr5nst15wD0Zt/dkCMl7BlGwAC3TAe6YE=\r\n=E+aY\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"boulton","email":"robert@boultonlabs.com"},"directories":{},"maintainers":[{"name":"boulton","email":"robert@boultonlabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/disposable-types_0.0.2_1682793176583_0.9732500694809594"},"_hasShrinkwrap":false},"0.0.3":{"name":"@boulton/disposable-types","version":"0.0.3","description":"Common types for disposable items","main":"dist/index.js","types":"dist/index.d.ts","author":"","license":"MIT","composite":true,"scripts":{"compile":"rm -rf dist/* && tsc -p tsconfig.pkg.json","test":"vitest run","test-watch":"vitest watch","coverage":"vitest run --coverage","prepublish":"compile"},"dependencies":{},"devDependencies":{"typescript":"^5.0.3"},"gitHead":"17fc01e478ea75798377028bdd92c15c403af099","_id":"@boulton/disposable-types@0.0.3","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-WPzCoaHLAMbSWlN43yd7saFymUquXiBrT5MCuXGbCQlK1Irn1eiP1XDtv7jJVz/QgedHHnpC1lON+oLuj/NzkQ==","shasum":"2ceb1f91a6234bc12daff672598efbbe3fd33d44","tarball":"https://registry.npmjs.org/@boulton/disposable-types/-/disposable-types-0.0.3.tgz","fileCount":5,"unpackedSize":1816,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQ7Z0LgyjrBL+cEsnVY0D3sJKDp1rnd0HLLxJzXa0zDwIgB3AVaN8BMjpBSxEbrXgH2f5OFgQr5LY4R7J/agCbRAc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTWipACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmon+Q//d+x2Wuq5qf4yj0HSE8wqvXIl52aZbrzSAmDvz9YmUFuUh2yl\r\nSjs8F0Fn+dYAPbdyCGkNQS3oLaT4GwX9lQZWXoATIme+YORS/Fc+FJxXxCUU\r\njGWBE057kMfq7tfkxSB3WjzvXaYKnLW4Wog5y2YBZaa8XkjdEMynoHR6tlmp\r\nH6dlYoxk+EsG41+A2RZowsvWOsYIRs4vE1jy74YRTlmETg5qVYaZqxgSBm3B\r\nhMf54X4P6gAko4LOBX70XR1DtdKA6+5DwA2N3ZUMx2ipsgbcnlUh643xjwOJ\r\n9EduXbPJwjOlrsP4Jq6+sgdilT9no1d4bnvzQJ75d8Owa5zxRwUi0KqFLRM9\r\nZ+lKjclkb2apyS62k7pxWtA1kUYc4TIA/CkDC8QJplCXVTxlzrgNz3vxJtPd\r\np0fOOvYsRwpusKPjJQLyDtSWK2WUqOVtPMN3jmE8EIGbe0dcGDSDlZ43+e0z\r\nmTASODNJ5wCTwEk1mSafTzdJAL70aT+Y+gzGErt228/0GgMbkxPLG8Z+t/1p\r\noik4oE3H8KfFuBrLdAkWS2KwfpW35Le2rcsBVDzhDENBd1mgL79B+4Rb76A8\r\nal90EYt6OzpOfEmOrOmInrra1eP18ZcT7++2DU3dSM1h+/9+ZHXkYtx0U0YI\r\n9A2Ln0x3ZBaAhsCim6GZoFrt543DBiuGqvQ=\r\n=JObp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"boulton","email":"robert@boultonlabs.com"},"directories":{},"maintainers":[{"name":"boulton","email":"robert@boultonlabs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/disposable-types_0.0.3_1682794665155_0.857885548514655"},"_hasShrinkwrap":false}},"time":{"created":"2023-04-29T18:07:07.554Z","0.0.1":"2023-04-29T18:07:07.826Z","modified":"2023-04-29T18:57:45.420Z","0.0.2":"2023-04-29T18:32:56.776Z","0.0.3":"2023-04-29T18:57:45.312Z"},"maintainers":[{"name":"boulton","email":"robert@boultonlabs.com"}],"description":"Common types for disposable items","license":"MIT","readme":"# @boulton/disposable-types\n\n> A shared library that exports commonly-used types related to disposable items.\n\nSee the `@boulton/react-disposable-state` library for more information.\n\n## What is a disposable item?\n\nA disposable item is an item that is explicitly created. When it is created, a separate destructor (a.k.a. dispose function, cleanup function) is also created. When that destructor is called, the created item should no longer be used.\n\nAn example might be a claim to a resource in a shared store.\n\n```js\nconst [claim, disposeClaim]: ItemCleanupPair<Claim> = store.getClaimToResource({\n  id: 4,\n});\n\n// Because the claim has not been disposed, this is safe to do:\nconst data = store.lookup(claim);\n\ndisposeClaim();\n\n// Now that we've disposed of the claim, the underlying resource might have been removed from the store, so the following is not safe:\nconst unsafeData = store.lookup(claim);\n```\n","readmeFilename":"README.md"}