{"_id":"sonic-forest","_rev":"10-075d7966b7dfb3af9008ce7d5dc2ea7f","name":"sonic-forest","dist-tags":{"latest":"1.5.0"},"versions":{"1.0.0":{"name":"sonic-forest","version":"1.0.0","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"_id":"sonic-forest@1.0.0","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"b0b77d9bca76434f4ef87b61042d041da63f3be5","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.0.0.tgz","fileCount":74,"integrity":"sha512-yFO2N4uTUFtgKLw03WWFpN1iEwZySweMsa18XN3Kt0yYrlmVHunC2ZgM+437zDoKISAJHcH3Cg18U7d6tuSgSQ==","signatures":[{"sig":"MEUCIQCDsPYyoBxBx3iUHsLPTKE68PtaVvo4qMtabPM4mHdpbAIgA8xManfol9LP4TLwiEmRSG+yL1eF9KqU39hFwpn3bRM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125522},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"b8baae7bde74e7ee714089a2346af2902e931fe4","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.1.0","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.8.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.0.0_1713611940340_0.1436213030801896","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"sonic-forest","version":"1.0.1","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"_id":"sonic-forest@1.0.1","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"856d790bc21070bf94baf33d752604e5b7cbff2d","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.0.1.tgz","fileCount":50,"integrity":"sha512-YWIS40U3Y7N2e5gxkQiz40eisSsi7s+plZpqU6CSOehjybSDGkhFIMXmr5dmM7GaqqE+VZDihfTrxxdb0of/wA==","signatures":[{"sig":"MEQCIFyj5PbHNTRdbqVGdni24aCiwpUzNG/vP/J22doTFvqQAiBQhJ+v/OkJjwhGwVK7Vmsd1CXCn++0pdlPWw7tM2mvrg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62672},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"9af70c31c240a86291091d2aac46e53ca72b0d3b","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.1.0","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.8.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.0.1_1714488406727_0.048861570303102564","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"sonic-forest","version":"1.0.2","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"_id":"sonic-forest@1.0.2","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"d80aa621d1cffe75a606ca44789ccff30f5b9ce6","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.0.2.tgz","fileCount":50,"integrity":"sha512-2rICdwIJi5kVlehMUVtJeHn3ohh5YZV4pDv0P0c1M11cRz/gXNViItpM94HQwfvnXuzybpqK0LZJgTa3lEwtAw==","signatures":[{"sig":"MEUCIQC9W7yJHIhfzgA40XOd0Kebx/0G4i+IAAAanDi50rSepwIgJZ2vuI3TO2Hrzy0+Wv507klnENvF5lfyomWHEwcQ37U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":61796},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"aad281a3b0ea2b42c29a3584aa0f433f3bb04914","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.1.0","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.8.1","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.0.2_1714551424140_0.37535106910221283","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"sonic-forest","version":"1.0.3","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.0.3","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"81363af60017daba39b794fce24627dc412563cb","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.0.3.tgz","fileCount":51,"integrity":"sha512-dtwajos6IWMEWXdEbW1IkEkyL2gztCAgDplRIX+OT5aRKnEd5e7r7YCxRgXZdhRP1FBdOBf8axeTPhzDv8T4wQ==","signatures":[{"sig":"MEUCIQDXDkzjnSHolrk9ict5W9+XPUu5NgDfrvKvPJtS5QsBUgIgJAR+9fISrNYoISdBMvQ/Zd7E8ATGUiOmNLvY91yKlqM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73164},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"b2bb700436723b971ccf8a6a593b57e1592ec212","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.1.0","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.8.1","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.0.3_1715158951112_0.8277465118915943","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"sonic-forest","version":"1.1.0","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.1.0","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"5bbbbe1a32eecb9031f912ccb6709410723b45c9","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.1.0.tgz","fileCount":55,"integrity":"sha512-8+ctu0OHaXWoMlq9mRZykhEOa6+B8heiYGYa3GIP/nV96CvF0K0qR0MzJN65HUeNbxLYDtODetff0I7WNvwI3w==","signatures":[{"sig":"MEUCICDr47sGIjqVDgA/Tri9PE7ZhzbDE3b1iX925wAa6TWqAiEA7m+b2rkzGFNhJumHBpe5Ec7Ow26BoyOH1M9oRcmXiOY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76419},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"e1a99fe0fe88aba7b8476f3da3a8c881e6fac026","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.18.0","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.1.0_1738537887936_0.40898177471713737","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"sonic-forest","version":"1.2.0","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.2.0","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"d99c459c64a95c1d7eead587f903bbcf8db343ac","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.2.0.tgz","fileCount":77,"integrity":"sha512-s1gSrnCDeJDfkIQzKBqOMRbno/cFtiGHaF/8jmxtg+Held0T+HUknz4fyl2fTn31GxJckYs431MHIPS7bmq8Sg==","signatures":[{"sig":"MEQCICZ7HkIo+BYE8WgJrwFynn9Got3TnmWDUDUhlfznWkC/AiB8cJbG19tbl9brtq+4NoHGZnWxbjIsiLoLJqI08TwMww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127616},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"42e728457e6c43a8bbacc1630dc33ff4f1d47738","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.18.0","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.2.0_1739488975634_0.6965877018044837","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"sonic-forest","version":"1.2.1","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.2.1","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"58787ab2d4834406bd347d0d000535e36a566989","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.2.1.tgz","fileCount":101,"integrity":"sha512-xyiZ4Uca6wtGxOVNCmdTRjJT3JfojLc08R+ZXht4aavYgX2+KishQijY1DYsGKKtEdV+UCbbRM2n19zwHlkJJg==","signatures":[{"sig":"MEYCIQC2tBJ2Sop3S+jTRfVT1HdKWTblbG2rhDx/SI0wEiCezAIhAPyRNrAHp0UONiwfXuAxtIQZzGZA/pD8b036kXa3VSPm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151651},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"ecf38658d5ff1827fa2dfe5e200d44d633cb5120","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.19.4","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.2.1_1754086376656_0.08395846231396686","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"sonic-forest","version":"1.3.0","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.3.0","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"ecb20714143cbefc1e831f803abfef31434e13f8","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.3.0.tgz","fileCount":101,"integrity":"sha512-uTYjcMOqY71rJFqWnuX5AGXv4RgxVoQZsnnm6gXFW/2z3xTJbbdcHcHfesngyA1ZXnjtRMJK91xQo8jQeJ3OjQ==","signatures":[{"sig":"MEQCIFOgO/71B+KhLsNGY4KhjSOmdVH2VCThNw/IK//aCHj1AiBpyWoGH9MJGKPHQ9THWc+972LC6QfAGc66zkEoPj+7PQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDgTffPiPDdGnJgJXaTVDQRI9UPrXtDA1uidGZb9eZoxQIgSLJ/md+UWWVx3RtqZFAD9PmlAObXz6uakKpw8RZJUMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151855},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"312ae69da893c432081b78eb406972976bdad2ff","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.20.2","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","typescript":"^5.4.4","@types/jest":"^29.5.12","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.3.0_1792499950401_0.7063223554857185","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"sonic-forest","version":"1.4.0","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","_id":"sonic-forest@1.4.0","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"homepage":"https://github.com/streamich/sonic-forest","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"82b7a336c85c31e66102772360aac6607c5e6abe","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.4.0.tgz","fileCount":125,"integrity":"sha512-crVMSh0rvbwyaviQyvBesWUz86UnQUVYgz2lIqviEKkpLsO6MWxQQ9RpnWSmpPL3jdZuap0rMVmj9/i8cz/FiA==","signatures":[{"sig":"MEUCIQD5JpQ00n1ahxTFsOi+rly84cL8Hc5OiFrNoj3+aZcpKwIgMm9Yr8ZkYPBAq74BDHzgwWVUJ0gvtYcPphF1mJlJU14=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHXvRpoBZ7A5ME8i7Ame+FbXQ+AqOoeKy9qsNeSDb+97AiEA0/VpD0+NFZll1IoV1gWv2Q06gs6O7m9pqF+X4cLoJ+c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178920},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"79bcb1129b07fccf9995b5bb0313768f8736b71c","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"_nodeVersion":"20.20.2","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rbush":"^4.0.1","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","rbush-knn":"^4.0.0","typescript":"^5.4.4","@types/jest":"^29.5.12","@types/rbush":"^4.0.0","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"tmp":"tmp/sonic-forest_1.4.0_1792595071966_0.1152050362450372","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"_id":"sonic-forest@1.5.0","bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"dist":{"shasum":"52c3ff4cc189a386e69b53d13b01b67dccb35465","tarball":"https://registry.npmjs.org/sonic-forest/-/sonic-forest-1.5.0.tgz","fileCount":131,"integrity":"sha512-nI+WIKLFjQM59GTwxL08DTaoY9bS3rFAvkrhiCiJlVVw4iARYNOcJtPK826HOiojADO1GCoVRABmwjXTU1Ux+w==","signatures":[{"sig":"MEUCIHqHipwe1amOmBoZJwQQZ6gvt1WIwkC34/Expyq6wcDEAiEA0SnPnljRtySNvg0A0hrbfEtSmrg8QUZIFOwUVtf4VTY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCB98DQ1GOmH7bk3QFh3gzn3I/dZVIWyQz74DLgEOLPFwIhANsnYq4jU1ToIUmIQzBGWmkJvrzUmmctnWMxDFRZEqZN"}],"unpackedSize":201174},"jest":{"verbose":true,"testRegex":".*/(__tests__|__jest__|demo)/.*\\.(test|spec)\\.ts$","transform":{"^.+\\.ts$":"ts-jest"},"moduleFileExtensions":["ts","js"],"testEnvironmentOptions":{"url":"http://localhost/"},"transformIgnorePatterns":[]},"main":"lib/index.js","name":"sonic-forest","types":"lib/index.d.ts","author":{"url":"https://github.com/streamich","name":"streamich"},"engines":{"node":">=10.0"},"funding":{"url":"https://github.com/sponsors/streamich","type":"github"},"gitHead":"4fc82868e6de38cbba0ae22cbbe4ecae47560e2d","license":"Apache-2.0","private":false,"release":{"branches":["master","next"]},"scripts":{"jest":"node -r ts-node/register ./node_modules/.bin/jest","lint":"yarn tslint","test":"jest --maxWorkers 7","build":"tsc --project tsconfig.build.json --module commonjs --target es2020 --outDir lib","clean":"rimraf lib typedocs coverage gh-pages yarn-error.log","tslint":"tslint 'src/**/*.{js,jsx,ts,tsx}' -t verbose --project .","test:ci":"yarn jest --maxWorkers 3 --no-cache","typedoc":"typedoc","coverage":"yarn test --collectCoverage","prettier":"prettier --ignore-path .gitignore --write \"src/**/*.{ts,tsx,js,jsx}\"","build:pages":"rimraf gh-pages && mkdir -p gh-pages && cp -r typedocs/* gh-pages && cp -r coverage gh-pages/coverage","deploy:pages":"gh-pages -d gh-pages","prettier:check":"prettier --ignore-path .gitignore --list-different 'src/**/*.{ts,tsx,js,jsx}'","publish-coverage-and-typedocs":"yarn typedoc && yarn coverage && yarn build:pages && yarn deploy:pages"},"typings":"lib/index.d.ts","version":"1.5.0","_npmUser":{"name":"streamich","email":"vadimsdaleckis@gmail.com"},"homepage":"https://github.com/streamich/sonic-forest","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"prettier":{"semi":true,"useTabs":false,"tabWidth":2,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all","bracketSpacing":false},"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"_npmVersion":"10.8.2","description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","directories":{},"maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"_nodeVersion":"20.20.2","dependencies":{"tree-dump":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rbush":"^4.0.1","tslib":"^2.6.2","rimraf":"^5.0.0","tslint":"^6.1.3","js-sdsl":"^4.4.2","ts-jest":"^29.1.2","ts-node":"^10.9.2","typedoc":"^0.25.12","prettier":"^3.2.5","benchmark":"^2.1.4","rbush-knn":"^4.0.0","typescript":"^5.4.4","@types/jest":"^29.5.12","@types/rbush":"^4.0.0","sorted-btree":"^1.8.1","@types/benchmark":"^2.1.2","tslint-config-common":"^1.6.2"},"peerDependencies":{"tslib":"2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sonic-forest_1.5.0_1792767327537_0.4164300389059339"}}},"time":{"created":"2024-04-20T11:19:00.224Z","modified":"2026-10-23T14:55:28.002Z","1.0.0":"2024-04-20T11:19:00.508Z","1.0.1":"2024-04-30T14:46:46.883Z","1.0.2":"2024-05-01T08:17:04.288Z","1.0.3":"2024-05-08T09:02:31.326Z","1.1.0":"2025-02-02T23:11:28.110Z","1.2.0":"2025-02-13T23:22:55.825Z","1.2.1":"2025-08-01T22:12:56.867Z","1.3.0":"2026-10-20T12:39:10.556Z","1.4.0":"2026-10-21T15:04:32.052Z","1.5.0":"2026-10-23T14:55:27.637Z"},"bugs":{"url":"https://github.com/streamich/sonic-forest/issues"},"author":{"url":"https://github.com/streamich","name":"streamich"},"license":"Apache-2.0","homepage":"https://github.com/streamich/sonic-forest","keywords":["tree","binary tree","binary search tree","bst","avl","red-black","rb-tree","avl-tree","splay","splay tree","radix"],"repository":{"url":"git+https://github.com/streamich/sonic-forest.git","type":"git"},"description":"High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)","maintainers":[{"name":"streamich","email":"vadimsdaleckis@gmail.com"}],"readme":"# Sonic Forest\n\nHigh performance (binary) tree and sorted map implementation for JavaScript in TypeScript.\n\n## Features\n\n- AVL tree implementation\n- AVL sorted map implementation\n- AVL sorted set implementation\n- Red-black (RB) tree implementation\n- Red-black (RB) tree sorted map implementation\n- Left-leaning Red-black (LLRB) tree implementation\n- Radix tree implementation (string keys)\n- Binary radix tree implementation (Uint8Array keys)\n- Splay tree implementation\n- R-tree spatial index (2D rectangles, k-nearest), see [`src/r-tree`](src/r-tree/README.md)\n- Various utility methods for binary trees\n\nThis package implements the fastest insertion into self-balancing binary tree out of any\nNPM package. Both, AVL and Red-black tree insertion implementations of `sonic-forest` a faster\nthan inserts in [`js-sdsl`](https://www.npmjs.com/package/js-sdsl) implementation.\n\nHowever, deletions from a binary tree are faster in `js-sdsl`. But, deletions in `sonic-forest`\ndelete exactly the node, which contains the key. Unlike, in `js-sdsl` and all other\nbinary tree libraries, where those libraries find the in-order-sucessor or -predecessor, which\nis a leaf node, and delete that instead. As such, one can keep pointers to `sonic-forest` AVL\nand Red-black tree nodes, and those pointers will stay valid even after deletions.\n\n## Binary Radix Tree\n\nThe binary radix tree implementation supports `Uint8Array` keys, making it suitable for binary data like:\n\n- Binary protocol routing\n- File system paths as binary data\n- Cryptographic hashes\n- Network packet classification\n- Any binary blob keys\n\n### Key Features\n\n- **Efficient slicing**: Uses `Slice` class to reference portions of `Uint8Array` without copying data\n- **Prefix compression**: Automatically compresses common prefixes to save memory\n- **Binary-safe**: Works with any byte sequence, including null bytes\n- **Same API**: Provides similar interface to the string-based radix tree\n\n### Usage Example\n\n```typescript\nimport { BinaryRadixTree } from 'sonic-forest';\n\nconst tree = new BinaryRadixTree<string>();\n\n// Insert binary keys\ntree.set(new Uint8Array([0x47, 0x45, 0x54, 0x20]), 'GET ');     // \"GET \"\ntree.set(new Uint8Array([0x50, 0x4F, 0x53, 0x54]), 'POST');      // \"POST\"\ntree.set(new Uint8Array([0x50, 0x55, 0x54, 0x20]), 'PUT ');      // \"PUT \"\n\n// Retrieve values\nconsole.log(tree.get(new Uint8Array([0x47, 0x45, 0x54, 0x20]))); // \"GET \"\n\n// Delete keys\ntree.delete(new Uint8Array([0x50, 0x4F, 0x53, 0x54])); // Remove POST\n\nconsole.log(tree.size); // 2\n```\n","readmeFilename":"README.md"}