{"_id":"@bufbuild/protoc-gen-knit-ts","_rev":"26-1cd5bfddb9284002ef742f3db517393f","name":"@bufbuild/protoc-gen-knit-ts","dist-tags":{"latest":"0.0.7"},"versions":{"0.0.1":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.1","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.1","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"dimitropoulos-bufbuild","email":"dmitropoulos@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"5cc19d55604f92b207608bd9ddbc70b925387f54","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.1.tgz","fileCount":13,"integrity":"sha512-fWZIum0dQxd3iL65I+rfDcWTMw0TPU433oOoPH69+E53gLGtApFYsUa6p02W9OiiGMNKQmWQOppdUzniv1nulw==","signatures":[{"sig":"MEUCIQDZ8l4vgAI//W4v88aYJX8tEXHorWgueZFAxPU4Ya3iFwIgOox3/vA3TbG7nkudSjM70KmAJ5IHAB1oK2ui7lSHBkc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkU8kbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBcQ/+LUd/GpLiQw3uO+KVpNUvTU8bMY8gYcAMUnV6hW6djI8ZweVn\r\nIyMI8x4GIdznvODTXQz1m7q+HvVoql/bXuPyb+rt686ZMFcncUxv3Ya1F1dv\r\nzdtutAuv39VFWQ/kd5T6AFh76Q8sQbhWQmEKt9uyph5O2jR+xAFIID9cNNsB\r\nII+3d4Tv+tp+C8/S3IM0S6v0radRmzA5mrE0tOoF0ZEYLwV82JmuzileQytx\r\n7h4fmewj3c3EbOFVYfk+3dJnt5tHrx41YXd18YQBrJ1dTRSoA2Qi54Zdcz6Y\r\n2D4WUQsTRwkhh8KKpd4NFPiYztPUh6Vh1zZgnk2tqC945bpMn8SFPyYKw7jj\r\nDtIivJfknk1xBUMeI8dx5vgK0dwJ+5V8NutWk62rJ8zc3POqZBUF7P8PaFXp\r\ni8oSteyhfZfIEu39f3SDEKCidPiiDwqcWZzAEtXLi6Qj2bDMZH7yPZGsCbP/\r\ncknvAkNx33mrmkPsIK3b9X6nqooIrfTV41bWHQ3CkYEUy0tpwxeZ9wmTT0tl\r\nhZyMX7xb69wFP0xxzVsq6/d/t5/iLz/OfZ2OJ9xxb93I9uAur5VPbwUAcL8b\r\nw5NK4Sa3JRwAchD4b639WLHLKvfuhnJwfVKJneQRx5GVIFn58tOtdjioR4/Q\r\nnyEmd5tHKkaRi6UZyUjeycAbt6NxIr2XyDo=\r\n=trr0\r\n-----END PGP SIGNATURE-----\r\n"},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.1.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/da3dc614a1b12396b42953f953cbedc9/bufbuild-protoc-gen-knit-ts-0.0.1.tgz","_integrity":"sha512-fWZIum0dQxd3iL65I+rfDcWTMw0TPU433oOoPH69+E53gLGtApFYsUa6p02W9OiiGMNKQmWQOppdUzniv1nulw==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"9.4.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"19.6.0","dependencies":{"@bufbuild/protoplugin":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.17.18","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.2.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.2.0-20230504134654-ed776732e526.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.2.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.1_1683212571407_0.8314551257507079","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.2","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.2","maintainers":[{"name":"mdolgos","email":"mdolgos@buf.build"},{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"dimitropoulos-bufbuild","email":"dmitropoulos@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"84c554b236a2484b3b756ae724ea80454461a8d8","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.2.tgz","fileCount":13,"integrity":"sha512-q2ILD6HM/Pu1tgSAYBQiXjVzT06UyNcZgxmL/PdIUnPJHI3a9dZK4Q8bKHSdEXBnxqMgJa87oDkxapI7Y6nzmA==","signatures":[{"sig":"MEUCIBVgIsnzKVJKFWo18US0hC9lAN8S6LzsWmw4X5apexKoAiEAl0jKA8WNNomFob7AHwag06ErdfXHS9+0leq4mXpgkZg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54578},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.2.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/af560ff03d711d6b745944402770e7ec/bufbuild-protoc-gen-knit-ts-0.0.2.tgz","_integrity":"sha512-q2ILD6HM/Pu1tgSAYBQiXjVzT06UyNcZgxmL/PdIUnPJHI3a9dZK4Q8bKHSdEXBnxqMgJa87oDkxapI7Y6nzmA==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"9.4.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"19.6.0","dependencies":{"@bufbuild/protoplugin":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.17.18","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.2.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.2.0-20230504134654-ed776732e526.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.2.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.2_1683564974352_0.7068694336716961","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.3","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.3","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"904b1784f59e9ada2c6b53e283e7c8d40e0ac3cf","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.3.tgz","fileCount":8,"integrity":"sha512-vnDAMBudN8cGpkIXd/7pVWvP0tQa6EKgEhsBPR470+cKjZrFm94+2ytbgMlYbtL2/49vEivbPZdPLkMc73x5TQ==","signatures":[{"sig":"MEQCIFEd0mO5yDHwg3FnYvrE2iwwmbFbvwoSes3woRYLyZVXAiAaftVno9j9UY39xQf8fXLVbKOazuQXzpTT50JqDQk2nw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53126},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.3.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/c9aa6bc7e80269de84a165a1927e0b16/bufbuild-protoc-gen-knit-ts-0.0.3.tgz","_integrity":"sha512-vnDAMBudN8cGpkIXd/7pVWvP0tQa6EKgEhsBPR470+cKjZrFm94+2ytbgMlYbtL2/49vEivbPZdPLkMc73x5TQ==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"10.1.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"20.7.0","dependencies":{"@bufbuild/protoplugin":"^1.3.1"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.19.4","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.3.1","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.3.1-20230504140941-3dc602456973.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.3.1"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.3_1696568936300_0.8555825539513682","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.4","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.4","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"cb94e99b00329b161d4f3d213c5458c812d42498","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.4.tgz","fileCount":13,"integrity":"sha512-a019Pkcgwu8AdJY8ISZqO0QZpsoHr88udD+qadqii4qjqyPgqdXT/Udb/RfoK3Vc4QNqgvzG9jzoDGcvdoyr5w==","signatures":[{"sig":"MEUCIHNAQLP0SVs7GGUjZHdFEwBPkYj9iRpQiyQNQUgWKqFvAiEA3K4yL7ZQTFPjFCbh/QB5E4F+YS75i9HHgaa1I0RFJLU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54590},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.4.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/09e5a2f8aa8ed0c079f99bdaa6bb7194/bufbuild-protoc-gen-knit-ts-0.0.4.tgz","_integrity":"sha512-a019Pkcgwu8AdJY8ISZqO0QZpsoHr88udD+qadqii4qjqyPgqdXT/Udb/RfoK3Vc4QNqgvzG9jzoDGcvdoyr5w==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"10.1.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"20.7.0","dependencies":{"@bufbuild/protoplugin":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.19.8","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.5.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.3.1-20230504140941-3dc602456973.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.5.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.4_1704896557194_0.5851951834298657","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.5","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.5","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"79fd8b2e153efd4b9a23f706f841edc4279a1d5c","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.5.tgz","fileCount":13,"integrity":"sha512-VD77wGmxb2Yj1HQcmIukTszBQJJf42p8QE15vcMW5UxUllA5UAe1IFp02sJAYn5m/M2Q7p9IohGrQhb7istMWA==","signatures":[{"sig":"MEUCIFz+uUbXRSHWLN6WqaFW0qDRzXzhvoeavuRJlOEfcqfJAiEA5+4/bwyGxgq32oOYvbbXC1bLEHFhCceMIT5SwBB9An4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54610},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.5.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/ab036b56017ad4a09f9591289139d43a/bufbuild-protoc-gen-knit-ts-0.0.5.tgz","_integrity":"sha512-VD77wGmxb2Yj1HQcmIukTszBQJJf42p8QE15vcMW5UxUllA5UAe1IFp02sJAYn5m/M2Q7p9IohGrQhb7istMWA==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"10.1.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"20.7.0","dependencies":{"@bufbuild/protoplugin":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.19.8","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.5.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.3.1-20230504140941-3dc602456973.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.5.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.5_1706553998420_0.46225478422042077","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.6","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.6","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"daa6c9601055545223477043417495233c4ef129","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.6.tgz","fileCount":13,"integrity":"sha512-UP9Iqa1a8WVGhK8sYloRLW7tZYYh5UBzF9qFAsJUg2V05ZH/S8THL0PeJQm5wtC2YhWzz7nYjxQNjNZSoIYLOQ==","signatures":[{"sig":"MEQCICHVKAMFpGECI9AQZb90QB+s+MIWOTpVe4u/4lUdkcE7AiAMXzmX9VSwZVNuSAZ3aIMK4jbPoSYxnvtPwq/PL1or/w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54610},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.6.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/ea135b0e9f141daeb6e36c21e2bcedad/bufbuild-protoc-gen-knit-ts-0.0.6.tgz","_integrity":"sha512-UP9Iqa1a8WVGhK8sYloRLW7tZYYh5UBzF9qFAsJUg2V05ZH/S8THL0PeJQm5wtC2YhWzz7nYjxQNjNZSoIYLOQ==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"10.1.0","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"20.7.0","dependencies":{"@bufbuild/protoplugin":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.19.8","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.5.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.3.1-20230504140941-3dc602456973.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.5.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.6_1707153730948_0.31391119146214885","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"@bufbuild/protoc-gen-knit-ts","version":"0.0.7","license":"Apache-2.0","_id":"@bufbuild/protoc-gen-knit-ts@0.0.7","maintainers":[{"name":"srikrsna-buf","email":"skrishna@buf.build"},{"name":"cmahony","email":"cmahony@buf.build"},{"name":"gwong-buf","email":"gwong@buf.build"},{"name":"dfyock-buf","email":"dfyock@buf.build"},{"name":"jdailey_buf","email":"jdailey@buf.build"},{"name":"sayers-buf","email":"sayers@buf.build"},{"name":"psachs-buf","email":"psachs@buf.build"},{"name":"bufbot","email":"bot@buf.build"},{"name":"tstamm-buf","email":"tstamm@buf.build"},{"name":"bufdev","email":"pedge@buf.build"}],"homepage":"https://github.com/bufbuild/knit-ts#readme","bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"bin":{"protoc-gen-knit-ts":"bin/protoc-gen-knit-ts"},"dist":{"shasum":"3bfc7cec05a87ccfdb668d67048315b0ea677dbf","tarball":"https://registry.npmjs.org/@bufbuild/protoc-gen-knit-ts/-/protoc-gen-knit-ts-0.0.7.tgz","fileCount":13,"integrity":"sha512-zLD3E4UZ+ibmAdBBiFboz79i+2EU6FETl46yWW6Uh/7iF7bD4868D37lyTY+1NKb34i5ZMTekLL+z8iAqeYPiQ==","signatures":[{"sig":"MEYCIQDWCDt5IqPb4RuP5odwFVSBoX1MybQ570XCBCiMzp1pzwIhALp0j/LvsLCGplhVdme9oMhNACiiN2l52fJ5zfkPf3J1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54626},"_from":"file:bufbuild-protoc-gen-knit-ts-0.0.7.tgz","engines":{"node":">=18"},"scripts":{"lint":"eslint .","build":"esbuild src/index.ts --bundle --platform=node --target=node18 --outdir=./dist/cjs --external:@bufbuild/protoplugin --external:@bufbuild/protobuf && echo >./dist/cjs/package.json '{\"type\":\"commonjs\"}'","clean":"rm -rf ./dist/cjs/*"},"_npmUser":{"name":"srikrsna-buf","email":"skrishna@buf.build"},"_resolved":"/private/var/folders/00/52tktkfn39lgh16hkwshtm140000gn/T/137e32ac61604e91290f22acfb7993ff/bufbuild-protoc-gen-knit-ts-0.0.7.tgz","_integrity":"sha512-zLD3E4UZ+ibmAdBBiFboz79i+2EU6FETl46yWW6Uh/7iF7bD4868D37lyTY+1NKb34i5ZMTekLL+z8iAqeYPiQ==","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"_npmVersion":"10.2.4","description":"TypeScript code generator for Knit","directories":{},"_nodeVersion":"21.6.1","dependencies":{"@bufbuild/protoplugin":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.19.8","tsconfig":"0.0.0","@bufbuild/protobuf":"^1.5.0","eslint-config-custom":"0.0.0","@buf/bufbuild_knit.bufbuild_es":"1.3.1-20230504140941-3dc602456973.1"},"preferUnplugged":true,"peerDependencies":{"@bufbuild/protobuf":"^1.5.0"},"peerDependenciesMeta":{"@bufbuild/protobuf":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/protoc-gen-knit-ts_0.0.7_1709311206938_0.5439119497315408","host":"s3://npm-registry-packages"}}},"time":{"created":"2023-05-04T15:02:51.331Z","modified":"2026-09-16T06:38:45.426Z","0.0.1":"2023-05-04T15:02:51.716Z","0.0.2":"2023-05-08T16:56:14.604Z","0.0.3":"2023-10-06T05:08:56.491Z","0.0.4":"2024-01-10T14:22:37.430Z","0.0.5":"2024-01-29T18:46:38.614Z","0.0.6":"2024-02-05T17:22:11.103Z","0.0.7":"2024-03-01T16:40:07.132Z"},"bugs":{"url":"https://github.com/bufbuild/knit-ts/issues"},"license":"Apache-2.0","homepage":"https://github.com/bufbuild/knit-ts#readme","repository":{"url":"git+https://github.com/bufbuild/knit-ts.git","type":"git","directory":"packages/protoc-gen-knit-ts"},"description":"TypeScript code generator for Knit","maintainers":[{"email":"pedge@buf.build","name":"bufdev"},{"email":"tstamm@buf.build","name":"tstamm-buf"},{"email":"bot@buf.build","name":"bufbot"},{"email":"jdailey@buf.build","name":"jdailey_buf"},{"email":"dkeung@buf.build","name":"doriakeung"},{"email":"cmahony@buf.build","name":"cmahony"},{"email":"kmcdonald@buf.build","name":"kmcdonald-buf"}],"readme":"# @bufbuild/protoc-gen-knit-ts\n\nThe code generator for Knit. Knit brings GraphQL like capabilities to RPCs. It is built on top of [Protobuf](protobuf.com) and [Connect](connect.build). This packages houses a protoc plugin that generates TypeScript types for Knit clients.\n\nLearn more about Knit at [github.com/bufbuild/knit](github.com/bufbuild/knit).\n\n## How to generate\n\nWe recommend [`buf`](https://github.com/bufbuild/buf) as a protocol buffer compiler, but\n[`protoc`](https://github.com/protocolbuffers/protobuf/releases) works as well.\n\nTo install `buf`, the plugin, and the runtime, run:\n\n```shell\nnpm install --save-dev @bufbuild/buf @bufbuild/protoc-gen-knit-ts\nnpm install @bufbuild/knit\n```\n\n### Generate with `buf`\n\n#### Remote packages\n\nIf you push your modules to [BSR](https://buf.build/docs/bsr), you can use remote packages to get the schema.\nFor example for the star wars demo, you can run the following command to get the schema:\n\n```sh\nnpm config set @buf:registry  https://buf.build/gen/npm/v1/\nnpm install @buf/bufbuild_knit-demo.bufbuild_knit-es@latest\n```\n\n#### Remote plugins\n\nIf you use `buf` you can use remote plugins to generate the schema, for example:\n\n```yaml\n# Learn more: https://docs.buf.build/configuration/v1/buf-gen-yaml\nversion: v1\nplugins:\n  # This will run the generator on the BSR and write output to src/gen\n  - plugin: buf.build/bufbuild/knit-ts\n    out: src/gen\n```\n\n#### Local generation\n\nTo compile with [`buf`](https://github.com/bufbuild/buf), add a file `buf.gen.yaml` with\nthe following content:\n\n```yaml\n# Learn more: https://docs.buf.build/configuration/v1/buf-gen-yaml\nversion: v1\nplugins:\n  # This will invoke protoc-gen-knit-ts and write output to src/gen\n  - name: knit-ts\n    out: src/gen\n    opt: target=ts # Optional, defaults to dts\n```\n\nNow run `npx buf generate` to generate Knit schema types in TypeScript from `.proto` files.\n\n### Generate with `protoc`\n\nTo compile with `protoc`:\n\n```shell\nprotoc -I . --plugin ./node_modules/.bin/protoc-gen-knit-ts --knit-es_out src/gen --knit-es_opt target=ts example.proto\n```\n\n## Plugin Options\n\n### `target`\n\nThis option controls whether the plugin generates TypeScript or TypeScript declaration files.\n\nPossible values:\n\n- `target=ts` - generates a `_knit.ts` file for every `.proto` file.\n- `target=dts` - generates a `_knit.d.ts` file for every `.proto` file.\n\nBy default, the plugin generates `.d.ts` files. Since the plugin only generates types, and no JavaScript, it doesn't need to generate `.js` files.\n\n### `import_extension=.js`\n\nBy default, the generated files use a `.js` file extensions in import paths.\n\nThis is unintuitive, but necessary for [ECMAScript modules in Node.js](https://www.typescriptlang.org/docs/handbook/esm-node.html).\nUnfortunately, not all bundlers and tools have caught up yet, and Deno\nrequires `.ts`. With this plugin option, you can replace `.js` extensions\nin import paths with the given value. For example, set\n\n- `import_extension=none` to remove the `.js` extension\n- `import_extension=.ts` to replace the `.js` extension with `.ts`\n\n### `keep_empty_files=true`\n\nBy default, empty files are omitted from the plugin output. This option disables pruning of\nempty files, to allow for smooth interop with Bazel and similar\ntooling that requires all output files to be declared ahead of time.\nUnless you use Bazel, it is very unlikely that you need this option.\n\n## What is generated\n\nThe plugin only generates TypeScript types that help in constructing query, parameter and result types.\nIt doesn't generate _any_ JavaScript whatsoever. The generated types serve as a schema for the `Query`,\n`Parameter`, and `Mask` generic types used by the Knit client.\n\nAs a result we get the best bundle size that is humanly possible: **`0 Kb`**.\n\n### Files\n\nFor every protobuf source file, we generate a corresponding `.ts`, or `.d.ts` file,\nbut add a `_knit` suffix to the name. For example, for the protobuf file `foo/bar.proto`,\nwe generate `foo/bar_knit.ts`.\n\n### Services\n\nFor the following service declaration:\n\n```protobuf\npackage example.v1;\n\nservice ExampleService {\n    rpc GetExample(GetExampleRequest) returns (GetExampleResponse) {\n        option idempotency_level = NO_SIDE_EFFECTS;\n    }\n    rpc CreateExample(CreateExampleRequest) returns (CreateExampleResponse);\n    rpc SubscribeExample(SubscribeExampleRequest) returns (stream SubscribeExampleResponse);\n}\n```\n\nwe generate a TypeScript type called `ExampleService`:\n\n```ts\nexport type ExampleService = {\n  // Fully qualified service name: `{package}.{service}`\n  \"example.v1.ExampleService\": {\n    fetch: {\n      getExample: {\n        $: GetExampleRequest;\n        value: GetExampleResponse;\n      };\n    };\n    do: {\n      createExample: {\n        $: CreateExampleRequest;\n        value: CreateExampleResponse;\n      };\n    };\n    listen: {\n      subscribeExample: {\n        $: SubscribeExampleRequest;\n        value: SubscribeExampleResponse;\n      };\n    };\n  };\n};\n```\n\nThis can be used with a Knit client:\n\n```ts\nconst client = createClient<ExampleService>(...);\n\nclient.fetch({\n    \"example.v1.ExampleService\": {\n        getExample: {\n            $: {...}\n        }\n    }\n})\n```\n\nOr multiple of them can be combined:\n\n```ts\ntype Schema  = FooService & BarService;\n\nconst client = createClient<Schema>(...);\n```\n\nAll unary methods with `idempotency_level` set to `NO_SIDE_EFFECTS` will be under `fetch`. Remaining unary methods will\nbe under `do`. Server streaming methods will be under `listen`. They correspond to `fetch`, `do`, and `listen` methods of\nthe client. Client streaming and bidirectional streaming methods are not supported.\n\n[//]: # \"<!-->TODO: Add links to runtime docs for the client methods</-->\"\n\nThe `$` represents the request and the `value` denotes the response. Note that method names are always `lowerCamelCase`,\neven if the corresponding protobuf method uses `UpperCamelCase`. While there is no official style for ECMAScript, most style guides\n([AirBnB](https://github.com/airbnb/javascript#naming--camelCase),\n[MDN](https://developer.mozilla.org/en-US/docs/MDN/Guidelines/Code_guidelines/JavaScript#variable_naming),\n[Google](https://google.github.io/styleguide/jsguide.html#naming-non-constant-field-names)) as well as\n[Node.js APIs](https://nodejs.org/dist/latest-v16.x/docs/api/child_process.html#child_processforkmodulepath-args-options) and\n[browser APIs](https://fetch.spec.whatwg.org/#request-class) use `lowerCamelCase`, and so do we.\n\n### Messages\n\nFor the following message declaration:\n\n```protobuf\nmessage Example {\n    string id = 1;\n}\n```\n\nwe generate a TypeScript interface called `Example`:\n\n```ts\nexport interface Example {\n  id: string;\n  name: string;\n}\n```\n\nWe use a TypeScript `interface` and not a `type` definition because interfaces support\n[declaration merging](https://www.typescriptlang.org/docs/handbook/declaration-merging.html)\nwhich is used to merge [relations](#relations) into the message's interface.\n\nNote that some names cannot be used as interface names and will be escaped by adding the suffix `$`.\nFor example, a protobuf message `break` will become a class `break$`.\n\nGenerated interfaces can be used as a `Query`, `Parameter` and can be used with `Mask` in combination with\na `Query` to get the return type:\n\n[//]: # \"TODO: Add links to runtime docs\"\n\n```ts\nconst exampleQuery = { id: {} } satisfies Query<Example>;\n\ntype ExampleResult = Mask<typeof exampleQuery, Example>;\n//   ^?   { id: string }\n```\n\n### Field names\n\nFor each field declared in a message, we generate a property on the class. Note that property\nnames are always `lowerCamelCase`, even if the corresponding protobuf field uses `snake_case`.\nWhile there is no official style for ECMAScript, most style guides\n([AirBnB](https://github.com/airbnb/javascript#naming--camelCase),\n[MDN](https://developer.mozilla.org/en-US/docs/MDN/Guidelines/Code_guidelines/JavaScript#variable_naming),\n[Google](https://google.github.io/styleguide/jsguide.html#naming-non-constant-field-names)) as well as\n[Node.js APIs](https://nodejs.org/dist/latest-v16.x/docs/api/child_process.html#child_processforkmodulepath-args-options) and\n[browser APIs](https://fetch.spec.whatwg.org/#request-class) use `lowerCamelCase`, and so do we.\n\nNote that some names cannot be used as class properties and will be escaped by adding the suffix `$`.\nFor example, a protobuf field `constructor` will become a class property `constructor$`.\n\n### Scalar fields\n\nFor these field definitions:\n\n```protobuf\nstring foo = 1;\noptional string bar = 2;\n```\n\nwe will generate the following properties:\n\n```ts\nfoo: string;\nbar?: string;\n```\n\nNote that all scalar fields have an intrinsic default value in proto3 syntax, unless they are marked\nas `optional`. Protobuf types map to ECMAScript types as follows:\n\n| protobuf type | ECMAScript type | default value       |\n| ------------- | --------------- | ------------------- |\n| double        | number          | `0`                 |\n| float         | number          | `0`                 |\n| int64         | bigint          | `0n`                |\n| uint64        | bigint          | `0n`                |\n| int32         | number          | `0`                 |\n| fixed64       | bigint          | `0n`                |\n| fixed32       | number          | `0`                 |\n| bool          | boolean         | `false`             |\n| string        | string          | `\"\"`                |\n| bytes         | Uint8Array      | `new Uint8Array(0)` |\n| uint32        | number          | `0`                 |\n| sfixed32      | number          | `0`                 |\n| sfixed64      | bigint          | `0n`                |\n| sint32        | number          | `0`                 |\n| sint64        | bigint          | `0n`                |\n\n### Message fields\n\nFor the following message field declaration:\n\n```protobuf\nmessage Example {\n  Example field = 1;\n}\n```\n\nwe generate the following property:\n\n```ts\nfield?: Example;\n```\n\nNote that we special case the well-known wrapper types: If a message uses `google.protobuf.BoolValue` for example, we\nautomatically \"unbox\" the field to an optional primitive:\n\n```ts\n/**\n * @generated from field: google.protobuf.BoolValue bool_value_field = 1;\n */\nboolValueField?: boolean;\n```\n\n#### Custom `json_name`\n\nProtobuf supports customizing json representation of a message field via the `json_name` field option. If this is set the wire\nrepresentation of the field's name should match the option. To support this feature, the schema is generated with a special type.\n\nFor the following customized field:\n\n```protobuf\nmessage Example {\n    string field = 1 [json_name = \"someOtherName\"];\n}\n```\n\nwe generate the following type:\n\n```ts\nexport interface Example {\n  field: {\n    \"@alias\": \"someOtherName\";\n    value: string;\n  };\n}\n```\n\nThe `Query` and the result types acquired from `Mask` are unchanged. The `Parameter` types require a special type:\n\n```ts\nconst param = {\n  field: alias(\"someOtherName\", \"value\"),\n} satisfies Parameter<Example>;\n```\n\nNote that the type of the field can only be satisfied by the exact `json_name` value and this is like a small boilerplate\nthat needs to be written for such fields. We suspect only a handful of APIs use this option. We are open to exploring other options\nif this approach proves to be too cumbersome or if the option is widely used.\n\n### Relations\n\nFor the following Knit relation definition:\n\n```protobuf\npackage example.relations.v1;\n\nimport \"buf/knit/options.proto\";\n\nservice ExampleRelationsService {\n    rpc GetExampleRelation(GetExampleRelationRequest) returns (ExampleRelation) {\n        option (buf.knit.relation).name = \"relation_field\";\n        option idempotency_level = NO_SIDE_EFFECTS;\n    }\n}\n\nmessage GetExampleRelationRequest {\n    repeated example.v1.Example bases = 1;\n}\n\nmessage ExampleRelationResponse {\n    repeated ExampleResult values = 1;\n    message ExampleResult {\n        string relation_field = 1;\n    }\n}\n```\n\nwe generate the following TypeScript:\n\n```ts\ndeclare module \"../../../example/v1/example_knit.js\" {\n  export interface Example {\n    relationField: string;\n  }\n}\n```\n\nThis uses a technique called [declaration merging](https://www.typescriptlang.org/docs/handbook/declaration-merging.html) to\nmerge relation fields into the base interface. Note this only happens if the relation field types are included using a\nblank import: `import './gen/example/relations/v1/example_relations_knit.js'`\n\n### Repeated fields\n\nAll repeated fields are represented with an ECMAScript Array. For example, the\nfollowing field declaration:\n\n```protobuf\nrepeated string field = 1;\n```\n\nis generated as:\n\n```ts\nfield: string[];\n```\n\nNote that all repeated fields will have an empty array as a default value.\n\n### Map fields\n\nFor the following map field declaration:\n\n```protobuf\nmessage Example {\n    map<string, int32> field = 1;\n}\n```\n\nwe generate the property:\n\n```ts\nexport interface Example {\n  field: { \"@map\": { [key: string]: number } };\n}\n```\n\nThe `@map` key is used to identify the field as a Protobuf map type, the `Query`, `Parameter` and `Mask` fields\nstrip the `@map` property and apply the relevant type:\n\n- `Query` uses the query type of the map value type.\n- `Parameter` uses the map type as is.\n- `Mask` uses map type with the query applied to the map value type.\n\n```ts\nconst query = {\n  field: {}, // Treated as a scalar field since the map value is an int32\n} satisfies Query<Example>;\n\nconst parameter = {\n  field: { key: 1 },\n} satisfies Parameter<Example>;\n\ntype Result = Mask<typeof query, Example>;\n//   ^?  { field: { [k: string]: number } }\n```\n\nNote that all map fields will have an empty object as a default value.\n\nWhile it is not a perfectly clear-cut case, we chose to represent map fields\nas plain objects instead of [ECMAScript map objects](https://tc39.es/ecma262/multipage/keyed-collections.html#sec-map-objects).\nWhile `Map` has better behavior around keys, they do not have a literal\nrepresentation, do not support the spread operator and type narrowing in\nTypeScript.\n\n### Oneof groups\n\nFor the following oneof declaration:\n\n```protobuf\nmessage Example {\n  oneof result {\n    int32 value = 1;\n    string error = 2;\n  }\n}\n```\n\nwe generate the following property:\n\n```ts\nexport interface Example {\n  result?: {\n    \"@oneof\": {\n      value: number;\n      error: string;\n    };\n  };\n}\n```\n\nThe `@oneof` key is used to identify the field as a Protobuf map type, the `Query`, `Parameter` and `Mask` fields\nstrip the `@oneof` property and apply the relevant type:\n\n- `Query` uses a special type of `OneofQuery<T>` where `T` is the interface with all fields of the oneof.\n- `Parameter` also uses a special type `Oneof<T>` where `T` is the interface with all fields of the oneof.\n- `Mask` also returns `Oneof<T>`.\n\n```ts\nconst query = {\n  result: {\n    \"@oneof\": {\n      value: {},\n      error: {},\n    },\n  },\n} satisfies Query<Example>;\n\ntype Result = Mask<typeof query, Example>;\n//   ^? { result?: Oneof<{value: number; error: string;}> }\n```\n\n[//]: # \"TODO: Add links to runtime oneof docs\"\n\n> **Note:** This feature requires the TypeScript compiler option `strictNullChecks`\n> to be true. See the [documentation](https://www.typescriptlang.org/tsconfig#strictNullChecks) for details.\n\n### Enumerations\n\nFor the following enum declaration:\n\n```protobuf\nenum Foo {\n  DEFAULT_BAR = 0;\n  BAR_BELLS = 1;\n  BAR_B_CUE = 2;\n}\n```\n\nwe generate the following TypeScript union:\n\n```ts\nexport type Foo = \"DEFAULT_BAR\" | \"BAR_BELLS\" | \"BAR_B_CUE\" | number;\n```\n\nThe `number` is for values other than the ones defined in the protobuf source.\nThis usually happens when two systems are not using same version of protobuf\ndefinition.\n\nNote that some names cannot be used as enum names and will be escaped by\nadding the suffix `$`. For example, a protobuf enum `catch` will become a\nTypeScript enum `catch$`.\n\n### Extensions\n\nWe do not support extensions (a proto2 feature) at this time.\n\n### Nested types\n\nA message or enum can be declared within a message. For example:\n\n```protobuf\nmessage Example {\n  message Message {}\n  enum Enum {ENUM_UNSPECIFIED = 0;}\n}\n```\n\nSince TypeScript doesn't have a concept of inner interfaces like Java or C#, we generate the\ntwo interfaces `Example` and `Example_Message`, as well as the literal string union type `Example_Enum`.\n","readmeFilename":"README.md"}