{"_id":"@avelonjs/conformance","_rev":"16-0e49795ea212e9e1dfddc10848dd5ab8","name":"@avelonjs/conformance","dist-tags":{"latest":"0.8.3"},"versions":{"0.1.0":{"name":"@avelonjs/conformance","version":"0.1.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.1.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"55978d618a5b967d588cea1e9983e6a3e1142fa6","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.1.0.tgz","fileCount":38,"integrity":"sha512-GuCUwgsGsn3EhmN5eBedWUWXXpT9NpdqTomb8O9sD2mFbAWo02ES4P6ZyPGT9vXW142Xp1O5X+r/FKyS6LK5MA==","signatures":[{"sig":"MEYCIQD9qA8o8YQJhV1IZ1rnj+SC9inel37iN+UaYTGRzb2HgQIhAPceCLXpdIFRHDNirrk4CQTC1qvndy7VbIr9vU1+mULh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":217672},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"4dd65334a5b17f25e548c8a1601d7445349b79da","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"12.0.2","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.1.0_1787877813667_0.28483019715093105","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@avelonjs/conformance","version":"0.3.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"487a5283d2c79a47d2c96e3d0f4a8fff7398b551","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.0.tgz","fileCount":38,"integrity":"sha512-rmHlXH8yGEKYHwUcqGyqoiW85oMxvbA1PcYKO+ABjnWUhZoO6hC+qj4rlUN2bbysV0wwHksR2/1YiRPs2nFXcQ==","signatures":[{"sig":"MEYCIQCoYKkPHYydSHUeQz4Ml8uDOION4vLC8o33L13LoMxWrgIhAIAYEITTUMeRwds7b0Co9q3eh5Ym0FlDH6o1ucJUteMm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"5ca2de946d13813afe58a4fe89b01ef65edc2870","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.0_1788023466985_0.8241075036553596","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@avelonjs/conformance","version":"0.3.1","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.1","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"8350e4fa5fff9251be5909fb56c8724a4f420e94","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.1.tgz","fileCount":38,"integrity":"sha512-DP58us7dvn9wIPKSYO8Pa32KuwTFiTJOdagt7/gFrUAabb3hYho3CaL0yk/Do//W0LFnCwxrLFML0Ue8GoNkqg==","signatures":[{"sig":"MEQCIH1EPRgOKsCHZjEpw3H/jfuTLD+HoiN1ifQqPqH0C91KAiAPtRAb7zis+hkVo9PveHELT7JVAwkH6Gp6lxlQDj0vBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"7db3e1301e4ce243c5b34a813b50c6b286d5bd81","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.1_1788024206151_0.9729458687735242","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@avelonjs/conformance","version":"0.3.2","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.2","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"efcec7ffaa898827b5f4050975d3e004f0f19617","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.2.tgz","fileCount":38,"integrity":"sha512-Hni8MTFXAqUeqN2+tAfymVzth8mcEMhKlDccMZJpUtn51bz/M0rbsJaBBAhZpGgGxC8sw5cBR2IuUwQ5UWoy4w==","signatures":[{"sig":"MEUCIQD+eUrixl1dDe7Ju55Sx7QUnlp9GUBuk3iqa6XBlhmzngIgHMdQ8wr4OxifaOu0x2iy5z36lwAxoAtxA9/eMK+5pKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"373016ed35e1c24c983e76bd76fab0959b249021","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.2_1788025867714_0.2921517988054787","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@avelonjs/conformance","version":"0.3.3","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.3","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"361fc4f7b54b4033be31493db4e5514e4451ae14","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.3.tgz","fileCount":38,"integrity":"sha512-ajKv0Epj+yWEJyRMfBNpA8PeHuhWDP7KA0PFGy5i/Wya5PcoIr00pz0fTPvg9KLgZNO+9ItIJSV0uYihdTgOOA==","signatures":[{"sig":"MEUCIBWF10ff0PbXC8KqMnH2LIzs/eNUqjnjmd5wDY9lxrWNAiEA2l13bORTZG8CPsGTeRKWhn9XWS7ZCe8YYo0LxwnLFLk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"7cf9902a019c313c1754d81e2ff067147b39cc8f","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.3_1788028616230_0.2830683765518389","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@avelonjs/conformance","version":"0.3.4","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.4","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"cf8b137c83032a1ab3b2c60334d64c4d997a2938","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.4.tgz","fileCount":38,"integrity":"sha512-VyWRNk8e2KVwxOlBx3iDNS5y2usJZ7DNnUZ4dtOYKH0xnRX5bhFoZwDk32TbcuIQPDYyCQy4T6h5rhPzriJfUw==","signatures":[{"sig":"MEUCIBfOaGPy+C3iCNAzQx50Cmkiyfm5i4JWbQNnTv8yePWZAiEA4R/PhVP78vf+6hAlnogWJfA0T1yHTGEwf32I0znoJUE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"90bba7a154835ac71d6aca6c0e3a83dea5d5a709","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.4_1788030140218_0.2107886504711156","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@avelonjs/conformance","version":"0.3.5","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.5","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"1b3a802171c3ba85091ed3f95b9cd50fed6aa40c","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.5.tgz","fileCount":38,"integrity":"sha512-lvuaQkE/QsY/AjKYc41dsRR8HZSBwNDGBe7FaUwxVwK5lEcxq5KcvTsBIQp2/gCgeS3Q/UMAVKh7QdFMIp2E7Q==","signatures":[{"sig":"MEUCIQDjldSeU2HNSZ6+dRUTJmt6rg/QtCsJ1lyZK0frNFEDKgIgOCQZwtouk7fGWaS3B+PPxHGesFfx9A+dFahvswHR+DI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"3f76dd494bd9e721f9088db1a8f4daea53410a7a","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.5_1788032060556_0.759840984884012","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@avelonjs/conformance","version":"0.3.6","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.3.6","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"9f35ae526cebf1a8d6a8a4b02781660db0961a89","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.3.6.tgz","fileCount":38,"integrity":"sha512-KgvhiyDKShuqdEs3eDbOKF7cFM56eB2/3Ecdz1f4wyueZnn1k/Sl4pLf/0WpIk+QOVZXwPd80RC/gtitnBFOSQ==","signatures":[{"sig":"MEQCIEQhdKyMbMZykfQOft5BafNuMkCKgG5DOq3qvTyYmLZsAiA2eLH2jvHSx1onGlh3x7ELJc4NOnyPZ/mX4HeIOAajuw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"3ef55fff54a51fd6085a5ed18163ddd0b8ccebb4","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.3.6_1788039392425_0.26448280813217484","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@avelonjs/conformance","version":"0.4.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.4.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"5c403c33bd71c065ec0c652e9312f924a112606a","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.4.0.tgz","fileCount":38,"integrity":"sha512-9KO8t084AinIvIIL7+pKHTDNf+HhUquLCgokXLTvWFPYRDI/S7RleKWvsZyffYkjXzqi0Jh0pFV0IQjU2ZTzUA==","signatures":[{"sig":"MEUCIFK1OY9ItpsM3nrNVIaBYYQkJLaB16CBEM1UE8PaCY2fAiEAoCmlU/GyNzfQXmpT/8E6cmkGMA2W7K30znR8crVr4Zg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"012a24ec3e5cbf2682493e79398779c5f4ce50d5","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.4.0_1788047789915_0.5746969775651996","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@avelonjs/conformance","version":"0.5.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.5.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"3591609dabab0d0117568e21ba38831f9ce04be5","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.5.0.tgz","fileCount":38,"integrity":"sha512-asD954KwRn2aY0hjwQRjbQavzQwpotdgfuUejiY1wNk3MwXKUYagpSqMbtADQEZTdUWa83ByCIT/R7qwiWVh7A==","signatures":[{"sig":"MEUCIQCJsnn5jfvuIT7Z5+IbJWfYo7lpehFZnBNx8Vo2zAsRrQIgKPZ7AzMIgdWlIRA/HbAnaa/eEGvTR5uP//p64de8dYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"9605f4db9921b323684a72cca1eb125fca936237","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.5.0_1788054169183_0.6628765828251413","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@avelonjs/conformance","version":"0.6.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.6.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"2e7d0e992a997e6ff02518d2a72ad28bd491d2de","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.6.0.tgz","fileCount":38,"integrity":"sha512-Pxy1KK90y0W/EOnCELoweANIjUZVXqppm1Lp3cpZr/NzwYkd6Xso0FxIxJg9F2q3c/gXzh6/JfTMHJWqFz0qDA==","signatures":[{"sig":"MEQCIGtcv1GKMAIKu0Ud3aXUDC4BHrTlVjhAP7X20ZBQTFYwAiAn5CDg+cjUsJMJ4/eQolMY7vv9eemyaghvdFUDiv87dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"54023b71e432677d2cf32a6b5cceeb2eb90aac3f","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.6.0_1788059417834_0.33059592838706253","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@avelonjs/conformance","version":"0.7.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.7.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"56097b1f2e9381f65d2129a25f2ea643c4560179","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.7.0.tgz","fileCount":38,"integrity":"sha512-H5q0ycKgB+bSN2l1XDtZxX9lLY8xWR8qZeXrlA71ZjplENzpmy55GJrI+y7YpbRpKX5jra1R/liWNUz2knUsnA==","signatures":[{"sig":"MEQCIGb5MYUJlobB+zbBcxkn/NLlx0YxFvLktqOwoVPLlAAbAiBA+oOZD9I45lUsuscJKmAuc/DkNvYL9oT8GSXnmSATyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"b8ce5ffcbba806b76a3a92f0e92e5455f42e5802","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.7.0_1788061395681_0.02421529543811718","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@avelonjs/conformance","version":"0.8.0","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.8.0","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"5a85184e8f3c7e39d8bb66d1d8933a9572d93d15","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.8.0.tgz","fileCount":38,"integrity":"sha512-GIUxX8PgtS1YEU9VZ6sznYn6Rsu6lZtyiYtBXqllyqXJ+P901wGinECJXjSnlUfNmqhaAPRgO/basoUG8JNy6A==","signatures":[{"sig":"MEYCIQDwjWBhYXTrK/tV156UJ+VIB7GOtHdNP/WcgtKRJgbLQwIhAPuWEotjr1s1L4IDRXDNOgiTIAjVT5L7hYBYdMcnjF1a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"85231d8c4b64ac61a0a67f1ae8d1610bd8e609ac","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.8.0_1788068887385_0.41282226104981423","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@avelonjs/conformance","version":"0.8.1","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.8.1","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"d49bf5226dd8ff46d5e6bb06898d17eb891c0a77","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.8.1.tgz","fileCount":38,"integrity":"sha512-SiRlX3rjV1EkDkcCGflrP8Im2hb9kQDeLNBsQibKKUVM3OctxQ9uLQYQ37eJ3rUu/dzFjHEEbDyLSU5GXrwzdg==","signatures":[{"sig":"MEUCIQCpP5VYiL14z3CZw8R96tsOK1qjQJzxXjj6VlP3NGTX6QIgbMTBk5KXn/Ws+OZ8NbW+wecTCgGb0FCtgy2942ILiCE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"3d7d0c0ff7f417e9f9a5c54dc85f037e8901bf81","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.8.1_1788573045606_0.3243601558814493","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@avelonjs/conformance","version":"0.8.2","keywords":["avelon","typescript","testing","conformance"],"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","_id":"@avelonjs/conformance@0.8.2","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"homepage":"https://github.com/yannelli/avelon","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"38da2670e73d926b20cbf80f125f64870a3b5753","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.8.2.tgz","fileCount":38,"integrity":"sha512-Wpfi6V6MpL2hRwLh5ptHtO1ochp4NpejvH7PC33ztiPAijoNQ02rXIzHQiYmwyEAlxV/1GBf20quq2zoiHdftQ==","signatures":[{"sig":"MEYCIQChdyNYYxvGid3oeJEuUbQz4HXk/iioPV7J13QPsDCx9wIhAIr/4T7bLQvgkOfNCkhJZ/6+jbM5x5WAYTlBA7ffjax5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIA9aNa8gpJw1xOIHPwte3r+/YvWJBhq/kCqwIP7Tw/OkAiEAmgg/QavE+kzRaR+HlaNZDGXLNIPg7w4KR+Q07pEDsP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":222862},"type":"module","engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"25bfcd03379ae9ef7fc42aab33748eebc468170b","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/conformance_0.8.2_1789879606619_0.8159991545939893","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"_id":"@avelonjs/conformance@0.8.3","bugs":{"url":"https://github.com/yannelli/avelon/issues"},"dist":{"shasum":"1c3b902e6e0829baf0d3a6cc1e0162eb86e0e1b0","tarball":"https://registry.npmjs.org/@avelonjs/conformance/-/conformance-0.8.3.tgz","fileCount":38,"integrity":"sha512-0G+tegXwzb5nAqzgGjWyS17IACTYRDH4ZQnf420vQM01L1xlqbw6iWkZV32liNOM3Ck36qmp6f6jkj8Jjs8Xkg==","signatures":[{"sig":"MEQCIH/6wqf7Cbn+S/Cyy0jIOG2i9aUEZo5KWF5o5DQzQa3iAiAlyfal9vBbsUNYEzfpeOXPO+HW3h14hmvExCWDoLJyFw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIErVuYLml/0oj+WT9BYoQlaxxwUvO/D9eFF3JZYjWASVAiEAkxjfqgz8pZiIvvkXX6ZhNgCyo9u+Nh2FkIlcU3T8diQ="}],"unpackedSize":222862},"name":"@avelonjs/conformance","type":"module","author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"engines":{"bun":">=1.3.14"},"exports":{".":"./src/index.ts","./suites":"./src/suites/index.ts"},"gitHead":"1231a6430f47d15b9e6fe6cbc04dbbb5d189124e","license":"MIT","private":false,"scripts":{"test":"bun test","typecheck":"tsc --noEmit"},"version":"0.8.3","_npmUser":{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"},"homepage":"https://github.com/yannelli/avelon","keywords":["avelon","typescript","testing","conformance"],"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"_npmVersion":"10.9.8","description":"Contract test suites and in-memory fakes for Avelon drivers.","directories":{},"maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"_nodeVersion":"24.3.0","dependencies":{"@avelonjs/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"1.3.14","typescript":"5.9.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/conformance_0.8.3_1789881620932_0.9555628129242575"}}},"time":{"created":"2026-08-28T00:43:33.491Z","modified":"2026-09-20T05:20:21.179Z","0.1.0":"2026-08-28T00:43:33.845Z","0.3.0":"2026-08-29T17:11:07.124Z","0.3.1":"2026-08-29T17:23:26.299Z","0.3.2":"2026-08-29T17:51:07.844Z","0.3.3":"2026-08-29T18:36:56.360Z","0.3.4":"2026-08-29T19:02:20.374Z","0.3.5":"2026-08-29T19:34:20.690Z","0.3.6":"2026-08-29T21:36:32.567Z","0.4.0":"2026-08-29T23:56:30.072Z","0.5.0":"2026-08-30T01:42:49.314Z","0.6.0":"2026-08-30T03:10:17.980Z","0.7.0":"2026-08-30T03:43:15.825Z","0.8.0":"2026-08-30T05:48:07.528Z","0.8.1":"2026-09-05T01:50:45.743Z","0.8.2":"2026-09-20T04:46:46.750Z","0.8.3":"2026-09-20T05:20:21.024Z"},"bugs":{"url":"https://github.com/yannelli/avelon/issues"},"author":{"name":"Ryan Yannelli","email":"ryanyannelli@gmail.com"},"license":"MIT","homepage":"https://github.com/yannelli/avelon","keywords":["avelon","typescript","testing","conformance"],"repository":{"url":"git+https://github.com/yannelli/avelon.git","type":"git","directory":"packages/conformance"},"description":"Contract test suites and in-memory fakes for Avelon drivers.","maintainers":[{"name":"ryanyannelli","email":"ryanyannelli@gmail.com"}],"readme":"# @avelonjs/conformance\n\n`@avelonjs/conformance` is the load-bearing test artifact for Avelon drivers. It ships one suite per frozen contract, written against the contract rather than any implementation, plus in-memory fakes that run those same suites. Reach for this package when you certify a driver: pass a `create` factory that returns a known-empty instance, and let the suite own the assertions. A passing driver means someone other than the driver author wrote the tests.\n\n## Installation\n\n```sh\nbun add -d @avelonjs/conformance\n```\n\nSuites import `bun:test` and live at `@avelonjs/conformance/suites`. Fakes stay on the package root so a Next or Node production graph can import `FakeMail` without loading the test runner. Point a driver package at `@avelonjs/core` for the contract and at this package for the suite.\n\n## Basic Usage\n\nWire the shared database suite to an in-memory fake, then swap `create` for your driver when you certify it.\n\n```ts\nimport { FakeDatabase } from '@avelonjs/conformance'\nimport { databaseSuite } from '@avelonjs/conformance/suites'\n\ndatabaseSuite({\n  name: 'reference fake',\n  create: () => new FakeDatabase(),\n})\n```\n\nA live driver owns fixture reset and cleanup. The suite still assumes each `create()` returns a known-empty world.\n\n```ts\nimport { databaseSuite } from '@avelonjs/conformance/suites'\nimport { createPostgresDatabase } from '@avelonjs/postgres'\n\ndatabaseSuite({\n  name: 'live postgres',\n  create: async () => {\n    const driver = createPostgresDatabase()\n    await driver.resetFixtures()\n    return driver\n  },\n  cleanup: (driver) => driver.close(),\n})\n```\n\n## Shared Suites\n\nEvery contract has one suite. You did not write it. That is the point. Call the matching function from a `bun test` file; the suite registers `describe` and `test` blocks itself.\n\n```ts\nimport { FakeMail } from '@avelonjs/conformance'\nimport { mailSuite } from '@avelonjs/conformance/suites'\n\nmailSuite({\n  name: 'reference fake',\n  create: () => new FakeMail('transactional', 'mailer@example.test'),\n})\n```\n\nA driver either passes a capability's tests or declares that capability `false`. Declaring `true` and failing, or declaring `false` while still implementing the method, is a suite failure.\n\n## Reference Fakes\n\nEach fake is an in-memory implementation of one contract. Fakes run the same suites as live drivers, so `new FakeMail()` cannot drift from the mail contract. Use them in application tests and in this package's own certification of the suites.\n\nCapability-narrowed variants exist where a boolean or spectrum can be off: `FakeFlagsWithoutTargeting`, `FakeNotificationsWithoutChannels`, `FakeQueueWithoutRetries`, `FakeRateLimitWithoutAlgorithms`, and `FakeSearchWithoutFacets`.\n\n```ts\nimport { FakeFlags, FakeFlagsWithoutTargeting } from '@avelonjs/conformance'\n\nconst withTargeting = new FakeFlags()\nconst withoutTargeting = new FakeFlagsWithoutTargeting()\n\nconst targeted = await withTargeting.evaluate('assay.targeted', false, { actorId: 'actor-enabled' })\nconst globalOnly = await withoutTargeting.evaluate('assay.enabled', false)\n```\n\n## Capability Surfaces\n\n`assertCapabilitySurface` checks both lies: a declared capability whose method is missing, and an implemented method whose capability is `false`. Suites call it; you may also call it from a driver test when a surface is method-gated.\n\n```ts\nimport { assertCapabilitySurface, captureFailure, FakeStorage } from '@avelonjs/conformance'\n\nconst storage = new FakeStorage()\nassertCapabilitySurface(storage, 'signedUrls', storage.capabilities.signedUrls, ['signedUrl'])\n\nconst error = await captureFailure(() => storage.get('missing/avatar.png'))\n```\n\n`captureFailure` returns the thrown value so suites can assert the framework error taxonomy instead of a vendor code.\n\n## Method Reference\n\n| Method / export | Signature | Description |\n|---|---|---|\n| `assertCapabilitySurface` | `(driver: object, capability: string, declared: boolean, methods: readonly string[]) => void` | Fails when a declared method is missing or an undeclared method is present. |\n| `captureFailure` | `(operation: () => Promise<unknown>) => Promise<unknown>` | Runs an operation expected to throw and returns the thrown value. |\n| `SuiteContext` | `interface SuiteContext<TDriver>` | `name`, `create`, optional `cleanup`, and live-service helpers for one suite. |\n| `FakeAI` | `class FakeAI` | In-memory AI driver used as the AI contract reference. |\n| `FakeCache` | `class FakeCache` | In-memory cache driver used as the cache contract reference. |\n| `FakeDatabase` | `class FakeDatabase` | In-memory database driver used as the database contract reference. |\n| `FakeFlags` | `class FakeFlags` | In-memory flags driver with targeting enabled. |\n| `FakeFlagsWithoutTargeting` | `class FakeFlagsWithoutTargeting` | Flags fake with targeting declared unavailable. |\n| `FakeIdentity` | `class FakeIdentity` | In-memory identity driver used as the identity contract reference. |\n| `FakeLogs` | `class FakeLogs` | In-memory log driver with traces enabled. |\n| `FakeTraceRecord` | `interface` | Observable span state retained by `FakeLogs`. |\n| `FakeMail` | `class FakeMail` | In-memory mail driver with hosted templates enabled. |\n| `FakeNotifications` | `class FakeNotifications` | In-memory notifications driver with every channel declared. |\n| `FakeNotificationsWithoutChannels` | `class FakeNotificationsWithoutChannels` | Notifications fake with an empty channel list. |\n| `FakeSentNotification` | `interface` | One notification accepted by a notifications fake. |\n| `FakePayments` | `class FakePayments` | In-memory payments driver used as the payments contract reference. |\n| `FakeQueue` | `class FakeQueue` | In-memory queue driver with retries enabled. |\n| `FakeQueueWithoutRetries` | `class FakeQueueWithoutRetries` | Queue fake with retries declared unavailable. |\n| `FakeRateLimit` | `class FakeRateLimit` | In-memory rate-limit driver with every algorithm declared. |\n| `FakeRateLimitWithoutAlgorithms` | `class FakeRateLimitWithoutAlgorithms` | Rate-limit fake with an empty algorithm list. |\n| `FakeRealtime` | `class FakeRealtime` | In-memory realtime driver used as the realtime contract reference. |\n| `FakeSearch` | `class FakeSearch` | In-memory search driver with facets enabled. |\n| `FakeSearchWithoutFacets` | `class FakeSearchWithoutFacets` | Search fake with facets declared unavailable. |\n| `FakeSocial` | `class FakeSocial` | In-memory social identity driver used as the social contract reference. |\n| `FakeStorage` | `class FakeStorage` | In-memory storage driver used as the storage contract reference. |\n| `FakeTokens` | `class FakeTokens` | In-memory API-token driver used as the tokens contract reference. |\n| `aiSuite` | `(context: SuiteContext<TDriver>) => void` | Shared AI contract suite from `@avelonjs/conformance/suites`. |\n| `cacheSuite` | `(context: SuiteContext<TDriver>) => void` | Shared cache contract suite. |\n| `databaseSuite` | `(context: SuiteContext<TDriver>) => void` | Shared database contract suite. |\n| `flagsSuite` | `(context: SuiteContext<TDriver>) => void` | Shared flags contract suite. |\n| `identitySuite` | `(context: SuiteContext<IdentityFactory<TDriver>>) => void` | Shared identity contract suite. |\n| `logsSuite` | `(context: SuiteContext<TDriver>) => void` | Shared logs contract suite. |\n| `mailSuite` | `(context: SuiteContext<TDriver>) => void` | Shared mail contract suite. |\n| `notificationsSuite` | `(context: SuiteContext<TDriver>) => void` | Shared notifications contract suite. |\n| `paymentsSuite` | `(context: SuiteContext<TDriver>) => void` | Shared payments contract suite. |\n| `queueSuite` | `(context: SuiteContext<TDriver>) => void` | Shared queue contract suite. |\n| `ratelimitSuite` | `(context: SuiteContext<TDriver>) => void` | Shared rate-limit contract suite. |\n| `realtimeSuite` | `(context: SuiteContext<TDriver>) => void` | Shared realtime contract suite. |\n| `searchSuite` | `(context: SuiteContext<TDriver>) => void` | Shared search contract suite. |\n| `socialSuite` | `(context: SuiteContext<TDriver>) => void` | Shared social contract suite. |\n| `storageSuite` | `(context: SuiteContext<TDriver>) => void` | Shared storage contract suite. |\n| `tokensSuite` | `(context: SuiteContext<TDriver>) => void` | Shared tokens contract suite. |\n\n## Testing\n\nThis package is the suite. Run it against the shipped fakes here, and again against a real driver in that driver's package. A deliberately broken stub in `tests/` proves the suite rejects compiler defects rather than echoing the fake back to itself.\n\n```ts\nimport { FakeStorage } from '@avelonjs/conformance'\nimport { storageSuite } from '@avelonjs/conformance/suites'\n\nstorageSuite({\n  name: 'reference fake',\n  create: () => new FakeStorage(),\n})\n```\n\n```sh\nbun test\nbun run typecheck\n```\n","readmeFilename":"README.md"}