{"_id":"@-xun/fs","_rev":"2-7775282f208fe274f05b356583fc42d2","name":"@-xun/fs","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"@-xun/fs","version":"1.0.0","keywords":["fs"],"author":{"name":"Xunnamius"},"license":"MIT","_id":"@-xun/fs@1.0.0","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"homepage":"https://github.com/Xunnamius/fs-utils#readme","bugs":{"url":"https://github.com/Xunnamius/fs-utils/issues"},"dist":{"shasum":"cacae5e90a4acdceba5c737e8d550db570eb6e2a","tarball":"https://registry.npmjs.org/@-xun/fs/-/fs-1.0.0.tgz","fileCount":5,"integrity":"sha512-BFDhf3sQbw7IxsDjglqrjeS1nbtYM1kvmRloLY25Fgwhk/DUPqQ2uVC5FitZoeHU33lW2OS29xE4Bp2AqqOg2A==","signatures":[{"sig":"MEUCIQColM8l03YDkgBtpokpZTeS5fEfwEuo6wDk0j3HOuYC3AIgdm9Yc7yFfOuB0ngrGzj0+dp7X8+auYfEVmoHlYkfMME=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21310},"type":"commonjs","engines":{"node":"^18.20.0 || ^20.18.0 || ^22.12.0 || >=23.3.0"},"exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"gitHead":"ce5252506a1d06ebf22ec0f8e8f02e9d997a018f","scripts":{"info":"symbiote project info --env NODE_NO_WARNINGS=1","lint":"npm run lint:package --","test":"npm run test:package:unit --","build":"npm run build:dist --","clean":"symbiote clean --env NODE_NO_WARNINGS=1","start":"symbiote start --env NODE_NO_WARNINGS=1 --","format":"symbiote format --env NODE_NO_WARNINGS=1 --hush","prepare":"symbiote project prepare --env NODE_NO_WARNINGS=1","release":"symbiote release --env NODE_NO_WARNINGS=1","renovate":"symbiote project renovate --env NODE_NO_WARNINGS=1 --hush --github-reconfigure-repo --regenerate-assets --assets-preset 'lib'","build:dist":"symbiote build distributables --env NODE_NO_WARNINGS=1 --not-multiversal","build:docs":"symbiote build docs --env NODE_NO_WARNINGS=1","list-tasks":"symbiote list-tasks --env NODE_NO_WARNINGS=1 --scope this-package","lint:package":"symbiote lint --env NODE_NO_WARNINGS=1 --hush","lint:project":"symbiote project lint --env NODE_NO_WARNINGS=1","lint:packages":"symbiote lint --env NODE_NO_WARNINGS=1 --hush --scope unlimited","build:changelog":"symbiote build changelog --env NODE_NO_WARNINGS=1","test:package:all":"symbiote test --env NODE_NO_WARNINGS=1 --coverage","test:package:e2e":"symbiote test --env NODE_NO_WARNINGS=1 --tests end-to-end","test:package:unit":"symbiote test --env NODE_NO_WARNINGS=1 --tests unit","test:packages:all":"symbiote test --env NODE_NO_WARNINGS=1 --scope unlimited --coverage","test:package:integration":"symbiote test --env NODE_NO_WARNINGS=1 --tests integration"},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"repository":{"url":"git+https://github.com/Xunnamius/fs-utils.git","type":"git"},"_npmVersion":"10.9.2","description":"Utilities for typed filesystem interactions","directories":{},"sideEffects":false,"_nodeVersion":"22.13.0","dependencies":{"type-fest":"^4.33.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"typesVersions":{"*":{"index":["dist/src/index.d.ts"],"package":["package.json"]}},"_hasShrinkwrap":false,"devDependencies":{"rejoinder":"^1.2.2","@-xun/symbiote":"^2.14.5"},"_npmOperationalInternal":{"tmp":"tmp/fs_1.0.0_1737601171373_0.429687257104415","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@-xun/fs","version":"2.0.0","description":"Utilities for typed filesystem interactions","keywords":["fs"],"homepage":"https://github.com/Xunnamius/fs-utils#readme","bugs":{"url":"https://github.com/Xunnamius/fs-utils/issues"},"repository":{"type":"git","url":"git+https://github.com/Xunnamius/fs-utils.git"},"license":"MIT","author":{"name":"Xunnamius"},"sideEffects":false,"type":"commonjs","exports":{".":{"types":"./dist/src/index.d.ts","default":"./dist/src/index.js"},"./package":"./package.json","./package.json":"./package.json"},"typesVersions":{"*":{"index":["dist/src/index.d.ts"],"package":["package.json"]}},"scripts":{"build":"npm run build:dist --","build:changelog":"symbiote build changelog --env NODE_NO_WARNINGS=1","build:dist":"symbiote build distributables --env NODE_NO_WARNINGS=1 --not-multiversal","build:docs":"symbiote build docs --env NODE_NO_WARNINGS=1","clean":"symbiote clean --env NODE_NO_WARNINGS=1","format":"symbiote format --env NODE_NO_WARNINGS=1 --hush","info":"symbiote project info --env NODE_NO_WARNINGS=1","lint":"npm run lint:package --","lint:package":"symbiote lint --env NODE_NO_WARNINGS=1 --hush","lint:packages":"symbiote lint --env NODE_NO_WARNINGS=1 --hush --scope unlimited","lint:project":"symbiote project lint --env NODE_NO_WARNINGS=1","list-tasks":"symbiote list-tasks --env NODE_NO_WARNINGS=1 --scope this-package","prepare":"symbiote project prepare --env NODE_NO_WARNINGS=1","release":"symbiote release --env NODE_NO_WARNINGS=1","renovate":"symbiote project renovate --env NODE_NO_WARNINGS=1 --github-reconfigure-repo --regenerate-assets --assets-preset lib","renovate:aliases":"symbiote project renovate --env NODE_NO_WARNINGS=1 --regenerate-assets --assets-preset lib --only-aliases","start":"symbiote start --env NODE_NO_WARNINGS=1 --","test":"npm run test:package:unit --","test:package:all":"symbiote test --env NODE_NO_WARNINGS=1 --tests all-local --coverage","test:package:e2e":"symbiote test --env NODE_NO_WARNINGS=1 --tests e2e-local","test:package:integration":"symbiote test --env NODE_NO_WARNINGS=1 --tests integration","test:package:unit":"symbiote test --env NODE_NO_WARNINGS=1 --tests unit type","test:packages:all":"symbiote test --env NODE_NO_WARNINGS=1 --tests all-local --scope unlimited --coverage","test:packages:all:unit":"symbiote test --env NODE_NO_WARNINGS=1 --tests unit type --scope unlimited --coverage"},"dependencies":{"type-fest":"^4.41.0"},"devDependencies":{"@-xun/symbiote":"^4.1.0","rejoinder":"^1.2.5"},"engines":{"node":"^20.18.0 || ^22.12.0 || >=23.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_id":"@-xun/fs@2.0.0","gitHead":"dac632de6bb1efc287ef879ec1675c221eed02aa","_nodeVersion":"22.15.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-252CZ4OJRszsbP0n+vQRrhdFyDyEzt4NqYvJ/P2Iha4dw/jtmQvAF0wYqARPDZe7uuUG6Og0uQxMUfXFO2BQ7g==","shasum":"2f8952cc67a9d8d409eb3fb979bf8ea50f82cb7f","tarball":"https://registry.npmjs.org/@-xun/fs/-/fs-2.0.0.tgz","fileCount":5,"unpackedSize":21612,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBort+pAH2h1q26hsxN5at+3depM6cl89Khb4CHmP7nzAiA3RqE1gCXNmprJVx7ylnsh0vbCkSSjIO6QS6jyTe3XiQ=="}]},"_npmUser":{"name":"xunnamius","email":"git@bernarddickens.dev"},"directories":{},"maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fs_2.0.0_1748726334952_0.8142296880992141"},"_hasShrinkwrap":false}},"time":{"created":"2025-01-23T02:59:31.269Z","modified":"2025-05-31T21:18:55.417Z","1.0.0":"2025-01-23T02:59:31.538Z","2.0.0":"2025-05-31T21:18:55.217Z"},"bugs":{"url":"https://github.com/Xunnamius/fs-utils/issues"},"author":{"name":"Xunnamius"},"license":"MIT","homepage":"https://github.com/Xunnamius/fs-utils#readme","keywords":["fs"],"repository":{"type":"git","url":"git+https://github.com/Xunnamius/fs-utils.git"},"description":"Utilities for typed filesystem interactions","maintainers":[{"name":"xunnamius","email":"git@bernarddickens.dev"}],"readme":"<!-- symbiote-template-region-start 1 -->\n\n<p align=\"center\" width=\"100%\">\n  <img width=\"250\" src=\"https://raw.githubusercontent.com/Xunnamius/fs-utils/refs/heads/main/logo.png\">\n</p>\n\n<p align=\"center\" width=\"100%\">\n<!-- symbiote-template-region-end -->\nUtilities for typed filesystem interactions\n<!-- symbiote-template-region-start 2 -->\n</p>\n\n<hr />\n\n<div align=\"center\">\n\n[![Black Lives Matter!][x-badge-blm-image]][x-badge-blm-link]\n[![Last commit timestamp][x-badge-lastcommit-image]][x-badge-repo-link]\n[![Codecov][x-badge-codecov-image]][x-badge-codecov-link]\n[![Source license][x-badge-license-image]][x-badge-license-link]\n[![Uses Semantic Release!][x-badge-semanticrelease-image]][x-badge-semanticrelease-link]\n\n[![NPM version][x-badge-npm-image]][x-badge-npm-link]\n[![Monthly Downloads][x-badge-downloads-image]][x-badge-downloads-link]\n\n</div>\n\n<br />\n\n# fs-utils (@-xun/fs)\n\n<!-- symbiote-template-region-end -->\n\nUtilities for typed filesystem interactions.\n\n<!-- symbiote-template-region-start 3 -->\n\n---\n\n<!-- remark-ignore-start -->\n<!-- symbiote-template-region-end -->\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Install](#install)\n- [Usage](#usage)\n- [Appendix](#appendix)\n  - [Published Package Details](#published-package-details)\n  - [License](#license)\n- [Contributing and Support](#contributing-and-support)\n  - [Contributors](#contributors)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n<!-- symbiote-template-region-start 4 -->\n<!-- remark-ignore-end -->\n\n<br />\n\n## Install\n\n<!-- symbiote-template-region-end -->\n\nTo install:\n\n```shell\nnpm install @-xun/fs\n```\n\n## Usage\n\n<!-- TODO -->\n\nTODO\n\n<!-- symbiote-template-region-start 5 -->\n\n## Appendix\n\n<!-- symbiote-template-region-end -->\n\nFurther documentation can be found under [`docs/`][x-repo-docs].\n\n<!-- TODO: additional appendix sections here -->\n<!-- symbiote-template-region-start 6 -->\n\n### Published Package Details\n\nThis is a [CJS2 package][x-pkg-cjs-mojito] with statically-analyzable exports\nbuilt by Babel for use in Node.js versions that are not end-of-life. For\nTypeScript users, this package supports both `\"Node10\"` and `\"Node16\"` module\nresolution strategies.\n\n<!-- symbiote-template-region-end -->\n<!-- TODO: additional package details here -->\n<!-- symbiote-template-region-start 7 -->\n\n<details><summary>Expand details</summary>\n\nThat means both CJS2 (via `require(...)`) and ESM (via `import { ... } from ...`\nor `await import(...)`) source will load this package from the same entry points\nwhen using Node. This has several benefits, the foremost being: less code\nshipped/smaller package size, avoiding [dual package\nhazard][x-pkg-dual-package-hazard] entirely, distributables are not\npacked/bundled/uglified, a drastically less complex build process, and CJS\nconsumers aren't shafted.\n\nEach entry point (i.e. `ENTRY`) in [`package.json`'s\n`exports[ENTRY]`][x-repo-package-json] object includes one or more [export\nconditions][x-pkg-exports-conditions]. These entries may or may not include: an\n[`exports[ENTRY].types`][x-pkg-exports-types-key] condition pointing to a type\ndeclaration file for TypeScript and IDEs, a\n[`exports[ENTRY].module`][x-pkg-exports-module-key] condition pointing to\n(usually ESM) source for Webpack/Rollup, a `exports[ENTRY].node` and/or\n`exports[ENTRY].default` condition pointing to (usually CJS2) source for Node.js\n`require`/`import` and for browsers and other environments, and [other\nconditions][x-pkg-exports-conditions] not enumerated here. Check the\n[package.json][x-repo-package-json] file to see which export conditions are\nsupported.\n\nNote that, regardless of the [`{ \"type\": \"...\" }`][x-pkg-type] specified in\n[`package.json`][x-repo-package-json], any JavaScript files written in ESM\nsyntax (including distributables) will always have the `.mjs` extension. Note\nalso that [`package.json`][x-repo-package-json] may include the\n[`sideEffects`][x-pkg-side-effects-key] key, which is almost always `false` for\noptimal [tree shaking][x-pkg-tree-shaking] where appropriate.\n\n<!-- symbiote-template-region-end -->\n<!-- TODO: additional package details here -->\n<!-- symbiote-template-region-start 8 -->\n\n</details>\n\n### License\n\n<!-- symbiote-template-region-end -->\n\nSee [LICENSE][x-repo-license].\n\n<!-- TODO: additional license information and/or sections here -->\n<!-- symbiote-template-region-start 9 -->\n\n## Contributing and Support\n\n**[New issues][x-repo-choose-new-issue] and [pull requests][x-repo-pr-compare]\nare always welcome and greatly appreciated! 🤩** Just as well, you can [star 🌟\nthis project][x-badge-repo-link] to let me know you found it useful! ✊🏿 Or [buy\nme a beer][x-repo-sponsor], I'd appreciate it. Thank you!\n\nSee [CONTRIBUTING.md][x-repo-contributing] and [SUPPORT.md][x-repo-support] for\nmore information.\n\n<!-- symbiote-template-region-end -->\n<!-- TODO: additional contribution/support sections here -->\n<!-- symbiote-template-region-start 10 -->\n\n### Contributors\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start root-package-only -->\n<!-- remark-ignore-start -->\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n\n[![All Contributors](https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square)](#contributors-)\n\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n<!-- remark-ignore-end -->\n\nThanks goes to these wonderful people ([emoji\nkey][x-repo-all-contributors-emojis]):\n\n<!-- remark-ignore-start -->\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"14.28%\"><a href=\"https://xunn.io/\"><img src=\"https://avatars.githubusercontent.com/u/656017?v=4?s=100\" width=\"100px;\" alt=\"Bernard\"/><br /><sub><b>Bernard</b></sub></a><br /><a href=\"#infra-Xunnamius\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/Xunnamius/fs-utils/commits?author=Xunnamius\" title=\"Code\">💻</a> <a href=\"https://github.com/Xunnamius/fs-utils/commits?author=Xunnamius\" title=\"Documentation\">📖</a> <a href=\"#maintenance-Xunnamius\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/Xunnamius/fs-utils/commits?author=Xunnamius\" title=\"Tests\">⚠️</a> <a href=\"https://github.com/Xunnamius/fs-utils/pulls?q=is%3Apr+reviewed-by%3AXunnamius\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n  </tbody>\n  <tfoot>\n    <tr>\n      <td align=\"center\" size=\"13px\" colspan=\"7\">\n        <img src=\"https://raw.githubusercontent.com/all-contributors/all-contributors-cli/1b8533af435da9854653492b1327a23a4dbd0a10/assets/logo-small.svg\">\n          <a href=\"https://all-contributors.js.org/docs/en/bot/usage\">Add your contributions</a>\n        </img>\n      </td>\n    </tr>\n  </tfoot>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n<!-- remark-ignore-end -->\n\nThis project follows the [all-contributors][x-repo-all-contributors]\nspecification. Contributions of any kind welcome!\n\n<!-- symbiote-template-region-end -->\n<!-- symbiote-template-region-start workspace-package-only -->\n<!-- (section elided by symbiote) -->\n<!-- symbiote-template-region-end -->\n\n[x-badge-blm-image]: https://xunn.at/badge-blm 'Join the movement!'\n[x-badge-blm-link]: https://xunn.at/donate-blm\n[x-badge-codecov-image]:\n  https://img.shields.io/codecov/c/github/Xunnamius/fs-utils/main?style=flat-square&token=HWRIOBAAPW&flag=package.main_root\n  'Is this package well-tested?'\n[x-badge-codecov-link]: https://codecov.io/gh/Xunnamius/fs-utils\n[x-badge-downloads-image]:\n  https://img.shields.io/npm/dm/@-xun/fs?style=flat-square\n  'Number of times this package has been downloaded per month'\n[x-badge-downloads-link]: https://npmtrends.com/@-xun/fs\n[x-badge-lastcommit-image]:\n  https://img.shields.io/github/last-commit/Xunnamius/fs-utils?style=flat-square\n  'Latest commit timestamp'\n[x-badge-license-image]:\n  https://img.shields.io/npm/l/@-xun/fs?style=flat-square\n  \"This package's source license\"\n[x-badge-license-link]: https://github.com/Xunnamius/fs-utils/blob/main/LICENSE\n[x-badge-npm-image]:\n  https://xunn.at/npm-pkg-version/@-xun/fs\n  'Install this package using npm or yarn!'\n[x-badge-npm-link]: https://npm.im/@-xun/fs\n[x-badge-repo-link]: https://github.com/Xunnamius/fs-utils\n[x-badge-semanticrelease-image]:\n  https://xunn.at/badge-semantic-release\n  'This repo practices continuous integration and deployment!'\n[x-badge-semanticrelease-link]:\n  https://github.com/semantic-release/semantic-release\n[x-pkg-cjs-mojito]:\n  https://dev.to/jakobjingleheimer/configuring-commonjs-es-modules-for-nodejs-12ed#publish-only-a-cjs-distribution-with-property-exports\n[x-pkg-dual-package-hazard]:\n  https://nodejs.org/api/packages.html#dual-package-hazard\n[x-pkg-exports-conditions]:\n  https://webpack.js.org/guides/package-exports#reference-syntax\n[x-pkg-exports-module-key]:\n  https://webpack.js.org/guides/package-exports#providing-commonjs-and-esm-version-stateless\n[x-pkg-exports-types-key]:\n  https://devblogs.microsoft.com/typescript/announcing-typescript-4-5-beta#packagejson-exports-imports-and-self-referencing\n[x-pkg-side-effects-key]:\n  https://webpack.js.org/guides/tree-shaking#mark-the-file-as-side-effect-free\n[x-pkg-tree-shaking]: https://webpack.js.org/guides/tree-shaking\n[x-pkg-type]:\n  https://github.com/nodejs/node/blob/8d8e06a345043bec787e904edc9a2f5c5e9c275f/doc/api/packages.md#type\n[x-repo-all-contributors]: https://github.com/all-contributors/all-contributors\n[x-repo-all-contributors-emojis]: https://allcontributors.org/docs/en/emoji-key\n[x-repo-choose-new-issue]:\n  https://github.com/Xunnamius/fs-utils/issues/new/choose\n[x-repo-contributing]: /CONTRIBUTING.md\n[x-repo-docs]: docs\n[x-repo-license]: ./LICENSE\n[x-repo-package-json]: package.json\n[x-repo-pr-compare]: https://github.com/Xunnamius/fs-utils/compare\n[x-repo-sponsor]: https://github.com/sponsors/Xunnamius\n[x-repo-support]: /.github/SUPPORT.md\n","readmeFilename":"README.md"}