{"_id":"typeof-jsonc","_rev":"27-bf28661c933ba7dbaa209cc11d7bfb8f","name":"typeof-jsonc","dist-tags":{"latest":"1.1.10","next":"1.1.5-0","es3":"1.1.9-0","beta":"1.1.11-beta.2"},"versions":{"1.0.0":{"name":"typeof-jsonc","version":"1.0.0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git+ssh://git@github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"gitHead":"a58c57bed8a009ecae7a5257c92e4b5501ab3de3","bugs":{"url":"https://github.com/wulunyi/typeof-jsonc/issues"},"homepage":"https://github.com/wulunyi/typeof-jsonc#readme","_id":"typeof-jsonc@1.0.0","_npmVersion":"6.4.0","_nodeVersion":"8.11.1","_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"dist":{"integrity":"sha512-8eeIXCf9tRUKMWHsHB2cBcEHoBkISQsmyoRK4DVKEa04+Hyd7gxQYjNDq2jDDhch3KYPGhIWB54l7gYJHBfGKg==","shasum":"f94ad9fca578e59e30fb5da43edb93778ea5db6d","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.0.tgz","fileCount":19,"unpackedSize":303449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8Ct7CRA9TVsSAnZWagAAALgP/3jw364JxZrSI5bndTNN\nVsIL18bK93U0BQ3w2Fr+VwjltWt26CirYf/WCqCRBa3WtUt5C0IRlNfgIWTh\ntmDnhBWIxgyDqFeZZMgEwqeks0P6XHSVu7CsFzkWpH/6x8qBmez7nslciOE3\nU1gUBggV/X2TiSs81ENtDPA9/BRKrSn9DrhCQ8kaEsA7AJCu9OVdb+cKsf2X\nIeBYg7mQrhpAcSlU4lIuR08Ey0TzhJaO7iAWjO5t2CkI0f1jCIyElchQqeTP\nav0t0IC0wtk5ptDIjYgCt09OSbBAVN3NPwLOTgcpyf5RJs4fiW1FQUL6kpBv\n2Rot+CW8U6TwaLWtWcEnHC51E0JqxepN6vRK0fBDa7xC4k7LH3+3+lZMMNeG\nWp456jaedZgPgBUCzI0RC71J1Ng99whE8af4AVvV3smw2HbmYpJMdyK3fZCA\nVjHRDX6SEG3WuFMVoGsb7ZSzzpBNpOmLlPsBOBE0h1pKy7PN1OEMlv3JUfjc\nGgAvaywwv14g8I1Ac/u+N+Wk9bD6RTEwoXuH4P6WP4ckFKQiWyVfVdsu0E7b\nenqEJ06l4MY2JOrL+SXCDLQiqodOrz79+AKZiPtqOBT38FSIHdWFxZbBvRmn\nWS16GwZnYSWoOnXcURICx9Hm98OZtIy2fo9SBvV+x25i6lXBjCmxLjIXR2kb\nzFn6\r\n=T6xT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/WSGgGkMQTseTNGuUNTGYnz90jHd6MVIDhuY0+3q0AAIgRZS6Fmd90LtVEcZ9a7v3U476AIn3PEfT+RB/asacG/o="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.0_1542466426841_0.641634352952587"},"_hasShrinkwrap":false},"1.0.1-0":{"name":"typeof-jsonc","version":"1.0.1-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.0.1-0","dist":{"shasum":"8a57a5fd46373ba93e47606a1215a9cf7e0fd8ce","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.1-0.tgz","integrity":"sha512-ZAHiRNv3CQJpVz0LMDsvL/oDs+hYzz9ZVa/xEMmhjHwv4Mhql1OMHjFV1FGbd9VS3ZCmbv1KK5YEN8F+qWECPw==","fileCount":18,"unpackedSize":27779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8QwGCRA9TVsSAnZWagAAxN8P/1mmyyWowr7W+a5m+bD7\ntio56lk8StN8yyW6nL0RykYGDFc4PrtStTJIvfUW2Dci9LQMCM5ydmyrMa1d\ndW4GIyNg3+94dAjMBnhfRlMe4Yuavsn6g4VQ5KEf2OvcP1aOclGFwpF9rvUU\ndQiNIhp28Jip8eXQLQYvgKgn6Qv04G3vCLpPZVdRHhIOFO+zVsNwpHBlRC0m\nDMinEInfoWePRseG5opq/4RngNMVjdPY32f8OJFM2esZ1J4/XwdLXccb7Hha\nAdUfQJOYcNi6n1Cx896JAkZNZPQdU2/1wzob0zapSPjcIZr5zKKBfflLLRd2\nR3nupzdIstFYvlJZuvbkYjiRJtAROH1V2lOa4+DvvWUDnnswU7iOx0qCvv/e\naGV+/3pAP1auDQSLivAKWdSiTBXJTHLVDmse0TcIzciwNxqMxjRJpjAQWDPM\nQK5ipvfiPQjhjlC0dlLMFM8wVNhNhTrrrxUDclXdqHKu3g3GuR2FxB+ofp1y\nb0SYID1WXwWchs8h1xOHBYkoa3uLylijtdshVfpEPqo8miVVgc9DKjXM03yz\nsmQNIQerR1Aj41vRYgIwspvJ4ep8Ipqte4s0zVPd0yzIslRkUIBKm+Zfcbe+\nNs4dV1yBYMCt17RlOrbDmv9lv/Pax1Bsw+23WEQIZoLphDJG39waS6yloWf0\nxReO\r\n=hZJL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC0hAclFA5WJRzkVAXyRu8+DdhZa/4mNNlVMWsQk4ReKAiB38pzX3VjcmjTICIz/zzy03mR9QdtDOSKohODfg1pO2Q=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.1-0_1542523909601_0.8343581147487764"},"_hasShrinkwrap":false},"1.0.1":{"name":"typeof-jsonc","version":"1.0.1","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"_id":"typeof-jsonc@1.0.1","dist":{"shasum":"1b2a6fd4173072d028ee10a0fa591062e9806894","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.1.tgz","integrity":"sha512-rUC7aEZEvux+yJVQa0/0kriZGMMc7MnlKf8G5m1iF2hkteFITaGlW6AbIwP9wt3GEI9a32FFtqLBDd9JqmxShg==","fileCount":18,"unpackedSize":27830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb+LONCRA9TVsSAnZWagAAgiwP/1q5WyFRa69sgnPTKFi5\n2fL/ePbQPOQGjXOREeVqZO6JYhlW1RbLrX8NzyRqPe/y1XqXmt0FVZKzuCIK\nwlwZgkk4lY9gktfRr3rcz2feHxko/lb8w766vaPFkvF/L/dWutv2dyQ+6v/p\nNMSrvAEyTFakkfwmkzP1YOXDqsmkvllOZYUgU23+Aki6A6hghiDs0OdXWRhR\nVVugEcc0OazJlIlwTxuEdW/o5p4dvI58p5RWZoc4B1JUYbpulvyLamlxbtTl\n1Fu/sQ54fOJ5+JjcrR5+Auv9lGqbFM9i04hftOz5z9/94pO8PqvcpLLF8ErN\nU5IE00OXM6ujM/VAFIwaT+hcXKLdes7VU89s/xN7XPC88p8jzpUqogh4gHQ4\nNBGGllAnd6Vc0rjJ2iFIEg4xSYe/8RqGegR98xA24MMJL5t8QagIFpnAMNXE\n8Qgy4OiM54DUS+Q3Aov0gcIzX+QMrvIFxXzblJe4ufFvBsQhCm8rHIP5bPg3\nmQ9qCxD7GBGTjTwEr7jMXP0OzNFs9gdUbgWqg/JmCAccCF0hwSqKnPGkyUDg\nW2nZikNyBpOvVjTzMmym089TS5zK5qXF0w1U5BKR18ber1mSbCvxCeHS3/uu\noQAgGuNaiUyEsgRt6aq3YLlnY0pWvWL70I5Bu6CqT2ulGan4FY89NZ6QLzV8\nh6pE\r\n=7Rfv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICUKcw3Ma/058BNJdgqqH5dXp94WOJQPfQeNUiNGLwTdAiEAl72A3xLPzcQIidKbeggTO1oGeK65z0/HoLUro74H+Xk="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.1_1543025548800_0.3139924171389099"},"_hasShrinkwrap":false},"1.0.2-0":{"name":"typeof-jsonc","version":"1.0.2-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.0.2-0","dist":{"shasum":"3a3f8db6c3dd1c21541057a1470350d0cb51165a","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.2-0.tgz","integrity":"sha512-BcCHToQI4TteIrIZ4u+NNCJcbi+gGihihjJitWNDusoEe7dZAt0dyGRVsBCK0kccaaaTCYAVvmk/BK57A4iz5w==","fileCount":18,"unpackedSize":27836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/QfRCRA9TVsSAnZWagAAh/oP/R05Li1nIf3RX5DfcSwT\npaw8FGAPkxuYKbzccU821LaBE9J575tCvVf6iDv7kzQiKlVJWBl6K66ZjKwa\nq0C7h59+T6tU6sPJWIqDrDWOvmd97tSrKGiQhsJC/+VOqdppfnZ4NCJwSMlL\nbKm/6mbB/pGeyuB10efnvdojjP+qN6zR9sNh4I+iWx4Buyf3X+8nLAPK1lKK\nbE2LhpA5yD1bqPx7mNa4qukSxpZ+X/DMaBzAUfH9LboOni7+c+Gr2T252Pzs\nSjlSR/3zDPJRGaJ7NAkak6+/DfGa8wuZJhctggTjRdWMVNe4dEDYzlFsNp3V\ntHHVGFE26Xynmw+Wj51jJKRjfx5l+b8DhHePji5IAs7FAMydQGV7YPrm0MJZ\n/EjqplzJ/hU1b8362S/1GyAg7NpMIAwuIiMMN/2vBBSmNECdZVAsL99BzF6a\nFnEn85S7LG2W+yr7SuHGT1oTUEu0ic8T8AEWVhW9MMwWbBEQ8d18W/bUoMOK\nLBaffOuD6Jn9NHJIPackSWLTosOorXQuR0faWbTdlw9eonCC8zC7hGAoFk/x\niAel7d+xWtOjFsQtNAaBuHwfNWRI2t3g6iMsaYlrNRcSqcust0bt0wLCAjiQ\nG0G2f+s1efxUOLCeSnuMtJenYW+M6bw440SLtDa8GM48Z6kBRmJS3YQSGj3g\nANjm\r\n=Bnnd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHq4wolUKNswYPjXHxXO7eNH0Ju3bkpNpDly2LuS773LAiAck4tj2RqzL8VG1OWLLnO2yDTufO2ndnO8GH2tmwwcdg=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.2-0_1543309264963_0.893286905894553"},"_hasShrinkwrap":false},"1.0.2":{"name":"typeof-jsonc","version":"1.0.2","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"_id":"typeof-jsonc@1.0.2","dist":{"shasum":"8301241170c18f52b8ff1120d14ac3e16c7fd5c9","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.2.tgz","integrity":"sha512-8vm7TZvxdvTA2MOBySNhs+/DQ1zvHM/mwOR6YB8Q9pVBnts08WjF52E38hn8jpM6GCgTHnjsdUZJSnWeFVVTsA==","fileCount":18,"unpackedSize":27834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcFa7KCRA9TVsSAnZWagAAtRYP/jmCnOWBB5tgI1ClT0yq\ndV/npzHFQXfKsBou3h6SU78acR+pqTTB2WNK7FyNSy6ZqNkDbI0OKE+xWswz\nEYTptqcKlJP+TJOPYHjiQTlY/VntQQcEDWuW9vY7yrU7g86BDKrpdaKa3s0y\nqinewQWqz/FFEsZsfFKfafaNtLJRfDZkrRR29EBsxtXFPp5YstB3mt3maVUb\nS5ETiKh7OQ8hRp1VOGAWiZICPDH5PAC5BTHoqxLbjJPyZKtZ2e5WXyrroo8h\nYN1F9dJvrpyxpAfjeVM06K7yEKoQL/5Egs2W6eZHOBQflm/Qie4diKh1qAZ9\niIU+VsWojMc0Rc9OkUEYY5FHAk+nYYjeYGhcH/+dze8G3axxveOSwQWdoIwr\nVPoo003cJmic327Zi+fEk4PavoTYwRTYgV1fyiz8/d/cJf7xjJsCaisorCMi\nmezpY03ZBLG24RqDU5BJPSPfHGKM/+UrW8tTYlGCauKwOGxkPHyyIsLDIlVG\nfAykss9HWl9a8AqFS1Dg8M13ybv5qKnL3wyd8max0wkDmaBXCdfKKbIvpwlr\nbTGFToHD0u+mp8DhuM/yXKWgo095bUcSoXLouPwD8kyPGFvu/wlBr7nlzTiJ\nBVAsJUW6CZywJqwVJymC5jSFAfwy+rzFLrmF3BKV9WR0RB+MJi7vulFB0zvN\nj7WK\r\n=hvrp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGh25rkmL/4Z20TYNEM1NVujKJp44HFa+Qq1SBRjxnX2AiAMO51m3SazcWND7+n48CKmjjjbLkLd0h4Q+bOBHEdlPw=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.2_1544924874338_0.5976626545907664"},"_hasShrinkwrap":false},"1.0.3-0":{"name":"typeof-jsonc","version":"1.0.3-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.0.3-0","dist":{"shasum":"29a9283146572b2cbeb0cb3a232bcf1a86153d36","integrity":"sha512-Fh9mjlMd+elGRG/SiRbsLCdwDmCCtDdLUwsGr1SO3P1ZNV8/r9tLUkV/xruHjQmRcwECu51qJVg328FPlRHb5w==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.3-0.tgz","fileCount":18,"unpackedSize":27836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSpP9CRA9TVsSAnZWagAA3Y4P/jSBpQwGrGMmQJAOl+yz\nBuE8VlG9epOfN2CPEEsbAQuGlnNtFlxZn8wNOKBplWwN92fh2PteP5pMyqSC\nRC7mViaoeb3cPAMr5e8tXF3zOzXvgW/VliaVjYkGhTCtlkhFZkbTNw0vS0o1\n8SUbOvG9fLJ6ThfF3sihD1X8a2ys5EEimMl8EPwG5V/xpYwN1tmFyfjC2mFu\nZpeibiIVVrzYBnJrG7VkG8Sjqj45Pe8PGYmEwBNpTSN40C2ubsZS+h4h4lwS\niJfWli73Qj84aZkNv0Jc6EjkM6K8ctnjm/+fD2ASQPkWXQ6q5XEbEhC9ZF/Z\n+nxGPx9iL6c4oJiU81pglUnhT9PHax88+IdUIUnFpWxwLg0JHqsGpdufFoqx\n1Yrjnz8AFrS2KS6dA8UdOjezSJplB0Y4kKV2Xff+Tg7lVDm5nHiy3lVvZuQo\nMGxYLBjgik/zNgBqQ00G8toOBffr3KULEMQTZxDYXgNPvin19QYhCGQRIllG\nNhS2jusGKteH0eNw0isRzKqxKq9DLI6vi8oM03SBrl0agKIRB26w9xW+4qq0\nKGjfaYf4HCECmKwM2noVmoyyRZRNrmVW4Ifh6Vl0yRicb4yoSyi3LvPNmYAK\nzM61TJd9GguKIukmf7mdOnMbgpD7bH1Z59keIu7gOgItJFI/QltNh4jd6Jyi\nCfKI\r\n=tV9j\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDNICjD77s+S3FjGYKJmCBByN1Yp8od+rmcyEq+DMD4tAiEAytgDpMJOQwpkKK7IeIrH6rE/CB/dXP7TmjnMuSYfyss="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.3-0_1548391420471_0.6505788625133546"},"_hasShrinkwrap":false},"1.0.3-1":{"name":"typeof-jsonc","version":"1.0.3-1","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.0.3-1","dist":{"shasum":"6d2cfaed182305addc30abaa3cda6f9cda57c070","integrity":"sha512-HFxq7HkLFCekHwzwYdwT/pfMsoZULA3E53vkozNOiQbB8qbxcgwhJIEe/6s6mZIWMQ53lBPNGLTfqxLtclqoXA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.3-1.tgz","fileCount":18,"unpackedSize":27836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSpTBCRA9TVsSAnZWagAAYXEP/1rNGq22fUQMTgaaevjO\nOXYLC7SDc0VwooNOvJb/Kp9BCIqmbD2gt4mPGSoqw6OsQ8GC1zlQNtu1wVF/\ns6filKUjDSnTKUVp11gv9Dh7xwuW//UtWBt9Q2VXzMRIwUVlewiXER6U7Za0\nVIl5ReSAoB9+aTH0mp17dcT/fL1GMB5fGK/cDrvXr0eSdcr7XjUxV2iRoFwS\nJvqSMawG44KHxmB+R7gDHvS9A+i0Gpb+nqhIWxP8mAkB8m2bpV4bkNFu3yxV\nIqWU8CACHRAY3nUQkxRSe2bicULSlGAIutISZXBPODItMSl3E4XX4W4xcuT/\nnhWXy1fkmiXcLMzmP5j6eJPvRmIGCkys26oAsRbI1tvszX4YDvIIGSEHn8De\nx4plTr9jtT+okIZx920PFDxDFmisNNS3OxtX7tHvJ6CJTwDpo2mUSFpHEwHj\nzLUk9h6Vc6avrqaZkxHjCiVvKs9FEBv/4L1N7vfK9CQ9o/BO9KI1F6yhsdVZ\n1IP4/asnmUhhAmIObDCz4H2aLvFjh+McBB+E00jKHLrWsH5uyhXRHS92iHYr\n8KPmIFOKBLLtiyCj4WMYH2vW7DgXUfOaedO7tHMCuLkfSP15ygwacb673JnV\nQwKrc5jkgjPrHgRzyAw421NlpXVb1ttgEyozCmhHfTJl1eaVaHQmpEOzgeMZ\nNX3F\r\n=w0+k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDPTvkrQt3uv54thqNgxRt3SIol2sZ2ryvx8JtuyHqfWwIhAJb3Owzt+HT68wBpev5ng6wExjy3Nn081zLczKbLPCyD"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.3-1_1548391616800_0.3708127230786702"},"_hasShrinkwrap":false},"1.0.3-2":{"name":"typeof-jsonc","version":"1.0.3-2","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.0.3-2","dist":{"shasum":"0d556093a9423b39890d0ba9f3271cbf164850fd","integrity":"sha512-6Bm3R0lV/IsAPsY6ZsTBJK/+9HQKWV8XjvBNcwhL3Tr0Yc2uOujGrz0gH+JjKdpH6SBYtVa4iBJwaEMunI1Phg==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.0.3-2.tgz","fileCount":18,"unpackedSize":27915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSpjqCRA9TVsSAnZWagAAdPQQAKKcvp2l5r8YjT9vbWGG\nGHtOAxA468gQ6NALurBGi/z+cUp0SiRHRxObzeUAajmOsifDx7z6Z34fvuIo\nF/hiwG0wv0MPcb8eezY76ff8aWD2DC6kJlX541DGGoYLJLyj9MjYnI4FmfRd\nRsNzxeMXYOZ4SZKj0zryr+2rU6SdEiyqa2gl3rVTZ8uF2yXv9I+DFZg3pY1a\nlPAtD2Jz30EyZF4Eya09cBCa5rcTNH2uhVyL/HhgSJUh4nuDCxF4nTL/lfep\nUuxdbuRbMT8GzJ4s81V8xRy3/IQU9f7KCeqtH/a+5UkDM8pflSHaX57NEiPl\npsKcP48hFjvwkl5tXz8rhHvY46ccApPPXYIBvejhRMkttTCVhVlg3M1kd/ue\nCS3lLgxyTvC2YxYzTbVGXVoIydZoRzbBaQy2PkSPNIxd2Tz2VOLjbG/+HHte\n8FjAVOgB1RVx54z5m9sErVJySIsIB/blqynK5S15WMSHLJsvn9I2hm+NFO02\nownGdW9WaXZsd79paJdM3HRqBRBHBDB0RPsTpI7B8bg2Oa0n85Iydf8okvtT\nmCiENPjZZ1ZWi3kgGxTMDaG2brKogoEvXhdyYK4QowtAwmvkniKJ1WJkF03m\n0Z4C/3YrZzmM49Nxg8zoFq11BalndkyYFkxBr7UaOSlLsdlTjadH08H9Se6P\naj4h\r\n=V5l8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpj/MX2gNlIraZHBZoMcGGWqVms4K7wA24d8vSsOrU2QIhAJDpq4cvvyBJ+5LGXiccwEsxL0slCrRxMBgBtwbBj6NH"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.0.3-2_1548392682022_0.5607325792727087"},"_hasShrinkwrap":false},"1.1.0":{"name":"typeof-jsonc","version":"1.1.0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"_id":"typeof-jsonc@1.1.0","dist":{"shasum":"d3b1117c66a194aed2f7cec8ac792adcab83dfb8","integrity":"sha512-cXHdEhIJBkbOMr9jd//EFc0TweamsWtd9EETdZjqj4qNRg22geEk3+km3vOVBAdGcQwQ2ZjXVB+AX7zXH9zNlQ==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.0.tgz","fileCount":18,"unpackedSize":27913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjlZYCRA9TVsSAnZWagAAdP8P+gO2HcvXAXJK+T2lwHqX\nHE4JJWrn56Fs8WWnZZ22vpZx2akkX1xJ8Lmd34iISJ50VWrmgKCiGqxWTH9I\n1qwkrSxh4aG1Vme3wLmyhVS0McEvMspNg5g6CdoY3wYry54E3OtTUy6ELCuX\npLBS3GC47ieQBgAJOqktCn5vrbo6ZIfPS0IKodq0R05pU6dyuGH/4aF9E42/\nurRUiDBp64S6/rTwQbREJ5z3pzyeZn7lL5n2iIFoIDiYJMq1EE/qF/xQ/eFu\nNsG7r/uge6QztH9sIwXbJ1MFdgaXz/CqoM+Dc9Siu7DQca6CLfluBPkMcHP1\nrRLsbcUPzL/juWuNUG7atTgfzkk2LQaKK1LvpIpQ1sSw3RzJuF9qLC5iTrcp\nE7mIb+3FYC93rq4Sa4+GOrToLVpf33QjpVpWEV9hf/mNq9jdWE8hWs53xjdv\niw/iLWtLsYZQg5Vilnh+ngik9Sbkw6JX2arFeb7JHO4VkNnMv3uVD7oZ3GLy\n7wzjxpPwV3ZhumQDeh6t4KFPXRShJ8Q63tgOYVHHejiWk93r4WNobKyG/EUv\n6oG7yqlOQfqi/YAkHD1CWocJ+FG29Fhe8/m+Ft2E2WF0mfkgyIKyXrfI2yHi\neEt2Jb6YsZCWeZvWu2ECh9r7LihQg+mOfaYp+d6ytK8lu9xX8HyYycE2BpWC\nG2vC\r\n=0Rpc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR7B3GQ4HRVQVjxzyUdlur6PzOnMYAYAODIKqCSSlH9QIgWDQjhy9OSxAInyJcJakRJ6EVYns4TEvpG9b+kwQbVN4="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.0_1552832087415_0.5803538889216973"},"_hasShrinkwrap":false},"1.1.1":{"name":"typeof-jsonc","version":"1.1.1","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"_id":"typeof-jsonc@1.1.1","dist":{"shasum":"aade692d1537348cd792d646e60b36e0bd28722f","integrity":"sha512-alJ0B4SIwfHd0f3rlC2my5TMCuPALCkNosOuoAdLfNmq3O1unNQAQaDDy2Dsjq+adjyv3DiEODk9qpDUGLg28g==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.1.tgz","fileCount":18,"unpackedSize":28126,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjlrYCRA9TVsSAnZWagAADQgP+QHluI1pWw0XRQZzu0RI\ni5116SUO8gaKlDzDwJXZ20Y4fXvzdzF2AdM+xx4gnSUVDQKwVx99khd4vteL\nekySrcNAWxzlQhWAb180qeYptwqI1HDXwGTWApFOHNb4f2NtCYM4H8Wq3SQ8\n9m2F4+X1YAVsWusMBwpaBccqVjV1W2XrtM9mbzfsQJzXl0gjw415BSdM6m+D\nLJIDUVcL3KEjgcLzk6JUBIC62O+9yRaNdiUrOtGD+BHhnT7/fv7UyVFmVDvD\nU3/VsJMPUnHuhNRvS5+HevRn9hCP4Lx8rj1wEwBvbyTOBbWsyEte5SXk1A4G\nv+QWtJQGnioZfApY73B38v7cKYu/6RGWE32tVvIimCG+W++26h/NGdzeYTya\nz/r4u7+/NyW+7ZZj4Pz1jZ+VinIBzl5fG8IyTQ/cEqVOPyJfWvuvL7z+/IPg\n8AwsFhiEJhlxaNOt0BocS4LLLd2KaokhynXDo2EXtCCpRugN9YD7Jo4y/aZZ\neVeAfDv9xtSuDuADX8QJJGnD4Q8yGp4UZcZrC8+o4PuCF6ZNQF1MIye0njay\n3TNWSDd5hM+VzG3QOKszMD6XC7SiZQ1Fm3vr+WzLcsXgE89ajn2ut0KfuSzN\nuOyvIMeiKqM0YGcbajToZnhPQobqofLc4HrWtKaPpZOFnEYH9jQg47w3nDHQ\nxNV1\r\n=l/nm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWB+soVVWoMDzPAmqc+12yXGc1P1x8XsJwHHBoFb1jjgIhAJSLZ+wXaPwoXpkTlKAfTZYADMY/bcEjUNhRDbu9AgFc"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.1_1552833240029_0.49166977244064225"},"_hasShrinkwrap":false},"1.1.2-0":{"name":"typeof-jsonc","version":"1.1.2-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.1.2-0","dist":{"shasum":"dd93dd97141e246640ba976e1025722fc51736c4","integrity":"sha512-AYJNeF0OZEzQF4GVf7gc98YQUxpmlYScLNxy6OREeTf5RF77Wf32yKaffVjlyCjXWs+WOSMPOx3FMqX5JTfEjQ==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.2-0.tgz","fileCount":18,"unpackedSize":28128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjxq3CRA9TVsSAnZWagAAg3cQAIJAAztywFxmeZrdbSDy\nttCOwpCOi6z4h32DSqhzywF/oR6y9Ynyq3TGaa5mLhvFLl+xtuAGG/3wIzOv\nsaN7IiOnvNfYwB8OU3vIcPvqZVbUNnsyka8cJMMvNobDZNTTr1KSxVHAooYv\nJhp9LqLIgCzox34boPaRJzU6OhdGVKW1l69lM2qnJXsunHAcEuNlBYGejJHB\nBIDg+P7tTrMt+5F8mxpOIOrjboN6XdYit7cOFMDBObolPwTiGNdljX0Pq60b\nh5ihiGZvy+q/JLJmruMcw4QG2/AzHBFBg0kWR9AMJqorJzIPA3t233AI18/h\nqHq97yxBmvnw4tXCT6A0d5egXCo9sVWbOLy0CU7CFEh/6tUlBom9TH/fSpcU\nPphzNENJQEPmqqVqR8Yx65Wqw4tLaL53QuKh7M4m+ajlTgvNq34e+hDZbiuf\nMjqppUTJrlT0XkJOwO+O7aNlaa2Ed2tEW8MDiYeriesrBpR+ajbvEs9Nk4GT\nuuUKzp3SGeEm9Gi/gzEOA+hFnkEqYPxImetcuC9sanm9diusNSuuqjA43Usx\noimkgz1ljArqKn/NhdSSm0Va5KcW+pDj/MyVKj++WHHkiJNEtBd6NscUY172\ndcsSHeI5mvwMp5I1AQ6CHIrDyUnqZhd/9LoCUNtu0In8caAlNFw/3QkSOkQe\nHWxX\r\n=JqRg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvO4qaLu8ghqL1IxlcTMrbRFyF12UpbWpAGbIBkdvcvQIhAOg2VCs3x8XzhC4Drym7NxfKE1tDZ2iU98mFUAW2tCXR"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.2-0_1552882358853_0.5673174356950128"},"_hasShrinkwrap":false},"1.1.2-1":{"name":"typeof-jsonc","version":"1.1.2-1","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"git@github.com:wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n","_id":"typeof-jsonc@1.1.2-1","dist":{"shasum":"1164f57c54b5137181577a7825741440786deca5","integrity":"sha512-UGHOEG3rh1Nwr/ql3eE/3I86nJuqTBOFE9cH8nOyQfbQZ2/VdccNeHRjeEF81YVpPzVyjFL3VfXVJP0tBWn5fA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.2-1.tgz","fileCount":18,"unpackedSize":28573,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjxuzCRA9TVsSAnZWagAAuRYP+wR5pkCEz0oTEPFeVoiw\nXQM0DGGzo0Kfj7F74vBBCIlZ9cIVsRU08886X3mFttALXv5VhFQhtukvMvrU\ntXIJYNH86OS7ioXPUYLKDCYDjsMojk9sltbwUkFPXW4SoQ8TZZSgBqF3msvQ\n0Rb1VNKk4W6KgPiTSr91HNpjQzU3rextrFilKzh/vFJuPETSMWZIky98si3l\nvvz2evGYdlxj1OnhR0Iovb7lvgRzvqSwkEyfAdMM8YiZKNV0FRCeLYYKCpfF\nGEox2K5/JZZNyEJZm0q4++3fA13vdLfPhvNn/V3hR0xmu3EsvjHxs3W20p4K\n5/QI3afdNczWs4f7G8UmKqCITzmdl3coF1oy7QVKhjkxsjPQhl82Nx1fgzis\n8eQiZgaliy67XxzJOTbV8ScNOYJgJcZDvT9fnjdMgdZ660quefFtu7Dndh7y\nHqdf1CImoBqq5oNYt0mzqWdhv9Qgf63pwWJmZSqXTZoMVJryhgHI7T/uEVYT\n7IFVOa5gptqbxSP9RWe/0VYQhEyyKS8IQw+vWYnQqfFtbyBVW70tjBkM9dT7\ndahrpn4M1m7jWnNB5K4Cr0FNnx979NtJ7sPFrtl+iXK0IdmDl9bvbcLnK+Cv\nzrDT7dJj4Y905vyDt+tF0VsfumHIstC9AKyvf9n8E43OlwdyWT41WpXobAsL\nWOPX\r\n=owdr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBgwoCQE6n2LRY+hk04AcraKTbFsr9Cyw0vA9mB83fTrAiBiIz6fs6BlJxY3EAgOn8jCzYE5zJthsYYx2qZJyLxQLg=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.2-1_1552882610418_0.5749275870602206"},"_hasShrinkwrap":false},"1.1.3":{"name":"typeof-jsonc","version":"1.1.3","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup-plugin-es3":"^1.1.0","rollup-plugin-typescript2":"^0.18.0","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.1.6"},"dependencies":{"@microsoft/tsdoc":"^0.12.2","change-case":"^3.0.2","dts-dom":"^3.1.0","jsonc-parser":"^2.0.2","rollup":"^0.67.3"},"_id":"typeof-jsonc@1.1.3","dist":{"shasum":"17400ce0e5c31ab11f04e356c87e351b76b94909","integrity":"sha512-ZMuTWmiC/rWOsmsbmc4HcLCgmz7Y5JEFWOSsvBw5n5YTqD2fmr+v2/tgxKoav4oc2PD7pcp5Ft+Hxr4VpW/qDA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.3.tgz","fileCount":18,"unpackedSize":28575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclJWqCRA9TVsSAnZWagAArCAP/jpuV2som4yv5UXg0jdW\n6tb6M9salY77shSlM0sP0TcaiRV5cpVmrrAwlTjvCBfoeYXbk4efwEmCOemV\nIOfiXvFmYuiW922qMePeOyMVQzIZocPNlT80rDuahaxGlhAtcHz8yPoAr/a3\nNIGjHb8XdwAc1xaTOCXZnNSDvD7BQEF0XQtbKxzpw8s8aforVxdn07tdmT8A\nNRXXiVtUhjWpkLnNROCtuTIbToWKDvrwAU8SCRtAcXzKbE2CYCahNTzfT2EA\nXoAr76QGppDUPlMshEIurMWcY7ipWqtGujkVMrleNGDn3PM9Cw526IigaMRP\nRpu3x7nqrlL/A48iDTpEaCQqH7jBrNLnll5F8Uc4cIIYQCsQpOdXWFAlnm0C\nIqS2PEXNSxxPfSW2F1sqIKwlCDMpMbzG3GuLIulTzQ9HI5EPBd8O9N4qfN5k\nfG8ERsajwF/ugdcomlV+r4AtELuIIo3SBgiFjCyDnb7UIjGXtiycDF4HXGV4\n0uiczvqdPjVoUrHLIutYRn8x2j8facyaZAP5DTL7QMww6mN8OBD0NhmikTyK\nsLcE5lgaSygHTk27IC5amnmh8Wctmnx7fCO3ru2C+3/LiqtkAj5frto7lgzI\n2sTvk12O04oz7M68TuY6Aq+CjSDnph9bxyg05t3MXbXmlwNaB9Gi1NnSOZqZ\nQuM8\r\n=BDlX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8EGUfDpfqGj2XIZcfA6iv5AWivWzwKOWX3IZgUxAqqAIhAIbETZegPPucxDaPYsGkWu3TNmozD8oJPULVrPJybkq2"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.3_1553241513531_0.5500163610941446"},"_hasShrinkwrap":false},"1.1.4-0":{"name":"typeof-jsonc","version":"1.1.4-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.3.4000"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.1.1","jsonc-parser":"^2.0.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n\n## API\n\n### typeofJsonc(jsCode: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string;\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean;\n}\n```\n","_id":"typeof-jsonc@1.1.4-0","dist":{"shasum":"a35e991ad8764b17a9321654a7dbf40ed1c625fb","integrity":"sha512-OGLkBmT+89EK2c1hpotBFt5OmQ7OPSbX+oqGYL9COLPinttc3d8irViCjuRNLFsW1ymMZDpllUkWAcFPDpE9pQ==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.4-0.tgz","fileCount":19,"unpackedSize":20256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclwA+CRA9TVsSAnZWagAA/c0P/3Cz0cVPtrPHufZC0Xxh\nJbfbKPgok+mp/ual81IOL6wS/L0TtNHe/ToTaJEw3rjfx9usRM7WKu4UELCc\nYVhTUe/GwY5NSbYXU02CRrtWvptRmQYqrQpRZ9p2Aa6pfCmIHawChs/wRTDd\nq1km1uixxZnsvSY9yajA/wF1V4jOvEGK6u7Vr51LtMSbnZD//53AIqL6xyG2\n7oCl0lD2hSJYbD3XLF4TUoCpIhCcQ9cRvxx6TylNmuzNFfe4lmAZYS9wheMl\n+jObt8tI15bfmnP/0CZ1GX0sEU0Nz7ydmQHabJ7KASw9NbY3vsfmSybqQ5T7\nBjZk1rIrLEe0cryxuMK1s15LSQzVgvnpBbhKT1Hiwj9qPHurnRd3OjNigRrM\nXRh1n8InAeYQoy5ZGUwptBN9dhYOCttGbISQelbecuWvAZfMZEKfWIub96de\njNpspRqPEUC29NxSNO5PTxisjDlZXejgiKakOHLY2QhYapvSreLIn0G9+JKd\nZcKoyCj/MNcZfi8IsTWUt17A7VjhTbt4nwEqoG8nQ0AmOT7oEy42HoLwil+F\nKkE4T6y5awfQs4CZnw7pq1yfF0qZj6aiTc9uyLkI6vTIuopBm+SeNH2YLx0s\nBzzU9JoBaspHYM4i4zTPHgsVYqTJmciiH2BriLwDqBtCmuf2JGda0B1t8RWT\n08sx\r\n=KnhN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFaQdutWdC8aUOEduaWIJd2WR4AYS2SRmcS7CThjPXV6AiEA36843fIPpCzkI/UVIHJCaUlObMsYMRR3YizlHwZoe2I="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.4-0_1553399870038_0.822482678285458"},"_hasShrinkwrap":false},"1.1.4":{"name":"typeof-jsonc","version":"1.1.4","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^7.0.1","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.3.4000"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.1.1","jsonc-parser":"^2.0.3"},"_id":"typeof-jsonc@1.1.4","dist":{"shasum":"33140a64627d407dff4675adedbea8fab3afc7cd","integrity":"sha512-3I8tim7P2XlNg0XdbDeFCI2Spg3h6QxtHDP71eR968h6ItNoboyUNg1tEk0I/3NIwGTabw+g0QFv/65D2p5JrA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.4.tgz","fileCount":19,"unpackedSize":20254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcnDamCRA9TVsSAnZWagAAvC4P/0QfqY6T4j8JVL/66L+D\nj+EDLoJomVlKWp/oOk1AWltALMdbCE0tlcpU0nA4Hr24iU3VOMVq8UpZZJ9G\nCOxgDTarhO+hvGS4mM1ShBlCQbLmsevjsStIS1kjgB+oSzkqsbdA5C2NZdmJ\nWJ5GjC/RGpdsYDRSSCz5lrnkYhmUnI6u/efyjiHlmCTasVYWrDrsLqrHbINk\nxsf11JztRVSnGIHF+pzagWo1cxaN1BYKgjHLkET+CfSWRPYQ6URxl5LEPV9J\n/fDiQFdhG4hWXe2h9NSZAdQA1fHBSXUk2LlsOZZfGxuyGrSe7tHcsEpblq59\n081usGF3l7rsadzUO4UCJRu2V9ik6iNYSVZjByGXyNpKyBhxiv8SPoNChq93\nPEnGSdLimM8BS/za4trvC0A63I62xa0jNbrDZ/vVn7uOB8lvOHYvTkF3VYZK\nJSDSKnspqq7qlU+woFO2ltlKUNysXwebfVYZNl0hRccC25EVPi+pT9dRseEH\nUXr3+1LHQ3pySaP/YOqTPALMWbNvCx5i4HOyc2FxtfhTeoahXx8nYGIqqFsS\nYiQSpzyAYkjBlMu2+KINNSP4HddMmBUefhxJl2GeIvE6VtpW7Ih+8mgY5CpQ\nE/k5pmV6fpos7YrsF7zLrtbf2gvI+2GX8C27HevQU6ObQtOSgO4xtPMtzj+t\ns9EY\r\n=yFeK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3sJTG6nX2Tz4LbiYjm7LfJVfc4tW+FFo4sTcE70CthwIgL/EF9no8Kt/5ZCiWNpwF9hvyQOfnlltv4JDPXI8mk4c="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.4_1553741477561_0.1773514206364879"},"_hasShrinkwrap":false},"1.1.5-0":{"name":"typeof-jsonc","version":"1.1.5-0","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","@types/prettier":"^1.16.1","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.1.1","global":"^4.3.2","jsonc-parser":"^2.0.3","prettier":"^1.16.4"},"readmeFilename":"README.md","readme":"# typeof-jsonc\n\nConvert jsonc to type of typescript\n\n[online convert](http://47.94.138.91/#/typeofjsonc)\n\n## use\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### demo\n\n```\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test.jsonc'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'IResponse', { rootFlags: 1, disallowComments: false }),\n);\n\n```\n\ntest.jsonc\n\n```jsonc\n{\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ]\n}\n```\n\nthe result\n\n```\ninterface Demo {\n    hello: string;\n}\n\n\n/**\n * this is arr\n */\ninterface Arr {\n    age: number;\n}\n\n\ninterface IResponse {\n    /**\n     * this is name\n     */\n    name: string;\n    /**\n     * this is demo\n     */\n    demo: Demo;\n    /**\n     * this is arr\n     */\n    arr: (Arr | number)[];\n}\n```\n\n## API\n\n### typeofJsonc(jsCode: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n}\n```\n","_id":"typeof-jsonc@1.1.5-0","dist":{"shasum":"78a85b3f9482249532880cf78f9d08e7feb472e4","integrity":"sha512-jZZjeYtmMhVU46nShXojdgxRhat22SC7IhI1lMRq2IrkLcVVYnwEtDvVNgbnDUed62Urz22nPnKNYLXu7oc2Tw==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.5-0.tgz","fileCount":21,"unpackedSize":282095,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpt1/CRA9TVsSAnZWagAAt9cP/2RSN5pExBIGjrwD05ji\nKwd4P5ufY0g2hu216qeVEf7KJcrkgT1dw+g2ETSDeJEuzHSPM77Fqi/F27u/\nm+XLrr/Xyf5fHhgkk8dIm8rVvrPvVOdn3/dh3TUCUC17kyMKO1GiQO3jbH5f\nzOfLgpyvYAHsWW0tQGKyvAlzxfx5jzTfbStAUbOgDePJc+Q/li3VSaUMdpMy\njztRqCQCkolfjM7LOGzSpUymkENKW88lWCYxKN1Pz+ZxmF7rvstkIrH6ABkG\nhmt28v6E7DZ1PKEq5BrmJY/xoAK8V271UVLq3zijjx2NWtaD004luA+zAKIK\nOvlodzc5VhOk8mbm4aroXvktSrJ/uW+JsLe4E6t17e6CcoFqUPJNPwPGSW2s\nIeOmit6iZ3OA+JthJxxrQY8YwGfO6HmFyv+AoaJyRvjsm2T7ftuxb3cjmLG9\nKRYSn/Nc4Vol0rdoeONJT94u/4zCP6O2NAZHcYFodTCaK8oUQLXFq+1eRENX\nNSZbW/GODIbniCQeav0lV2Y3AIt4EutIouxMeAltMcEOXlTOC3zjwgeNb4dl\nQl6qd5VjhfyUTNu97MwaNCWiOADSCSnnpOxJpgzSEE9NFS31GJicN3w0P53S\nngFKykHb4vMT4s7oXVcY1cmleXntl5wl8EbsMCvKMmpjZMTX1WFpTpUeohSx\nU+Bo\r\n=+w0T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqoFA9kXWZ1QImo9q7D9OImvP5Mu/kluFk9DLTMlPieAIgXhJKQcvkRRjsmmpv7S43V/uy7i7qBdKU+684760djvs="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.5-0_1554439550543_0.28560169435964133"},"_hasShrinkwrap":false},"1.1.5":{"name":"typeof-jsonc","version":"1.1.5","description":"Convert jsonc to type of typescript","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.1.1","esprima":"^4.0.1","global":"^4.3.2","jsonc-parser":"^2.0.3"},"_id":"typeof-jsonc@1.1.5","dist":{"shasum":"ebb1b1dddcdd5870c62040c16272c493f75ae93e","integrity":"sha512-91qJK4surq7MPf70FqNIFqU/vWLpo9iPs5YFla9DQFz4f7DEcqOMB3itHbPKtKPWpT9iQr860CT8bNCjCqsgNg==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.5.tgz","fileCount":22,"unpackedSize":282088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJctHH/CRA9TVsSAnZWagAAMToP/ijejQrAP0eM4ZOu6a3K\n9rpaJ74arUSqG8M0HgslVVnDb+rQS6Yce1IjrFixiE1X0dos2H3V4stgNnoI\nurpmpwcUHszxIZwEXAhUJxaYxqz2ipHgwDgIWGtBASAnoTGU0+8dmayNFT5b\naGT5YB/WYmR8Gu+dRvgl+1UNn6j0HODz07JjKqKGQGIHNUacFfCIWe7Y0ZPf\nNg0f7XHX9ZkJ2cRzAPyYFldDEFC6smh+w0kMO5rXrUurQkIjHj4AcTwLg3jy\nKRu2CkiG0WBbWkL5ozNG88y7BdD/pMq4G9T5Rbh8cf4xkl73eNCCIbZ2KCqb\n8dUrI/ZU4Bph0wTsiZpYSKzlHWEBt9+hFIqeAQCgLlH5HcjjYFqXjp4kRZyg\nxnx5F+HWC9wPUp96KcN4jJRD/nuMIVOO+7TCZ+DwHBKwPbKlWAVaD9M4i2uZ\nqqyDqNaSjDdufkELt2ggGA/HvfcCtzD5SS9Kbt6kcol60G55XxaSfxPf3jRO\nyTvh9aby25E4RtT2a8EJuq/HB82UqioWTaF4Nr0SPp0IevXyye8LMoSSWOWV\nU74jK0VOmEgOQI28jDpM9WAIj2lAFlGbX1tvC/kDIrzyCA5qBbZX1YvClhJR\nmVvW+7xZQH3g6hDT/+yMYHUrxj+7MzqvJyvBdBeI7Clp4FqVOBl8XDM4KeTT\n/oJ8\r\n=i/fa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAQiQfauWsIOzbJcKOse6ZxPFSs1zTHphmHjR8OJM3IQIhANUHTxN4UyPbcdNDKBN/649q0pcQevOjU7ji6YrnQFjE"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.5_1555329534641_0.6876050496295341"},"_hasShrinkwrap":false},"1.1.6":{"name":"typeof-jsonc","version":"1.1.6","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","global":"^4.3.2","jsonc-parser":"^2.0.3"},"licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.6","dist":{"shasum":"c3bc5e98579a4a60da56b003c1fc202551951469","integrity":"sha512-GVPoOWHlRxPSxzs3Z5zY9lSO5jcH7YX9IOkpsniyk49SxqvmI+ZYgxerxyoNMPJSeXke7TQtWt+E41VWnmNiXQ==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.6.tgz","fileCount":23,"unpackedSize":285891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwpgNCRA9TVsSAnZWagAAxhkP/3jyJWMGKAzVcf5gzj/i\ntaT3JnCICbjRvMZFFFlIUb1bG+f3Zyb9qTI/r2C44eCxv/2c6cbf6nPa6pKR\nsP8l2lRL50OHfgECb/MScCNba+sDTg7iy0MqcMyD/0XE15j8hc8ND/VFtIf8\njpxiumy9TqQDmY23KFEYRdSGAqWYEH4UUsm8ZSZRzqn2fuWEpKuSVyc1csHC\niMa6szjYOMalPYexWm4Ln7UZoPfTjVHkL+cvOlBNM1xicdbupKkK1n3Tl7HC\nhEidw1uD5W0vMrO2EWtIkLOI8z2rzB3iJ7aOjxLqlDMks7Zfu4tvqW7egIQZ\nS6HGHYhFYaHhycnoFK1bfSui89QW6eFQEQDib7hU16mdLocRB3h8ssKDi8x7\nIkZmGDNENPGAw8/6Sl3NJ2e1J4tNtmBA32GW+Gd74oTc0PUe96TYqKZy/G4q\ni8Cu5qkwHb2r/YHeoqBbqdhKV8FrvQf+7tKue/cS2gv7gvxTzDSs+tklEHQL\nY4cDDQiuAF3uSgRCi/nh7tCnYo1D+mLuoDUjOIiG8uk7dYR/HkmM+4C3jyTO\n+mUveBOBHz7R2tWmxnPzQ+32wFRr78wS1jzH5BRhqp3jr5+UghZrXYL5+Wdp\nkil2nr2JqFSrujRNWyP+/EyWs5yGR3paxgwGdT5XjX3yILQO1v7xAcX4CBfF\nKsYX\r\n=50rz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfCtxgk2rpN124K3IecrN48vv+t9Qb7vCnEm8RnufrVAiBqGPOTgN4O3xGK4RqvskOaX0LtmOlK8ad3zwvNMf957Q=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.6_1556256781170_0.13964390692509454"},"_hasShrinkwrap":false},"1.1.7":{"name":"typeof-jsonc","version":"1.1.7","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.7.0","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"@microsoft/tsdoc":"^0.12.8","change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","global":"^4.3.2","jsonc-parser":"^2.0.3"},"licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.7","dist":{"shasum":"2e758d13e7bce4a9cda41031d27a84d2fda8de4a","integrity":"sha512-S0HMq5yGbiESow8wwfCjb9D8b3bvQb4cMUxv4Liee4GvccpKRfmZORyioGToVuqqpArzLZB+9LB/tlyz54WHcA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.7.tgz","fileCount":23,"unpackedSize":285880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwpqHCRA9TVsSAnZWagAAmr4P+wV4O3goq5ADOxenp+Cr\npL5JUxjxFZl9BVgMdJFs3aBfYCeDh8FR4u2aLncMNISGZkTLFrAXYlvgQrJD\nmIsPKksKjQWRcAJKUuhsa06kPHuyLAGLUgbyOgo/0T7SCxrYCSHdOXBTh6mb\nvj7IC5vxK2LvROycrhvWdNrnpCEJzD7z2g/0BwtfFy4NBpFPOUGnh0xGH4sS\n35BtNCkX+eYPyHOxjWGkPCI2C9L5vp9eHwhHk6bafqwHePzuJ3XlPJ1teG1q\nbaVZKIPfBeus5DHJnI+9EiZQx0T2WyHTi02ekKMxr7mg7vzuLevlNMINKa08\nmFz7ZG1u6pRtJcsIRJ6Q0d2y+coNsQNl8aibRa+B/UONTbau1aAfXvxr980o\n+eKEfo/Ap3dOwH+C9IkFvpldcNPcaMssJmj7FsieCS3xMa7GBn0UTPaj6d5Y\nB3qjn8vUvYW2yHQXbj4VL2DY3cCrP6dCxg7CW5/G8WvZGFklICbbG+eeNjX0\n4Go2JUMYn3PoCQwAUB1yAnKF0KvdOB47XB9GvzDEFNfBx3i/WNjH92O1E2s1\nqfGZeLajjat1kYL2TBE8peVxJ3Dinb3ftanpHP8I0YA0/VTzJe1feT6LMgeY\ne7krSiE8liWvYIMELQcIKW64rl10n74OEp97kxr9mp5hB78+zDhjRs7Z2ePg\n14zc\r\n=fds3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmk1iJTp/xnQXP5qt5Dt0K584/s7bFvk93l9Qk0QihAQIgAl8GcQwi9JtfYV8O61qMN5G3fnSxF0ZTL8HQq9BIEL0="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.7_1556257415018_0.20244877830421415"},"_hasShrinkwrap":false},"1.1.8-0":{"name":"typeof-jsonc","version":"1.1.8-0","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.0.3"},"readmeFilename":"README.md","readme":"# typeof-jsonc [![npm version](https://badge.fury.io/js/typeof-jsonc.svg)](https://badge.fury.io/js/typeof-jsonc)\n\n`typeof-jsonc` is a library for Convert json or jsonc string to typescript type (interface)\n\n[Online Playgrounds](http://lanfeng.fun/#/typeofjsonc)\n\n## Support\n\n- Basic types\n- Array types (support auto merge)\n- Comments\n- JsDocComments\n- Custom naming\n- Json\n- Jsonc\n- Not standard jsonc or json\n\n## Usage\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### Demo\n\n`Jsonc string`\n\n```jsonc\n{\n  \"barr\": [\n    // aaa\n    \"aaa\",\n    \"bbb\"\n  ],\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ],\n  \"a\": \"hello\",\n  \"b\": [\"a\", \"b\"]\n}\n```\n\n`Convert script`\n\n```typescript\nimport fs from 'fs';\nimport path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'Response', {\n    prefix: 'I',\n    rootFlags: 1,\n    disallowComments: false,\n    addExport: true,\n    singleLineJsDocComments: true,\n  }),\n);\n```\n\n`Output`\n\n```typescript\nexport interface IResponse {\n  /**  aaa  */\n  barr: string[];\n  /**  this is name  */\n  name: string;\n  /**  this is demo  */\n  demo: IDemo;\n  /**  this is arr  */\n  arr: (IArr | number)[];\n  a: string;\n  b: string[];\n}\n\n/**  this is arr  */\nexport interface IArr {\n  age: number;\n}\n\nexport interface IDemo {\n  hello: string;\n}\n```\n\n## API\n\n- typeofJsonc(jsonc: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n  singleLineJsDocComments?: boolean; // default false\n}\n```\n\n| option                  | type                     | default                              | desc                                                                                                                 |\n| ----------------------- | ------------------------ | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |\n| prefix                  | string                   | \"\"                                   | type name prefix                                                                                                     |\n| onName                  | (name: string) => string | (name: string) => `${prefix}${name}` | Custom naming If this option set prefix will not work                                                                |\n| addExport               | boolean                  | false                                | Add export keywords, when set true rootFlags set will not work                                                       |\n| rootFlags               | number                   | 0                                    | Identifiers are e.g. legal variable names. They may not be reserved words None = 0 Module = 1 InAmbientNamespace = 2 |\n| disallowComments        | boolean                  | true                                 | Whether to prohibit the generation of comments                                                                       |\n| singleLineJsDocComments | boolean                  | false                                | Single-line display when single-line comment                                                                         |\n\n## Version\n\n### 1.1.8\n\n- Fix addExport bug\n- Pack umd and es lib\n\n### 1.1.6\n\n- Support singleLineJsDocComments options\n\n### 1.1.5\n\n- Support convert not standard jsonc or json\n\n`Standard jsonc or json demo`\n\n```jsonc\n{\n  \"name\": \"test\",\n  \"age\": 13,\n  \"loves\": [\"A\", \"B\"]\n}\n```\n\n`Not standard jsonc or json demo`\n\n```\n{\n  name: '',\n  age: 13,\n  loves: ['A', 'B']\n}\n```\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.8-0","dist":{"shasum":"7ad36ffa7c34d4a1434e14ff9eab73a99ff5d4bf","integrity":"sha512-0Pn+b6Veag+YncQo5UTbmuvjhb+d+jkVIOfgQPdqNyGTTsAVrRP0g8E1o5RiuO0yQzyrbGZ+qkNcybBlhe8nag==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.8-0.tgz","fileCount":27,"unpackedSize":679252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc1kwfCRA9TVsSAnZWagAAnIAP/30bvxyThWU+c83RRCzk\n6E/9kiLg9rzSWpapRD5YIQp0ZZxa5swPPqtB1rKAvHkh0m+PJp8+aSIdrwl5\ndYqwp/IpGZfbIqTFZ2lo3+Lh+lzinqTonoq1PUtb/0MR2CI1oLRpgrm98V9d\n0TawWaTk88zFP7YgVHRD5qcIgqzxVBcaw5y16rsTdZTIzKg69RLbEMmluqxh\nOkvNCdoidNprOFwXhzoHgk8VTLqUoamWsq0WruMfiolbQti+QbcIZ1W0hf7R\n3MjRv7y3qnicVmfym1m/Cy+QCK93XjJqI1Kil7Ngfpn8tHGiqZ+Sd7hYMS8j\n78UMq52t0wctsDS8WhMOg+VxQWI6nO61tvfhyR/mDkGKlJ+0YyiItDUaXXDu\n8fZiM532r1+HMWff47/KkY6WShP+LUjpQ/iVvP4gUBaz+9RwUioDkMk2Tc20\n1K0OBhjlKPnbpS7fulPMS7u3uCRK/qN8oL+AFYD6eY/yK0zn3V+JFDMNfljk\nRnN6G6gruWMPT+GGGY/j4ErXEb7FMpEZDmBForWwsBOYvcCAJC6GashNffLm\nSwIaI4L1tqr/j5yv1tE9kOsASgsx+uIUUnsObTnSEPBHf+MvNDeuO1zj65/I\nYn0vupOstvCbMcz5f6t3+SG3ac9eOjzPpAJ17Sibpgg3G2pUuXZyjslomawm\n0nM4\r\n=9dja\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRCKKsCG9Qdq68oKpOPNpXUZ/V5c2yudZCbuxJxW8JZgIgc07qnH/AUftpAM9d6TjQtTyxvy1gPiMMtW5Da++dBUY="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.8-0_1557548062845_0.0538424166296807"},"_hasShrinkwrap":false},"1.1.8":{"name":"typeof-jsonc","version":"1.1.8","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.1"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.0.3"},"licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.8","dist":{"shasum":"de80d0bc66992ae9a0f8187830e271cf9e2e1c46","integrity":"sha512-FOUomGMzpWuvvBl/ufxN9TkeKdcFg+2kB3DOBoSklji10qjLZY4GMxhnl45Fe2Y2ZDb1uumQiHZ/qWzQTkICmA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.8.tgz","fileCount":27,"unpackedSize":679250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc1oZ/CRA9TVsSAnZWagAA6fAP/jtajTHuHGNENio3t9Lg\nGzf5xPx8Kb1NRWbcSBvMaxBvnC0aXEL1i7s5+H4VDG7Xcut200wSje7+41N/\netdf3aIiIY49ZrjZU8vtyKtxyzVhs2qnP0oxtyjEa1B4qqDMzhEH+/GLNLZD\nW+FGpR99dGGdw6fqaGAyaKGjAxxWp59YPodv5s/RDCPuxSTnfxwm0Fiss4/W\nV2Gpau9Kxpie8yNJS7P64Ci3FAybn4oRl1PMopF4SMJ5731Ok4N1MQuNwSnh\nJZXP4KbmFknzbOf0MviWDu5FqKIU8oVAVuIfnhKEOmihWdQPjN6VnnEWv5by\nKgNmD7JgfdMs8jXNNYHwe0Ki0nr4JfAicozqQcrwL3ewhiSb8l6FxStZ+tom\nbk51x4M/BS3YWoU6xeF/fp+KFyHiBmN7I2J/I5IlEC8m1suAOqBJUGzk3PMh\nx/BbocTwruJBrZLPjdPX+hEEFtwTpz9MN8RTIjUMMOC7FdDwQjL8YmmsGqqJ\nlhokF04cEF+N2gFQPbOR9nZkpWym7253BPYW8hy3uViwF3D2ecShFXUZx9nE\n1p2Mn2zYAEDXTx414PmPEnC+yrr6di9JMqWz1STzBa20ALdoqwyvaX6Ajaah\nx2G4dXCT8+J2DXZl3MRGm1KGGfOtWh+7l2hwSsj0ih9jJb/UgxGFaAJdc9P2\nT7/P\r\n=Bgv2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGoCGp4OikxdKlgYur+7mnIh8I6jF7glA+T0QaxPlL4lAiA9m7h+P6FgLx2Qo1JNPJA4cnWRfaN+Kevl7H9Nip8QFg=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.8_1557563006854_0.5580480197800082"},"_hasShrinkwrap":false},"1.1.9-0":{"name":"typeof-jsonc","version":"1.1.9-0","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","hash.js":"^1.1.7","jsonc-parser":"^2.1.0"},"readmeFilename":"README.md","readme":"# typeof-jsonc [![npm version](https://badge.fury.io/js/typeof-jsonc.svg)](https://badge.fury.io/js/typeof-jsonc)\n\n`typeof-jsonc` is a library for Convert json or jsonc string to typescript type (interface)\n\n[Online Playgrounds](http://lanfeng.fun/#/typeofjsonc)\n\n## Support\n\n- Basic types\n- Array types (support auto merge)\n- Same struct auto merge\n- Comments\n- JsDocComments\n- Custom naming\n- Json\n- Jsonc\n- Not standard jsonc or json\n\n## Usage\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### Demo\n\n`Jsonc string`\n\n```jsonc\n{\n  \"barr\": [\n    // aaa\n    \"aaa\",\n    \"bbb\"\n  ],\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ],\n  \"a\": \"hello\",\n  \"b\": [\"a\", \"b\"]\n}\n```\n\n`Convert script`\n\n```typescript\nimport fs from 'fs';\nimport path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'Response', {\n    prefix: 'I',\n    rootFlags: 1,\n    disallowComments: false,\n    addExport: true,\n    singleLineJsDocComments: true,\n  }),\n);\n```\n\n`Output`\n\n```typescript\nexport interface IResponse {\n  /**  aaa  */\n  barr: string[];\n  /**  this is name  */\n  name: string;\n  /**  this is demo  */\n  demo: IDemo;\n  /**  this is arr  */\n  arr: (IArr | number)[];\n  a: string;\n  b: string[];\n}\n\n/**  this is arr  */\nexport interface IArr {\n  age: number;\n}\n\nexport interface IDemo {\n  hello: string;\n}\n```\n\n## API\n\n- typeofJsonc(jsonc: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n  singleLineJsDocComments?: boolean; // default false\n}\n```\n\n| option                  | type                     | default                              | desc                                                                                                                 |\n| ----------------------- | ------------------------ | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |\n| prefix                  | string                   | \"\"                                   | type name prefix                                                                                                     |\n| onName                  | (name: string) => string | (name: string) => `${prefix}${name}` | Custom naming If this option set prefix will not work                                                                |\n| addExport               | boolean                  | false                                | Add export keywords, when set true rootFlags set will not work                                                       |\n| rootFlags               | number                   | 0                                    | Identifiers are e.g. legal variable names. They may not be reserved words None = 0 Module = 1 InAmbientNamespace = 2 |\n| disallowComments        | boolean                  | true                                 | Whether to prohibit the generation of comments                                                                       |\n| singleLineJsDocComments | boolean                  | false                                | Single-line display when single-line comment                                                                         |\n\n## Version\n\n### 1.1.9\n\n- Implementation refactor\n- Same struct auto merge\n\n### 1.1.8\n\n- Fix addExport bug\n- Pack umd and es lib\n\n### 1.1.6\n\n- Support singleLineJsDocComments options\n\n### 1.1.5\n\n- Support convert not standard jsonc or json\n\n`Standard jsonc or json demo`\n\n```jsonc\n{\n  \"name\": \"test\",\n  \"age\": 13,\n  \"loves\": [\"A\", \"B\"]\n}\n```\n\n`Not standard jsonc or json demo`\n\n```\n{\n  name: '',\n  age: 13,\n  loves: ['A', 'B']\n}\n```\n\n## License\n\nMIT\n","licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.9-0","dist":{"shasum":"3dc656615e28a37af95f189fc8657a652fd3fad1","integrity":"sha512-QgekGyskWp+u3/RrSHYU/6vx7d/yon7FcUCaUt4FGW8QNjyO8nWdJmCZgWBmf1pe+MCzbze21G0fsd2rl78Yow==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.9-0.tgz","fileCount":42,"unpackedSize":697298,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc6lrsCRA9TVsSAnZWagAAr+oP/1MmOO8ErC8dRGp+me83\n2ALEuuIknK31vQbWX259j+bxfHSYTX6Q41H7EdI5DwS1TKjFUujI7jEl0zxE\nv8nSZAd20ydp4pca28YFS8fyjcPEBiR8HxUsHCeCt2d1iXNb0QXRwZWYsam3\nx4hSVX/XnKa6dQBIqKidflX0kJeYK9EzuoXoI18fiQOclFrdr378NT8OCmhV\nD0qnPZe6R25ZAiESGvyJM45dJm7yQGBYwBNQHskRn1XhQ34iGu2YkjTnGCo5\noe1yeqRr/crFUGem5Wak9cwFALnAlB5jsXslnJNnc0RvtZGhbSWR9Zq7/6ba\n4xAZRCvmjbm7YwkggOtaIN0WmtxfUoXqnb6Bq1NUab41xU9meHCO8totluvy\ny07LsGauDicHcFzsuPxdNYLntKl/Foz9nIBa9K8o+jMm2xMDDotePBctIt5r\n6Vuowyd8TNBS6qf692kQ1/COzdBJeH0dphFftB8StqCn9kEx/9Bof/9mBSxh\n+7JXnG/SePEH5d+tScgoJJ8qATd+dUnZFpnYnQSY6jvL7YFkGTbl/livOPsD\nyVvk9BEBphPlqjdl+DzCrZ8uanSfpRppO1vqf+bhd6Q0uyW7ODhbpm2wly7H\ntkGOgiKMNejvtYGEFEva69x5ZSJ3j7d+QejDF/r78snN3euD7CuIXzQpGw+U\nR3pc\r\n=np5N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFxI80oelw7Yy9g1VnuhC5K+gWktJ1tckbgBadAFuY+AIhAMPTqfDdR0nnuqjjzltR851AXlXFgI2JfQFHOZRIqwAF"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.9-0_1558862572042_0.7896646159400182"},"_hasShrinkwrap":false},"1.1.9":{"name":"typeof-jsonc","version":"1.1.9","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.1.0"},"licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.9","dist":{"shasum":"5811d8c82256afdc969251f3d21a23f8e30dc338","integrity":"sha512-uPok2u8QXAt4ZB2mEJK7Z7FWGmsyqBH0EYDpZjOL4FbVj33NgJwaVOeRIlNSC3lhA4g7+W24z1oKrgcO6nFpJA==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.9.tgz","fileCount":42,"unpackedSize":696769,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8fd+CRA9TVsSAnZWagAAxBsP/i18Gj1WoxjsiIvXDBGP\nZByRp2g8r5D4xf2fCremfobhF/kjCHbquRLevPAg/wq0Vopg8gNt3li/tq1m\nDEdtsSkXqy2jC9xjx1GQbc401me3L/N27KDDmYE8BbOdI+FNE7tu2HPBvCvS\nn47MjMwcCDxwtWarLuccxcqpvsVJGDqQZsumnUOo29kfNy3tHd8QflYk83V1\n7eL/kPu76StH7vUJ/TvCe7ePeQVmTnav9cc7U7NJtE9l/fJP1JAYlBFZVS4O\noakU1wmt0+18blQ1dnjTRRcDSPeaSPb5Ui6+sJqr5T1P/eRbYJBwrjLIoSJ3\n0mRY70k49dkIrq3y7/3cD5STeanyPHPtJWzcohAX/qL7q6Par07YF97dskNa\noJEGi8VSHzfWLZk5AO6W97SzRMWGLYxugzVYvb7XD08U0LNLVn9UCjcrqQhq\nucjN0onbPXfMRbWhkpYo17EkvqM9kcoxQBv3zIaoA4eb6gPq36D32KXrIWF9\nKn29hAFiBjv+evX5eO85rUf59WsobEruSWpZLi5u0OZuq3XX56J8WfQ8w/9Z\nL73RVMhu1Ud4Jb02Z5FJqKJ1CJS+J65kyGvJHDFRMuIdVWlPPujk1zgfUslF\nSevM9AE6gHUtvewkKkOhuKvVfcWA1Il88dBqdNzHBeMfZ23QGgf8IaMHU400\ncals\r\n=JnD2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzvH3izunNt1kFIlKm++w0vpjjAv7POP6CIyw/ZWy6MQIgWtUtEGNc2X9fmi/U0eoG2DGya9ycYePndIWbnbItLrE="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.9_1559361405493_0.6546598624218278"},"_hasShrinkwrap":false},"1.1.10":{"name":"typeof-jsonc","version":"1.1.10","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"rollup -c && np --any-branch"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^23.6.0","np":"^3.0.4","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.1.0"},"licenseText":"MIT License\n\nCopyright (c) 2019 wulunyi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"typeof-jsonc@1.1.10","dist":{"shasum":"b0a584e64dbf6a9cdf9272e8cbcd267780b4d849","integrity":"sha512-oUtp3NoziXJP7OLiSMF3gSzTgfq74PHA/rdQyHdtrLo7I6lT+vsw8tUaRzWYn5vy8lVNpa5Ij07mvV4kUqHjuw==","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.10.tgz","fileCount":42,"unpackedSize":673482,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc94ocCRA9TVsSAnZWagAAcFwP/A+01beIlkKSWx5OJiBJ\nn1Q8gwgqyURvIzHmRdOrMAxSGWp/tFxtMpVWcAGDedmkbqKhHBEkMymoGE1r\n9IYVM/hQdeLWcFaEGNjCyQdqdSbzjabgqxST+rbAeI2qlnJCt3jwrnxMlpDP\nKB+N4cN/lhkZGt9MXVHSuMAX2buWPdp5afjkCDQxBFXGxYMV9a719az3OPHM\nANspC5GBJeWSjXiBPBhy5ZOTjyXqV8dnQmB67KgImG+CPpabogEb1Hkqm22x\nBwSYwT/AkdEhEhDGD9vdia94FMHAtOJ3fezySD9U3qoXNZ5j08DrEcb4zAps\nXgKOWscrvxkH+kMqUZSabGWShLRVTm3Fx/A9TkUToe6c7WqkvsjOKZPqW6TB\nKZtQm/bbGpZGk/trPO8oOai4Oo2Ey8TP8bxkwqHAyCRLZp17cnwBAndOPLv1\nr9hx/T0rQuLEuSWOiw8XfZm45sHbaSkOD8oFlWVW6CZE6go5FmJSP6e0N2V9\np+oj3cm1AtbbiLlh04g/NdKOnlrgHIM8sGTBIj2k6pVsRANtpMMe9YrNsjcL\nFioCNJIPrC5ukZLsOw5qUMGFE2MVO6/Op++m7E3shEeLb0jcV4kFpNwslyL0\naQARwcrGKccCx9/h5FCH/nz0XRoaFek6tEa246kB4mmGUQlr3se3g64YPYPh\nhHIt\r\n=egx6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA13kCh+ZDIgoUVdXAmrWxeWS6U4k8onSQUfxcPsaTI6AiBxeGk6ibWVXdnTE93yKGKeG4pnhT3Rj+DwZ0Inwx4Kcw=="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.10_1559726620216_0.6252863300564631"},"_hasShrinkwrap":false},"1.1.11-beta.0":{"name":"typeof-jsonc","version":"1.1.11-beta.0","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"git+https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"release-it","release:beta":"release-it patch --preRelease=beta"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"hooks":{"before:init":["npm run lint","npm test"],"after:git:release":"npm run build","after:release":"echo Successfully released ${name} v${version} to ${repo.repository}."},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^24.8.0","np":"^3.0.4","release-it":"^12.3.0","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.17.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.1.0"},"readme":"# typeof-jsonc [![npm version](https://badge.fury.io/js/typeof-jsonc.svg)](https://badge.fury.io/js/typeof-jsonc)\n\n`typeof-jsonc` is a library for Convert json or jsonc string to typescript type (interface)\n\n[Online Playgrounds](http://lanfeng.fun/#/typeofjsonc)\n\n## Support\n\n- Basic types\n- Array types (support auto merge)\n- Same struct auto merge\n- Comments\n- JsDocComments\n- Custom naming\n- Json\n- Jsonc\n- Not standard jsonc or json\n\n## Usage\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### Demo\n\n`Jsonc string`\n\n```jsonc\n{\n  \"barr\": [\n    // aaa\n    \"aaa\",\n    \"bbb\"\n  ],\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ],\n  \"a\": \"hello\",\n  \"b\": [\"a\", \"b\"]\n}\n```\n\n`Convert script`\n\n```typescript\nimport fs from 'fs';\nimport path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'Response', {\n    prefix: 'I',\n    rootFlags: 1,\n    disallowComments: false,\n    addExport: true,\n    singleLineJsDocComments: true,\n  }),\n);\n```\n\n`Output`\n\n```typescript\nexport interface IResponse {\n  /**  aaa  */\n  barr: string[];\n  /**  this is name  */\n  name: string;\n  /**  this is demo  */\n  demo: IDemo;\n  /**  this is arr  */\n  arr: (IArr | number)[];\n  a: string;\n  b: string[];\n}\n\n/**  this is arr  */\nexport interface IArr {\n  age: number;\n}\n\nexport interface IDemo {\n  hello: string;\n}\n```\n\n## API\n\n- typeofJsonc(jsonc: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n  singleLineJsDocComments?: boolean; // default false\n}\n```\n\n| option                  | type                     | default                              | desc                                                                                                                 |\n| ----------------------- | ------------------------ | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |\n| prefix                  | string                   | \"\"                                   | type name prefix                                                                                                     |\n| onName                  | (name: string) => string | (name: string) => `${prefix}${name}` | Custom naming If this option set prefix will not work                                                                |\n| addExport               | boolean                  | false                                | Add export keywords, when set true rootFlags set will not work                                                       |\n| rootFlags               | number                   | 0                                    | Identifiers are e.g. legal variable names. They may not be reserved words None = 0 Module = 1 InAmbientNamespace = 2 |\n| disallowComments        | boolean                  | true                                 | Whether to prohibit the generation of comments                                                                       |\n| singleLineJsDocComments | boolean                  | false                                | Single-line display when single-line comment                                                                         |\n\n## Version\n\n### 1.1.9\n\n- Implementation refactor\n- Same struct auto merge\n\n### 1.1.8\n\n- Fix addExport bug\n- Pack umd and es lib\n\n### 1.1.6\n\n- Support singleLineJsDocComments options\n\n### 1.1.5\n\n- Support convert not standard jsonc or json\n\n`Standard jsonc or json demo`\n\n```jsonc\n{\n  \"name\": \"test\",\n  \"age\": 13,\n  \"loves\": [\"A\", \"B\"]\n}\n```\n\n`Not standard jsonc or json demo`\n\n```\n{\n  name: '',\n  age: 13,\n  loves: ['A', 'B']\n}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","gitHead":"03b91e9cd969bd50e97f05405b256683811e368e","bugs":{"url":"https://github.com/wulunyi/typeof-jsonc/issues"},"homepage":"https://github.com/wulunyi/typeof-jsonc#readme","_id":"typeof-jsonc@1.1.11-beta.0","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-5Uk0+MmhAOmlqy3emxwJq2oEMH5cCN5IahD25uFGmDD+CRtQdg2rV4VHzvfExLlXWMnzovToyEEXCdWIXCHYGg==","shasum":"a78b44eea4fa75e7bb430a6a7fd2948db71e12ee","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.11-beta.0.tgz","fileCount":33,"unpackedSize":421795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdBLWbCRA9TVsSAnZWagAA1psP/3WuaWhm0bmvTHbmioDv\n0B7Ax9aUL8Im4AweUBmPeYvscE07C19q7sFYxvhVllumEzmNxCOJsqYQPIo6\n/ev7BSRChoIC0GgmfWoYVXGdxoOA4KA57dm7ivVr/glwj5S6+/AvR0dtfYWm\nEYPfENpSvXKxb+W7QdamgVsIqYxMjCNIO+Em8FPbcbGifrkaIDyeF8755e+o\nUO2G5A+QBnupq5V+dfsffyV1UdQNoIe/FVSs8t4ylJKK/IkplhBPaFcYjNIj\ni0sT9rOJ2+yk+o/Lt6P5XieEzS2QnKLsIq7n5AS6IlNGXCIxwgqzWTJmczt7\n1eHJ58uaMtQA+1v/ihXwRCTHzUpHUDrle40nrow4o4wc7Qvi5/q/zpttPcaU\ntUefMemGAOlu0cFlqUlWqTkrDUvKvfqAb5FH2ulZnTa0BZkAHC2+fv44pnUA\nV8wd1rEoY982c3Iku96Ip1rzZt5B3rOCzKh4D3XaSc5UPYXjuxTcAayyexa4\nVD+PGQpna+uFXL9s6WFg2jtmBgYifBntFGknmIwELBv7FFjVydm0AMF00rMo\n6tnYIRLknVmfQHML7mx1BQSuCXj62puM9QNqzvcsBrgICSmxDxeWvSm0hp2S\nRKqxVBr7rp26+2a5AyY8xFr2mJJViHpJye+5F+K8MSuqy/YaiMpGxCM/V/3A\nNQkt\r\n=fKu7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFlJq0QAd9VuJaykCfC3/D7if/OJLlb5cBUtc/UkY5MuAiEAqsPWYd6vYBRd3vekwf37z9FarhbnLLNIyPWF4JeHFso="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.11-beta.0_1560589723325_0.7417492624883388"},"_hasShrinkwrap":false},"1.1.11-beta.1":{"name":"typeof-jsonc","version":"1.1.11-beta.1","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"git+https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"release-it","release:beta":"release-it patch --preRelease=beta"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^24.8.0","release-it":"^12.3.0","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.17.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.1.0"},"readme":"# typeof-jsonc [![npm version](https://badge.fury.io/js/typeof-jsonc.svg)](https://badge.fury.io/js/typeof-jsonc)\n\n`typeof-jsonc` is a library for Convert json or jsonc string to typescript type (interface)\n\n[Online Playgrounds](http://lanfeng.fun/#/typeofjsonc)\n\n## Support\n\n- Basic types\n- Array types (support auto merge)\n- Same struct auto merge\n- Comments\n- JsDocComments\n- Custom naming\n- Json\n- Jsonc\n- Not standard jsonc or json\n\n## Usage\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### Demo\n\n`Jsonc string`\n\n```jsonc\n{\n  \"barr\": [\n    // aaa\n    \"aaa\",\n    \"bbb\"\n  ],\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ],\n  \"a\": \"hello\",\n  \"b\": [\"a\", \"b\"]\n}\n```\n\n`Convert script`\n\n```typescript\nimport fs from 'fs';\nimport path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'Response', {\n    prefix: 'I',\n    rootFlags: 1,\n    disallowComments: false,\n    addExport: true,\n    singleLineJsDocComments: true,\n  }),\n);\n```\n\n`Output`\n\n```typescript\nexport interface IResponse {\n  /**  aaa  */\n  barr: string[];\n  /**  this is name  */\n  name: string;\n  /**  this is demo  */\n  demo: IDemo;\n  /**  this is arr  */\n  arr: (IArr | number)[];\n  a: string;\n  b: string[];\n}\n\n/**  this is arr  */\nexport interface IArr {\n  age: number;\n}\n\nexport interface IDemo {\n  hello: string;\n}\n```\n\n## API\n\n- typeofJsonc(jsonc: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n  singleLineJsDocComments?: boolean; // default false\n}\n```\n\n| option                  | type                     | default                              | desc                                                                                                                 |\n| ----------------------- | ------------------------ | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |\n| prefix                  | string                   | \"\"                                   | type name prefix                                                                                                     |\n| onName                  | (name: string) => string | (name: string) => `${prefix}${name}` | Custom naming If this option set prefix will not work                                                                |\n| addExport               | boolean                  | false                                | Add export keywords, when set true rootFlags set will not work                                                       |\n| rootFlags               | number                   | 0                                    | Identifiers are e.g. legal variable names. They may not be reserved words None = 0 Module = 1 InAmbientNamespace = 2 |\n| disallowComments        | boolean                  | true                                 | Whether to prohibit the generation of comments                                                                       |\n| singleLineJsDocComments | boolean                  | false                                | Single-line display when single-line comment                                                                         |\n\n## Version\n\n### 1.1.9\n\n- Implementation refactor\n- Same struct auto merge\n\n### 1.1.8\n\n- Fix addExport bug\n- Pack umd and es lib\n\n### 1.1.6\n\n- Support singleLineJsDocComments options\n\n### 1.1.5\n\n- Support convert not standard jsonc or json\n\n`Standard jsonc or json demo`\n\n```jsonc\n{\n  \"name\": \"test\",\n  \"age\": 13,\n  \"loves\": [\"A\", \"B\"]\n}\n```\n\n`Not standard jsonc or json demo`\n\n```\n{\n  name: '',\n  age: 13,\n  loves: ['A', 'B']\n}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","gitHead":"171c134230586db01ec47c35a431eb316dea37d1","bugs":{"url":"https://github.com/wulunyi/typeof-jsonc/issues"},"homepage":"https://github.com/wulunyi/typeof-jsonc#readme","_id":"typeof-jsonc@1.1.11-beta.1","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-w15PCHTmiRpDxovQYrMtnsxt4keGUGHIzMXwd0QXI2pj+a9OlyX0Hhvn0TjB4fNTKTGzB4OpQR8bF32sseo5bg==","shasum":"d637b1bb48ab95164face64ff852e331b5d3f2da","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.11-beta.1.tgz","fileCount":34,"unpackedSize":421746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdBLcxCRA9TVsSAnZWagAAtZ8P/jyHfx/dJ6z+xGDOP9Ly\nX+4aicYxY5ujEy1Uxe60obJjLLlZPnVRqCKVYDMzY/7YCLAnjNFGJKI4A+mK\nqkwHZmcIKcB8lu0Hs6iKNrnflnNwYrz14LcMvU+BL2gPPzvmP7hCZG/JgwEZ\nIhxNfqI5ADhTtVVrYCx1UIQTs0Pakqq4ADT1NFK8WnTYz9lscDknRSNW8LrQ\nwAYuFNgPczr6nN8KhR3JEgtcq+VkZBWnUxPJk8DO1yJLpD0cjBI4uaeT6wOd\nGSwjCOWSXx4NISFzdJ/JTnG2oAlPEIlz12ZWc57VZhQD3jbZdabd4q1KDry4\nCSZyGa0AcPnsNkhXaN1g6XbzILijbbH1mJYpzoZPUk2USYQRwBw+KksRivnv\n+bfX8IRrS1TV/V6dxCoStD+9MXw/ycoE54FYR5ukj+Padxs7Q5kH1tdSg+Gx\nunqbbxNzU5RexiLl7H3hYqgi5ubD8hxCk6QpT9Nw2X6TQWL8W5mlJsTtMoYn\n2Yro+6LMuiuM/td2+76EBVlW6UI7MHJYWauKNhdw1mZmJkxSq12njF+0YKB9\nBZ5Wriz1EkF+AsV8qJ20l+DEN+F1DnqAE1PDiH3FdYz3PbaIFwFTbjvr05GZ\nMTl6FkoqHVKTt/GobaFkWymSV5wOIp/2NPNDcN2MJjNh1M5tFxhfdmMWizir\nDy5G\r\n=lpeJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD77FuPU2O9F8DcaIWFQPvJUeZbRx9zXuRsZH3SkUwQHgIhANqcTky6kXRJdj7gU4uNrbOSipb8qYd/Yyb+R9+/nwXm"}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.11-beta.1_1560590128964_0.9514823601157876"},"_hasShrinkwrap":false},"1.1.11-beta.2":{"name":"typeof-jsonc","version":"1.1.11-beta.2","description":"Convert json or jsonc to typescript type (interface)","main":"lib/index.js","module":"es/index.js","repository":{"type":"git","url":"git+https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","types":"types/index.d.ts","keywords":["json","jsonc","ts","typescript","types","interface"],"scripts":{"test":"jest","build":"rollup -c","release":"release-it","release:beta":"release-it patch --preRelease=beta"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{"@types/change-case":"^2.3.1","@types/jest":"^23.3.9","@types/node":"^10.12.6","jest":"^24.8.0","release-it":"^12.3.0","rollup":"^1.10.1","rollup-plugin-commonjs":"^9.3.4","rollup-plugin-node-resolve":"^4.2.3","rollup-plugin-terser":"^4.0.4","rollup-plugin-typescript2":"^0.20.1","rollup-plugin-uglify":"^6.0.2","ts-jest":"^23.10.4","ts-node":"^8.0.3","tsconfig-paths":"^3.7.0","tslint":"^5.17.0","tslint-config-airbnb":"^5.11.0","typescript":"^3.4.5"},"dependencies":{"change-case":"^3.0.2","dts-dom":"^3.2.0","esprima":"^4.0.1","jsonc-parser":"^2.1.0"},"readme":"# typeof-jsonc [![npm version](https://badge.fury.io/js/typeof-jsonc.svg)](https://badge.fury.io/js/typeof-jsonc)\n\n`typeof-jsonc` is a library for Convert json or jsonc string to typescript type (interface)\n\n[Online Playgrounds](http://lanfeng.fun/#/typeofjsonc)\n\n## Support\n\n- Basic types\n- Array types (support auto merge)\n- Same struct auto merge\n- Comments\n- JsDocComments\n- Custom naming\n- Json\n- Jsonc\n- Not standard jsonc or json\n\n## Usage\n\n### install\n\n```\nnpm install typeof-jsonc -S\n```\n\nor\n\n```\nyarn add typeof-jsonc -S\n```\n\n### Demo\n\n`Jsonc string`\n\n```jsonc\n{\n  \"barr\": [\n    // aaa\n    \"aaa\",\n    \"bbb\"\n  ],\n  \"name\": \"lanfeng\", // this is name\n  // this is demo\n  \"demo\": {\n    \"hello\": \"world\"\n  },\n  /** this is arr */\n  \"arr\": [\n    {\n      \"age\": 1\n    },\n    2\n  ],\n  \"a\": \"hello\",\n  \"b\": [\"a\", \"b\"]\n}\n```\n\n`Convert script`\n\n```typescript\nimport fs from 'fs';\nimport path from 'path';\n\nimport { typeofJsonc } from '../src/index';\n\nconst text = fs.readFileSync(path.resolve('./demo/test'), {\n  encoding: 'utf-8',\n});\n\nconsole.log(\n  typeofJsonc(text, 'Response', {\n    prefix: 'I',\n    rootFlags: 1,\n    disallowComments: false,\n    addExport: true,\n    singleLineJsDocComments: true,\n  }),\n);\n```\n\n`Output`\n\n```typescript\nexport interface IResponse {\n  /**  aaa  */\n  barr: string[];\n  /**  this is name  */\n  name: string;\n  /**  this is demo  */\n  demo: IDemo;\n  /**  this is arr  */\n  arr: (IArr | number)[];\n  a: string;\n  b: string[];\n}\n\n/**  this is arr  */\nexport interface IArr {\n  age: number;\n}\n\nexport interface IDemo {\n  hello: string;\n}\n```\n\n## API\n\n- typeofJsonc(jsonc: string, name: string, options?: Options)\n\n```typescript\ninterface Options {\n  /** type name prefix */\n  prefix?: string; // default ''\n  /**  customer named */\n  onName?: (name: string) => string;\n  /** Add export keywords */\n  addExport?: boolean; // default false\n  /**\n   * Identifiers are e.g. legal variable names. They may not be reserved words\n   * None = 0,\n   * Module = 1,\n   * InAmbientNamespace = 2,\n   */\n  rootFlags?: number; // default 0\n  disallowComments?: boolean; // defalut true\n  singleLineJsDocComments?: boolean; // default false\n}\n```\n\n| option                  | type                     | default                              | desc                                                                                                                 |\n| ----------------------- | ------------------------ | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------- |\n| prefix                  | string                   | \"\"                                   | type name prefix                                                                                                     |\n| onName                  | (name: string) => string | (name: string) => `${prefix}${name}` | Custom naming If this option set prefix will not work                                                                |\n| addExport               | boolean                  | false                                | Add export keywords, when set true rootFlags set will not work                                                       |\n| rootFlags               | number                   | 0                                    | Identifiers are e.g. legal variable names. They may not be reserved words None = 0 Module = 1 InAmbientNamespace = 2 |\n| disallowComments        | boolean                  | true                                 | Whether to prohibit the generation of comments                                                                       |\n| singleLineJsDocComments | boolean                  | false                                | Single-line display when single-line comment                                                                         |\n\n## Version\n\n### 1.1.9\n\n- Implementation refactor\n- Same struct auto merge\n\n### 1.1.8\n\n- Fix addExport bug\n- Pack umd and es lib\n\n### 1.1.6\n\n- Support singleLineJsDocComments options\n\n### 1.1.5\n\n- Support convert not standard jsonc or json\n\n`Standard jsonc or json demo`\n\n```jsonc\n{\n  \"name\": \"test\",\n  \"age\": 13,\n  \"loves\": [\"A\", \"B\"]\n}\n```\n\n`Not standard jsonc or json demo`\n\n```\n{\n  name: '',\n  age: 13,\n  loves: ['A', 'B']\n}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","gitHead":"32b63060e75d4dea934118a18d2ffacee2452f83","bugs":{"url":"https://github.com/wulunyi/typeof-jsonc/issues"},"homepage":"https://github.com/wulunyi/typeof-jsonc#readme","_id":"typeof-jsonc@1.1.11-beta.2","_nodeVersion":"8.11.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-6lrpHH8iav4ZDh7Z1ZqXci1wSmEyOr0cGU83jq5tW3s2aSbRj3GHw8/dWpdZo++vARaZhpWlPv6vCAkaDuPgFA==","shasum":"c16e828873ac0386cf265116ec3beef134f57049","tarball":"https://registry.npmjs.org/typeof-jsonc/-/typeof-jsonc-1.1.11-beta.2.tgz","fileCount":34,"unpackedSize":421611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdG0lxCRA9TVsSAnZWagAA0SQP+gIfYwVdNJjH0JR7hFSP\ntY+AmbVmT52FnnthQu0j8nwT2kIdcNv6CQQ5eYyE9wA7iM+B/ogV1ENuOOOa\nCPKXTcm/CDKsswlN0VJQEdpock9+z9L+hCA3RRZLHn+fnkrQf1DEosHtwQTj\nX9azPdVs4G+5pOv/oYXZZfBCVw6WbpKfjEWKdPRFgPrB1mb1CsLNv8sm1UwW\nx7vAdSWgRTpV+l8BfQANcnabBSxH8SCXmqoTr5OdDFRAgd6EhOEfZBZ7UYzW\nXKEIbAI1umf6Mt0qtdKoxcBShr/DXu7PeeiPwHzOZcCNP1Gt+DRUqB+oJ/SI\nxK2/QVNbSjUTSUWXOpy9FOCWinVgxT1ZWaz88H6fg53j0JdO29sKBrSywrKm\nyZj5c5W/Qs2MufzeKC+4Hefrs+MFUbtljLUZt2J/SS7DG0bJ5IoquttpEy6H\nRI/ExUzMwlCDWNGfdhkzHN2VBhnOpz09eyh3ib09hSbOJzNWC2s4/66vqQTZ\nGqMAB63pf1iHZTTli3mm08TBN3CSVcCxRUOxy1ZwOi0kLurmilcNE/aIZH8P\nLRHWW6a/F8grmllWx72c//Rexa17TAGbkrwoGTP+TgBF7wwzXOPgs5ZOafRw\nY/SJaboP+D4Qg0OiN2JG9UxdiZbW0aDJavqq3H9Ie3N/UmvgXm+CHOBZc5it\n1bB7\r\n=okza\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2G5fvNmDqdatFKDMvG4HNK3WpXTEaRSqrtt5KbavFNQIgPJrxjTXAx5DIgVckbhwJYdO32tPVxPH821kgz4U92CA="}]},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"_npmUser":{"name":"wulunyi","email":"1174118708@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typeof-jsonc_1.1.11-beta.2_1562069361331_0.8771839849184186"},"_hasShrinkwrap":false}},"time":{"created":"2018-11-17T14:53:46.841Z","1.0.0":"2018-11-17T14:53:46.989Z","modified":"2022-05-22T13:16:11.794Z","1.0.1-0":"2018-11-18T06:51:49.815Z","1.0.1":"2018-11-24T02:12:28.926Z","1.0.2-0":"2018-11-27T09:01:05.186Z","1.0.2":"2018-12-16T01:47:54.496Z","1.0.3-0":"2019-01-25T04:43:40.608Z","1.0.3-1":"2019-01-25T04:46:56.946Z","1.0.3-2":"2019-01-25T05:04:42.116Z","1.1.0":"2019-03-17T14:14:47.543Z","1.1.1":"2019-03-17T14:34:00.241Z","1.1.2-0":"2019-03-18T04:12:39.123Z","1.1.2-1":"2019-03-18T04:16:50.617Z","1.1.3":"2019-03-22T07:58:33.666Z","1.1.4-0":"2019-03-24T03:57:50.211Z","1.1.4":"2019-03-28T02:51:17.683Z","1.1.5-0":"2019-04-05T04:45:50.662Z","1.1.5":"2019-04-15T11:58:54.792Z","1.1.6":"2019-04-26T05:33:01.327Z","1.1.7":"2019-04-26T05:43:35.159Z","1.1.8-0":"2019-05-11T04:14:22.984Z","1.1.8":"2019-05-11T08:23:27.276Z","1.1.9-0":"2019-05-26T09:22:52.270Z","1.1.9":"2019-06-01T03:56:45.760Z","1.1.10":"2019-06-05T09:23:40.520Z","1.1.11-beta.0":"2019-06-15T09:08:43.498Z","1.1.11-beta.1":"2019-06-15T09:15:29.093Z","1.1.11-beta.2":"2019-07-02T12:09:21.444Z"},"maintainers":[{"name":"wulunyi","email":"1174118708@qq.com"}],"description":"Convert json or jsonc to typescript type (interface)","repository":{"type":"git","url":"https://github.com/wulunyi/typeof-jsonc.git"},"author":{"name":"wulunyi","email":"wulunyi@meituan.com"},"license":"MIT","readme":"","readmeFilename":"","keywords":["json","jsonc","ts","typescript","types","interface"]}