{"_id":"@digitalcloud.no/jsonschema-ts-helper","_rev":"2-53b327d706299ba1fce7f3223be349cb","name":"@digitalcloud.no/jsonschema-ts-helper","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@digitalcloud.no/jsonschema-ts-helper","version":"0.1.0","keywords":["json-schema","typescript","codegen","cli","types"],"author":{"name":"digitalcloud.no"},"license":"MIT","_id":"@digitalcloud.no/jsonschema-ts-helper@0.1.0","maintainers":[{"name":"digitalcloud.no","email":"digitalcloud.no@gmail.com"}],"homepage":"https://github.com/digitalcloud-no/npm-packages#readme","bugs":{"url":"https://github.com/digitalcloud-no/npm-packages/issues"},"bin":{"jsonschema-ts":"dist/cli.js"},"dist":{"shasum":"65f347acbd9e195ee40413c6437ca88b78cb6c50","tarball":"https://registry.npmjs.org/@digitalcloud.no/jsonschema-ts-helper/-/jsonschema-ts-helper-0.1.0.tgz","fileCount":10,"integrity":"sha512-Tww3So1VVqt2W/9kDXvC8ET9tVveuD/kOt8Nk2fpcmnb3IG558r89qJH30/U36kRQ5icSLO1Jui3nKDQgoIHTg==","signatures":[{"sig":"MEUCIQDuQKPYshTx+aEuB3t7TEmA9XxJwwv5+9Dy3DbMkbIu5AIgOrvjg6HOzog787sIQElp45kXbSEQI0o0+YCRQUk4Duk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13018},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"vitest","build":"rimraf dist; tsc -p tsconfig.json"},"_npmUser":{"name":"digitalcloud.no","email":"digitalcloud.no@gmail.com"},"repository":{"url":"git+https://github.com/digitalcloud-no/npm-packages.git","type":"git","directory":"packages/jsonschema-ts-helper"},"_npmVersion":"10.9.2","description":"Generate TypeScript types from JSON Schema.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jsonschema-ts-helper_0.1.0_1763249622026_0.8751201202819918","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@digitalcloud.no/jsonschema-ts-helper","version":"0.1.1","description":"Generate TypeScript types from JSON Schema.","main":"dist/index.js","types":"dist/index.d.ts","bin":{"jsonschema-ts":"dist/cli.js"},"license":"MIT","author":{"name":"digitalcloud.no"},"repository":{"type":"git","url":"git+https://github.com/syedrazaalino/npm-packages.git","directory":"packages/jsonschema-ts-helper"},"homepage":"https://github.com/syedrazaalino/npm-packages#readme","keywords":["json-schema","typescript","codegen","cli","types"],"publishConfig":{"access":"public"},"scripts":{"build":"rimraf dist; tsc -p tsconfig.json","test":"vitest"},"_id":"@digitalcloud.no/jsonschema-ts-helper@0.1.1","gitHead":"a4f991627fe1dc1bb030cc1c20cfbb10536a1176","bugs":{"url":"https://github.com/syedrazaalino/npm-packages/issues"},"_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-lWQqmhmsMxOi4zc+O33YQDO1/paW3CKhsXST+U11gVK54Jczz1doWzMNm+qhL5TX+4EveEU++eta496hMv1eBQ==","shasum":"a80ddd2d2fa8fbe2cae42a71d7445d61d1aea670","tarball":"https://registry.npmjs.org/@digitalcloud.no/jsonschema-ts-helper/-/jsonschema-ts-helper-0.1.1.tgz","fileCount":11,"unpackedSize":15615,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCN3tExi9pG290fRw829CR4gNfv2aqU2frZdz3tQT12IQIhAKnXNJAJqPYtFQBKzwp68BN01XlStQHf3bmlrn+c+Ch6"}]},"_npmUser":{"name":"digitalcloud.no","email":"digitalcloud.no@gmail.com"},"directories":{},"maintainers":[{"name":"digitalcloud.no","email":"digitalcloud.no@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jsonschema-ts-helper_0.1.1_1763250072851_0.07179256253887512"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-15T23:33:41.948Z","modified":"2025-11-15T23:41:13.286Z","0.1.0":"2025-11-15T23:33:42.225Z","0.1.1":"2025-11-15T23:41:13.031Z"},"bugs":{"url":"https://github.com/syedrazaalino/npm-packages/issues"},"author":{"name":"digitalcloud.no"},"license":"MIT","homepage":"https://github.com/syedrazaalino/npm-packages#readme","keywords":["json-schema","typescript","codegen","cli","types"],"repository":{"type":"git","url":"git+https://github.com/syedrazaalino/npm-packages.git","directory":"packages/jsonschema-ts-helper"},"description":"Generate TypeScript types from JSON Schema.","maintainers":[{"name":"digitalcloud.no","email":"digitalcloud.no@gmail.com"}],"readme":"# @digitalcloud.no/jsonschema-ts-helper\r\n\r\nGenerate TypeScript types from JSON Schema.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @digitalcloud.no/jsonschema-ts-helper\r\n```\r\n\r\n## Features\r\n\r\n- ✅ Convert JSON Schema to TypeScript interfaces\r\n- ✅ Support for common JSON Schema types\r\n- ✅ Nested object support\r\n- ✅ Array type handling\r\n- ✅ CLI tool included\r\n- ✅ Programmatic API\r\n\r\n## Usage\r\n\r\n### CLI\r\n\r\n```bash\r\n# Generate TypeScript types from JSON Schema file\r\nnpx jsonschema-ts input.json output.ts\r\n\r\n# Or if installed globally\r\njsonschema-ts schema.json types.ts\r\n```\r\n\r\n### Programmatic API\r\n\r\n```typescript\r\nimport { generateTypes } from '@digitalcloud.no/jsonschema-ts-helper';\r\n\r\nconst schema = {\r\n  type: 'object',\r\n  properties: {\r\n    id: { type: 'number' },\r\n    name: { type: 'string' },\r\n    email: { type: 'string' },\r\n    active: { type: 'boolean' }\r\n  },\r\n  required: ['id', 'name']\r\n};\r\n\r\nconst typescript = generateTypes(schema, 'User');\r\nconsole.log(typescript);\r\n// Output:\r\n// export interface User {\r\n//   id: number;\r\n//   name: string;\r\n//   email?: string;\r\n//   active?: boolean;\r\n// }\r\n```\r\n\r\n## API\r\n\r\n### `generateTypes(schema, interfaceName?)`\r\n\r\nGenerates TypeScript interface from JSON Schema.\r\n\r\n**Parameters:**\r\n- `schema`: JSON Schema object\r\n- `interfaceName`: Name for the generated interface (default: 'GeneratedType')\r\n\r\n**Returns:** TypeScript interface as string\r\n\r\n## Supported JSON Schema Types\r\n\r\n- `string` → `string`\r\n- `number` → `number`\r\n- `integer` → `number`\r\n- `boolean` → `boolean`\r\n- `array` → `Array<T>`\r\n- `object` → nested interface\r\n- `null` → `null`\r\n\r\n## Example\r\n\r\nInput JSON Schema:\r\n```json\r\n{\r\n  \"type\": \"object\",\r\n  \"properties\": {\r\n    \"user\": {\r\n      \"type\": \"object\",\r\n      \"properties\": {\r\n        \"id\": { \"type\": \"number\" },\r\n        \"tags\": { \r\n          \"type\": \"array\",\r\n          \"items\": { \"type\": \"string\" }\r\n        }\r\n      }\r\n    }\r\n  }\r\n}\r\n```\r\n\r\nOutput TypeScript:\r\n```typescript\r\nexport interface GeneratedType {\r\n  user?: {\r\n    id?: number;\r\n    tags?: string[];\r\n  };\r\n}\r\n```\r\n\r\n## Contributing\r\n\r\nContributions are welcome! This package is part of the [npm-packages](https://github.com/syedrazaalino/npm-packages) monorepo.\r\n\r\n## License\r\n\r\nMIT © [digitalcloud.no](https://digitalcloud.no)\r\n\r\n## Links\r\n\r\n- [GitHub Repository](https://github.com/syedrazaalino/npm-packages)\r\n- [npm Package](https://www.npmjs.com/package/@digitalcloud.no/jsonschema-ts-helper)\r\n- [Report Issues](https://github.com/syedrazaalino/npm-packages/issues)\r\n","readmeFilename":"README.md"}