{"_id":"@adaskothebeast/typewriter-runtime","_rev":"5-a6cee8f782d44770c843cbe1587d2a18","name":"@adaskothebeast/typewriter-runtime","dist-tags":{"latest":"11.0.1"},"versions":{"10.0.0":{"name":"@adaskothebeast/typewriter-runtime","version":"10.0.0","keywords":["typewriter","typescript","hydration","serialization","json"],"author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"license":"MIT","_id":"@adaskothebeast/typewriter-runtime@10.0.0","maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors#readme","bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"dist":{"shasum":"df1627bd58080bccbec26026df4e6aff9d6bf93e","tarball":"https://registry.npmjs.org/@adaskothebeast/typewriter-runtime/-/typewriter-runtime-10.0.0.tgz","fileCount":20,"integrity":"sha512-9wviyDYqzZ0qw3dVA4MqjUsKgE1PB2aEQ9VaNlAfdnERv+1jyYD+H0xoynM2wxksX8tsoZ3GEUq3tz8eox//AQ==","signatures":[{"sig":"MEUCIQCZSjSXN1YMKMm1/37FD2HDkPeCOQryw8/qLPY3e5VmvQIgILQmtJ386hkJZAoAcksIJmbaxFzXapj2/Yp4YVqkTqc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93591},"main":"./index.esm.js","module":"./index.esm.js","gitHead":"d939a562c5f5947e98df253b28d384399481063e","_npmUser":{"name":"adasko","email":"adaskothebeast@gmail.com"},"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"_npmVersion":"11.16.0","description":"Schema-guided JSON hydration and serialization for Typewriter-generated contracts.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"@adaskothebeast/typewriter-schema":"10.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"^14.0.1","decimal.js":"^10.6.0","@js-temporal/polyfill":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/typewriter-runtime_10.0.0_1785247049708_0.45726339608130284","host":"s3://npm-registry-packages-npm-production"}},"10.0.1":{"name":"@adaskothebeast/typewriter-runtime","version":"10.0.1","keywords":["typewriter","typescript","hydration","serialization","json"],"author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"license":"MIT","_id":"@adaskothebeast/typewriter-runtime@10.0.1","maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors#readme","bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"dist":{"shasum":"6003c5a129aff506b200a71a05e2f3ae145badae","tarball":"https://registry.npmjs.org/@adaskothebeast/typewriter-runtime/-/typewriter-runtime-10.0.1.tgz","fileCount":11,"integrity":"sha512-TDBboti+jP3JRVRSq6Ar8P6KjgP+rfjCoaiXTOKUr+iZAIBg0xGYhyfto7z4MWEyJxG+pXq6lE+SIQFgcNg+eA==","signatures":[{"sig":"MEYCIQDki0NYkxzz5EjQyAsC27NNrHHVQ1aj9HngVMa9BUl7XgIhAPez03vBqjq9GmcBFU2dkeREO5rL/wV+H5m/XIgkSq+u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adaskothebeast%2ftypewriter-runtime@10.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":62232},"main":"./index.esm.js","type":"module","types":"./index.d.ts","module":"./index.esm.js","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f868859b-22a8-485f-b44e-fe4715c4061b"}},"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"_npmVersion":"11.16.0","description":"Schema-guided JSON hydration and serialization for Typewriter-generated contracts.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"@adaskothebeast/typewriter-schema":"^10.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"^14.0.1","decimal.js":"^10.6.0","@js-temporal/polyfill":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/typewriter-runtime_10.0.1_1785250683182_0.4957480150550342","host":"s3://npm-registry-packages-npm-production"}},"10.0.2":{"name":"@adaskothebeast/typewriter-runtime","version":"10.0.2","keywords":["typewriter","typescript","hydration","serialization","json"],"author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"license":"MIT","_id":"@adaskothebeast/typewriter-runtime@10.0.2","maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors#readme","bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"dist":{"shasum":"175fbc1d75a06e8807b354e252a16d90603d09d6","tarball":"https://registry.npmjs.org/@adaskothebeast/typewriter-runtime/-/typewriter-runtime-10.0.2.tgz","fileCount":11,"integrity":"sha512-ovsO90ZrSb6v54jgYwMOKuaIbz4Tg0TQeEhwCzdrB8w2DgenO3yx9TJJPCL4DoeUP0pa1/Ebe7We74ZXkChTzg==","signatures":[{"sig":"MEYCIQCNWh7ntMYlXeYQ+NFCB3ky87l+kWpjyk/4riM46sszuQIhAOjy87YPgDZYiTYpuET/PuGzZbGjfdq4hkJ9EW0uCwVm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adaskothebeast%2ftypewriter-runtime@10.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":62232},"main":"./index.esm.js","type":"module","types":"./index.d.ts","module":"./index.esm.js","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f868859b-22a8-485f-b44e-fe4715c4061b"}},"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"_npmVersion":"11.16.0","description":"Schema-guided JSON hydration and serialization for Typewriter-generated contracts.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"@adaskothebeast/typewriter-schema":"^10.0.0"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"^14.0.1","decimal.js":"^10.6.0","@js-temporal/polyfill":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/typewriter-runtime_10.0.2_1785252309846_0.20903961661980985","host":"s3://npm-registry-packages-npm-production"}},"11.0.0":{"name":"@adaskothebeast/typewriter-runtime","version":"11.0.0","keywords":["typewriter","typescript","hydration","serialization","json"],"author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"license":"MIT","_id":"@adaskothebeast/typewriter-runtime@11.0.0","maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors/tree/main/libs/typewriter-runtime#readme","bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"dist":{"shasum":"c691427acb9788dd77f8542dbdbb4d3593d0e32a","tarball":"https://registry.npmjs.org/@adaskothebeast/typewriter-runtime/-/typewriter-runtime-11.0.0.tgz","fileCount":27,"integrity":"sha512-xLTbQmr7/tEVnNbfo36OCOA/6Sr9gZsESEs+MNXiQcm5B64fLM1BF9h6vNTO+4MoXJ5Z66kPStZHiP6euvz2KA==","signatures":[{"sig":"MEQCIAWzfUnaDZessrmcTcpt0N7Ui0+0LIKDImLKfNXXXKsqAiAKTWkSCV6yu4RaWwXERW9B9NK7JofvzNg92MaSptvTaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD87XsFYGaPd3oTrnFjJJo2H/UWNClwI+/6yXPsxKjyhgIhAJVyGAfPZ+jR7iYYTwFxTJECrhyxD9FFaCsULE3ArPJK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adaskothebeast%2ftypewriter-runtime@11.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":131153},"main":"./index.cjs","type":"module","types":"./index.d.ts","module":"./index.esm.js","engines":{"node":">=22.12"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./index.esm.js"},"require":{"types":"./index.d.cts","default":"./index.cjs"}},"./package.json":"./package.json"},"gitHead":"23dc193eb4d8d834b51de51e1900225a26c143ff","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f868859b-22a8-485f-b44e-fe4715c4061b"}},"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"_npmVersion":"11.19.0","description":"Schema-guided JSON hydration and serialization for Typewriter-generated TypeScript contracts.","directories":{},"sideEffects":false,"_nodeVersion":"26.10.0","dependencies":{"@adaskothebeast/typewriter-schema":"^11.0.0","@adaskothebeast/hierarchical-convert-core":"^11.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"^14.0.1","decimal.js":"^10.6.0","@js-temporal/polyfill":"^0.5.1"},"_npmOperationalInternal":{"tmp":"tmp/typewriter-runtime_11.0.0_1790551319843_0.6933129391183344","host":"s3://npm-registry-packages-npm-production"}},"11.0.1":{"_id":"@adaskothebeast/typewriter-runtime@11.0.1","bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"dist":{"shasum":"782b410cf028cd001e6d5401ae4555139f0814a0","tarball":"https://registry.npmjs.org/@adaskothebeast/typewriter-runtime/-/typewriter-runtime-11.0.1.tgz","fileCount":27,"integrity":"sha512-rmr1XEO7dUDQcjLNxmX7yMydyRnhmGKI4/ATmw1iJKCVxAkYD3RyAtOxhS4rtSXLcK2kOXI7j7E41NV78wAUgw==","signatures":[{"sig":"MEUCIBFodh0PATBJfzeYaZwBQbOH1ftNUtuex6mOagx8qAw6AiEAnJjVdRrUG/O2cpLRdHFEAj8bolLanDsfeP0nEGLsI7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD70CN3GJqtzLoIKIVeK2vAgqs6lkk/Z8/T8GiViHxLswIgeduakG7N4EpqIe9AnK5H8dXGBceJaNseUjGZqvi/Wzk="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adaskothebeast%2ftypewriter-runtime@11.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":131153},"main":"./index.cjs","name":"@adaskothebeast/typewriter-runtime","type":"module","types":"./index.d.ts","author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"module":"./index.esm.js","engines":{"node":">=22.12"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./index.esm.js"},"require":{"types":"./index.d.cts","default":"./index.cjs"}},"./package.json":"./package.json"},"gitHead":"f9edf319c5e23bf1a17f5ec4eb8dac0008b9fd26","license":"MIT","version":"11.0.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"f868859b-22a8-485f-b44e-fe4715c4061b"}},"homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors/tree/main/libs/typewriter-runtime#readme","keywords":["typewriter","typescript","hydration","serialization","json"],"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"_npmVersion":"11.19.0","description":"Schema-guided JSON hydration and serialization for Typewriter-generated TypeScript contracts.","directories":{},"maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"sideEffects":false,"_nodeVersion":"26.10.0","dependencies":{"@adaskothebeast/typewriter-schema":"^11.0.1","@adaskothebeast/hierarchical-convert-core":"^11.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"uuid":"^14.0.1","decimal.js":"^10.6.0","@js-temporal/polyfill":"^0.5.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/typewriter-runtime_11.0.1_1790749932130_0.21970534677746278"}}},"time":{"created":"2026-07-28T13:57:29.610Z","modified":"2026-09-30T06:32:12.665Z","10.0.0":"2026-07-28T13:57:29.901Z","10.0.1":"2026-07-28T14:58:03.322Z","10.0.2":"2026-07-28T15:25:09.993Z","11.0.0":"2026-09-27T23:21:59.933Z","11.0.1":"2026-09-30T06:32:12.232Z"},"bugs":{"url":"https://github.com/AdaskoTheBeAsT/date-interceptors/issues"},"author":{"url":"https://github.com/adaskothebeast","name":"Adam Pluciński","email":"adaskothebeast@gmail.com"},"license":"MIT","homepage":"https://github.com/AdaskoTheBeAsT/date-interceptors/tree/main/libs/typewriter-runtime#readme","keywords":["typewriter","typescript","hydration","serialization","json"],"repository":{"url":"git+https://github.com/AdaskoTheBeAsT/date-interceptors.git","type":"git","directory":"libs/typewriter-runtime"},"description":"Schema-guided JSON hydration and serialization for Typewriter-generated TypeScript contracts.","maintainers":[{"name":"adasko","email":"adaskothebeast@gmail.com"}],"readme":"# Typewriter Runtime\n\nSchema-guided JSON hydration and serialization for Typewriter-generated contracts.\n\n```bash\nnpm install @adaskothebeast/typewriter-runtime @adaskothebeast/typewriter-schema\n```\n\n```ts\nimport { serializeJson, transformJson } from '@adaskothebeast/typewriter-runtime';\n\nconst invoice = transformJson(responseJson, InvoiceSchema, apiTypeRegistry);\nconst requestJson = serializeJson(invoice, InvoiceSchema, apiTypeRegistry);\n```\n\n`transformJson` mutates object and array containers while replacing schema-defined wire names with their model property names. `serializeJson` creates a new wire-value graph and maps model names back to serialized names.\n\nBoth operations use tolerant mode by default. Enable path-aware errors when contracts must match exactly:\n\n```ts\ntransformJson(value, InvoiceSchema, apiTypeRegistry, { strict: true });\nserializeJson(value, InvoiceSchema, apiTypeRegistry, { strict: true });\n```\n\nCustom schema kinds can be supplied through `customTransformers` and `customSerializers`.\n\nShared input objects transformed with the same schema reuse the replacement result.\nValid cyclic data is preserved. Circular schema references that do not descend into\ndata raise path-aware errors in strict mode and preserve the value in tolerant mode.\n\nStrict object conversion validates missing properties as `undefined`. Use `schema.optional(...)` for absent fields; nullable fields still require a value. Renames are staged so overlapping model/wire names round trip without data loss.\n","readmeFilename":"README.md"}