{"_id":"typed-case","_rev":"5-2932aa7daefedf82b3567dd34a1fc28d","name":"typed-case","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"typed-case","version":"1.0.0","keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"license":"MIT","_id":"typed-case@1.0.0","maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"dist":{"shasum":"fb545d05fed2b24badc2a410c63fb4ff380f4f71","tarball":"https://registry.npmjs.org/typed-case/-/typed-case-1.0.0.tgz","fileCount":37,"integrity":"sha512-0gIGW8SxQJJo6kM+uSdLiZXjSH8J0WkxT3Evxl8Nw3zrbcOOCGE6nruXlgXHHI7HwS6HrRlnUNRu/URpVjzRww==","signatures":[{"sig":"MEQCIB8BiLOQxmcu9sqhLJgRM8dOSSvZsJydz92UvgWHnG5KAiAu4CKe8+9qh+kTmCxJzFKVvpeIugBekyfLUjAyLHKZVw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvGukACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr7Jw/+KqRBQT4wuMCkFKdg5y29wYqCaJNB+tmuS7ABlFMK+RloYJrJ\r\nZu+ymqLbb2R8qWSBbLl3u6VioHwqGxOP5Tc5ANrV213y1PgbnvVeu9XrR/bU\r\nc99hR6eMr69uhlHW1hBeAziv7ncd1GB1H996vju8y6LvCQstxi6euawHY9pl\r\nb0DuKpOsNE5XWasHjFZy7EZLIn7snKVlBnwpqv5a6hgDNId1khdUHnDO9aZt\r\nqxdytiY5gDzR8Ej1rUxxnkuD7OKNWB2CE1Y0lIyT8EmgNceu7FdDU4Pu0od+\r\n7zgiBP+BTZ9OoybuCpPQBTrxL5ccVtNthSgbQVOz5nmWRGbRbKwT5JLOCkJE\r\nGWKburG7Cun1UwQq0kkmI77k01JSYGeehm7GTivS4ELAdcIKGcODUZK3M75g\r\nPPb+Ol8k6dRSkAmm65GQZjUrOTBA66+xb9KPHIz1DgRVJNRSBHG47cQx3tr3\r\nDhtXqFn9avU4i5d6rCUux+2Rd+t5MgdfioCP86/Zmu+PwwPWcz/o1M36mIV2\r\nWnEi2dO88lETbzeABQ8QHXZPPdh7sRPcjJMhQoDGbuEIdybJnEcMAMSWAxpp\r\nAny8foalUhym6xTlk/bB8YTBoIQvZQh9TFCb14sg2POIgx74YbYyJGOsF9Dc\r\nsK/APrjCnR2onESn+WZSLpDCoQjWwf5SbHc=\r\n=ilb6\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"@autosoft/jest-preset"},"main":".auto/build/index.js","type":"module","types":".auto/build/index.d.ts","engines":{"node":"^14.13.1 || >=16.0.0"},"exports":"./.auto/build/index.js","private":false,"scripts":{"dev":"auto dev","lint":"auto lint","test":"auto test","build":"auto build","prepack":"yarn build","release":"auto release","typecheck":"auto typecheck"},"_npmUser":{"name":"bconnorwhite","email":"connor.bcw@gmail.com"},"repository":{"url":"git+https://github.com/bconnorwhite/typed-case.git","type":"git"},"description":"Convert between typesafe string casings","directories":{},"dependencies":{"type-fest":"^3.5.1"},"eslintConfig":{"extends":"@autosoft/eslint-config"},"_hasShrinkwrap":false,"npmpackagejsonlint":{"extends":"npm-package-json-lint-config-auto"},"_npmOperationalInternal":{"tmp":"tmp/typed-case_1.0.0_1673292708557_0.8905535378339775","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"typed-case","version":"1.0.1","keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"license":"MIT","_id":"typed-case@1.0.1","maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"dist":{"shasum":"55c30db719daaa30b8695cc5d32fb0ff201dc8e7","tarball":"https://registry.npmjs.org/typed-case/-/typed-case-1.0.1.tgz","fileCount":37,"integrity":"sha512-jHz1UxVzRXqjEgNRsSa9KB9IlyS4LqNIws7PzcfLDwEdEwnJhQ8PmDyvhNikYOFon4CToPVZnyjV4iz+ylkzHA==","signatures":[{"sig":"MEUCIQDyPpsYf01Vg+oQFm4yNKjn63vXRLPoq1/gtJpSfOhYDAIgOSChpqwsO7y/oa3VhLmJbRtsIzEfGJTb7t8PYxSUt8Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvGxWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFIQ//Vc/l/4OiCCJWaseWyeJCqJGEKVTqG38yWfeQRTDCumxEKJeO\r\nPgL3cKCg772joTl1b9ZtD7P04z+a5Mma6wqj3RoZn5aBI9KDtCuSKch1rVxX\r\nLeE+w+R0wE29NDWDM59AxblTp1wAefxRP0E9oMcLJKS5BZu0JftEeafVbGTo\r\nxXAinezU2LuAebxbhKZ42MzFhq80O4kn95Y5bLqg3+DQ4x397VqAPAoIyK5h\r\n5H0WpH/OcCKQqmG0Dp0mQzVUcz0aY5tLoEJYqqI/2LkbvVl4tI5g+z1+wfUh\r\nE4xceCxjtfY/KeBh071vNWrb/OIg/lI3SdSVu4GzDkE6LdOc1zS44v3GlRFX\r\n+0rzLFxoblpNoIxwfmFcio2cNmdnmxLYV9wwOlw68NgaJYvEENANkbas1MxT\r\n/2Wk326/iiKeqyNc5tvluPiwqdMWNEp4ZtkQti6G48Ll9/b5Su9h4LHheP2m\r\nB/+BCqGh5Mrt40jI7ZZ317chtNWe7+cUEZnR5F7LVF7LQvLos/+X1Yvof4fJ\r\njQY6RfYktbsu1ArGRxZc7hnVKsZONvQEPBiPHUwLKdHs8/sG/Ywyp80UiTzZ\r\nvCXDf2G60oHdBYVIPBfeIfyX/IIviwrjOrGtEIIbuJtBnf1HRxYB3Z+lCPO5\r\naB9qRDO25E/XrrkiMn3Vkd4d4VqO109GiGE=\r\n=gR4G\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"@autosoft/jest-preset"},"main":".auto/build/index.js","type":"module","types":".auto/build/index.d.ts","engines":{"node":"^14.13.1 || >=16.0.0"},"exports":"./.auto/build/index.js","private":false,"scripts":{"dev":"auto dev","lint":"auto lint","test":"auto test","build":"auto build","prepack":"yarn build","release":"auto release","typecheck":"auto typecheck"},"_npmUser":{"name":"bconnorwhite","email":"connor.bcw@gmail.com"},"repository":{"url":"git+https://github.com/bconnorwhite/typed-case.git","type":"git"},"description":"Convert between typesafe string casings","directories":{},"dependencies":{"type-fest":"^3.5.1"},"eslintConfig":{"extends":"@autosoft/eslint-config"},"_hasShrinkwrap":false,"npmpackagejsonlint":{"extends":"npm-package-json-lint-config-auto"},"_npmOperationalInternal":{"tmp":"tmp/typed-case_1.0.1_1673292885961_0.675557275921284","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"typed-case","version":"1.0.2","keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"license":"MIT","_id":"typed-case@1.0.2","maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"dist":{"shasum":"0398d9624c1b0ca465fdc8a8a63795ad1c7a6316","tarball":"https://registry.npmjs.org/typed-case/-/typed-case-1.0.2.tgz","fileCount":47,"integrity":"sha512-xwwPU1ZPsuPXg3xLUXqNeSRhD/OrBw64O97SwWG9wdsfAXHQfdQ3iyAxbXFVDCWhQltDcS0vEf0JX+rMMBE61g==","signatures":[{"sig":"MEYCIQCpBNelxQenXgDLB7VubiTnMvFpDFE9YIXsCd1Uh7q+qgIhAPEDaKQ2If2wkAfTs+KeIhnqkZRUhxmBaYXPK+GLBvnx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvHNIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrjaQ/+JLuaXtcm8D1LA06WXQ+6dSSATrskxDd1I8KeP4VTObMpCATE\r\nSrxlaHmMQMoSkwHg7387gl4/JIHr8dHcZzHk/rWbwmCmpxz3rUIrytWvTphe\r\nH9okwYAAyJi92gNAAaLjQspNYIRqTbH56ijnL0W8OiRGVs2aWF0VZ9lzM3hu\r\n4BDMbK+8uUcWIJ5/khGtvRqnYXuu4XMSlHhtE8V7oCf8sfNPD5i1O7dKLzsn\r\nlOB8IlUIfIiluKTdMH7nf2gK2AMgFoHTveVvoatqJcDjGlLODhm1KyHlAbol\r\n8oiroIzo8HcbAPM+8MoUVe6kBukP5vnUmM40PiCd1bxJWg6qdM1k1jQmvlX1\r\nteGCp3ABSEoAVgmV/wg+sILpWgRS1EpZ39FcIvq7HYV4eumtyMuVe5KU6JK8\r\n7WyEcoQPZ5/zhqlKasvFSGaS63vqL8TuoomlLZECQM3CJ9WLCCpTI4FOj1ww\r\nrMUn5x2SN1EA0qR9JGTMoznVy4E7vDrVCCl0o+b4J4Xkg1K6M+HOFKIUB8iy\r\nZ3am7fqNG/nJO7dNNlJE8tW3Z2FgoiDM9RqSI9hflWXy2rI5q7JW2QBNs1Hu\r\nUiq9RlZuV8nWVlSjsB+ZOmrhk70+Ja1rsbo83zVcdKc5/lCttAteXVOpv2vl\r\nFGWqmawpQqI0ouhd39aaMmcqhk6bO9sczxY=\r\n=VgMC\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"@autosoft/jest-preset"},"main":".auto/build/index.js","type":"module","types":".auto/build/index.d.ts","engines":{"node":"^14.13.1 || >=16.0.0"},"exports":"./.auto/build/index.js","private":false,"scripts":{"dev":"auto dev","lint":"auto lint","test":"auto test","build":"auto build","prepack":"yarn build","release":"auto release","typecheck":"auto typecheck"},"_npmUser":{"name":"bconnorwhite","email":"connor.bcw@gmail.com"},"repository":{"url":"git+https://github.com/bconnorwhite/typed-case.git","type":"git"},"description":"Convert between typesafe string casings","directories":{},"dependencies":{"type-fest":"^3.5.1"},"eslintConfig":{"extends":"@autosoft/eslint-config"},"_hasShrinkwrap":false,"npmpackagejsonlint":{"extends":"npm-package-json-lint-config-auto"},"_npmOperationalInternal":{"tmp":"tmp/typed-case_1.0.2_1673294664644_0.7519188008009166","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"typed-case","version":"1.0.3","keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"license":"MIT","_id":"typed-case@1.0.3","maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"homepage":"https://github.com/bconnorwhite/typed-case#readme","bugs":{"url":"https://github.com/bconnorwhite/typed-case/issues"},"dist":{"shasum":"67c97009d707d629b841264d165feb2f6ef21dba","tarball":"https://registry.npmjs.org/typed-case/-/typed-case-1.0.3.tgz","fileCount":42,"integrity":"sha512-yZ0UgzdG1cypdxlnpTE79WT85MOX+XxkWZoFyFshyYwgT1yj3MtU1lYwb1eVxaL5S5mcD1w3wT5tG3rzE5Vh6w==","signatures":[{"sig":"MEUCIQCee1BgbxeCffoWEiAmRYKfU1COSygckB2wvRVL+SpGiAIgOMk+6zg8bSP2bEJ6GXGl0NKyBR6yRkULtA54fO1/WmM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25015},"jest":{"preset":"@autosoft/jest-preset"},"main":".auto/build/index.js","type":"module","types":".auto/build/index.d.ts","engines":{"node":"^14.13.1 || >=16.0.0"},"exports":"./.auto/build/index.js","gitHead":"c4cd054bfbf763ca9b247bec5cccf0596d7b72ee","private":false,"scripts":{"dev":"auto dev","lint":"auto lint","test":"auto test","build":"auto build","prepack":"yarn build","release":"auto release","typecheck":"auto typecheck"},"_npmUser":{"name":"bconnorwhite","email":"connor.bcw@gmail.com"},"repository":{"url":"git+https://github.com/bconnorwhite/typed-case.git","type":"git"},"_npmVersion":"9.8.0","description":"Convert between typesafe string casings","directories":{},"_nodeVersion":"20.5.1","eslintConfig":{"extends":"@autosoft/eslint-config"},"_hasShrinkwrap":false,"npmpackagejsonlint":{"extends":"npm-package-json-lint-config-auto"},"_npmOperationalInternal":{"tmp":"tmp/typed-case_1.0.3_1701118067251_0.11846409859430973","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"typed-case","version":"2.0.0","description":"Convert between typesafe string casings","license":"MIT","private":false,"author":{"name":"Connor White","email":"oss@bconnorwhite.com","url":"https://bconnorwhite.com"},"homepage":"https://github.bconnorwhite.com/typed-case#readme","repository":{"type":"git","url":"git+https://github.com/bconnorwhite/typed-case.git"},"bugs":{"url":"https://github.com/bconnorwhite/typed-case/issues"},"keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"type":"module","main":"./build/index.js","exports":{".":"./build/index.js"},"types":"./build/index.d.ts","engines":{"bun":">=1.3.0","node":">=20.0.0"},"scripts":{"build":"tsc --project ./tsconfig.json","coverage":"vitest run --config ./vitest.config.mjs --project node --coverage","lint":"npm run lint:package && npm run lint:source","lint:package":"npmPkgJsonLint .","lint:source":"ESLINT_USE_FLAT_CONFIG=false eslint src test test-d --ext .ts","prepack":"npm run build","release":"npm publish","test":"npm run test:node && npm run test:browser && npm run test:bun","test:browser":"vitest run --config ./vitest.config.mjs --project browser","test:bun":"bun test ./test/*.test.ts","test:node":"vitest run --config ./vitest.config.mjs --project node","typecheck":"npm run build && tsc --project ./test/tsconfig.json && tsc --project ./test-d/tsconfig.json && tsc --project ./test-d-nonstrict/tsconfig.json && tsd"},"devDependencies":{"@bconnorwhite/eslint-config":"^1.1.0","@bconnorwhite/tsconfig":"^1.0.0","@types/node":"^24.3.0","@typescript-eslint/eslint-plugin":"^8.56.1","@typescript-eslint/parser":"^8.56.1","@vitest/browser":"^3.2.4","@vitest/coverage-v8":"^3.2.4","eslint":"^9.39.4","eslint-plugin-import":"^2.32.0","eslint-plugin-json":"^4.0.1","npm-package-json-lint":"^9.1.0","npm-package-json-lint-config-bconnorwhite":"^1.0.0","playwright":"^1.58.2","tsd":"^0.31.0","typescript":"^5.9.3","vitest":"^3.2.4"},"eslintConfig":{"extends":"@bconnorwhite/eslint-config"},"npmpackagejsonlint":{"extends":"npm-package-json-lint-config-bconnorwhite/oss"},"gitHead":"4451b1eb0d94dbe0fa470013c797ad834e394212","_id":"typed-case@2.0.0","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-3QsPuTla4S3795EECeNbsQwY2N4RoGXOChA4UZOSx+5t1eWHmbSWir2IBSbmYLSw7TXXQfTkWC4UkFXt5e1JWw==","shasum":"d5333b83df2d2111012b077514c291b09bc224e9","tarball":"https://registry.npmjs.org/typed-case/-/typed-case-2.0.0.tgz","fileCount":82,"unpackedSize":47824,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/typed-case@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDZYFToyhQvM0nI2p7lrl4w2bN9gunJs8ApyzxWS0Q7mAiAWWO9rGW7h/XDvBZUXCc7OUVM9PXWh7yaqRcxTfxVfYQ=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:37674f96-e45e-4bf1-93ac-431ffc7c6874"}},"directories":{},"maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/typed-case_2.0.0_1773267161762_0.5504526081404315"},"_hasShrinkwrap":false}},"time":{"created":"2023-01-09T19:31:48.556Z","modified":"2026-03-11T22:12:42.232Z","1.0.0":"2023-01-09T19:31:48.694Z","1.0.1":"2023-01-09T19:34:46.170Z","1.0.2":"2023-01-09T20:04:24.878Z","1.0.3":"2023-11-27T20:47:47.517Z","2.0.0":"2026-03-11T22:12:41.927Z"},"bugs":{"url":"https://github.com/bconnorwhite/typed-case/issues"},"license":"MIT","homepage":"https://github.bconnorwhite.com/typed-case#readme","keywords":["case","type","safe","to","pascal","snake","camel","kebab","ts","types"],"repository":{"type":"git","url":"git+https://github.com/bconnorwhite/typed-case.git"},"description":"Convert between typesafe string casings","maintainers":[{"name":"bconnorwhite","email":"connor.bcw@gmail.com"}],"readme":"<!--BEGIN HEADER-->\n<div id=\"top\" align=\"center\">\n  <h1>typed-case</h1>\n  <a href=\"https://npmjs.com/package/typed-case\">\n    <img alt=\"NPM\" src=\"https://img.shields.io/npm/v/typed-case.svg\">\n  </a>\n  <a href=\"https://github.com/bconnorwhite/typed-case\">\n    <img alt=\"TypeScript\" src=\"https://img.shields.io/github/languages/top/bconnorwhite/typed-case.svg\">\n  </a>\n  <a href=\"https://coveralls.io/github/bconnorwhite/typed-case?branch=main\">\n    <img alt=\"Coverage Status\" src=\"https://coveralls.io/repos/github/bconnorwhite/typed-case/badge.svg?branch=main\" />\n  </a>\n</div>\n\n<br />\n\n<blockquote align=\"center\">Convert between type-safe string casings.</blockquote>\n\n\n---\n<!--END HEADER-->\n\n## About\n\nA zero-dependency package for converting between string casings in a type-safe way.\n\n### Supported Casings\n| Name                 |\n| -------------------- |\n| camelCase            |\n| PascalCase           |\n| kebab-case           |\n| snake_case           |\n| Train-Case           |\n| CONSTANT_CASE        |\n| Title Case           |\n| UPPER CASE           |\n| lower case           |\n\n## Installation\n\n<details open>\n  <summary>\n    <a href=\"https://www.npmjs.com/package/typed-case\">\n      <img src=\"https://img.shields.io/badge/npm-CB3837?logo=npm&logoColor=white\" alt=\"NPM\" />\n    </a>\n  </summary>\n\n```sh\nnpm install typed-case\n```\n\n</details>\n\n<details>\n  <summary>\n    <a href=\"https://yarnpkg.com/package/typed-case\">\n      <img src=\"https://img.shields.io/badge/yarn-2C8EBB?logo=yarn&logoColor=white\" alt=\"Yarn\" />\n    </a>\n  </summary>\n\n```sh\nyarn add typed-case\n```\n\n</details>\n\n<details>\n  <summary>\n    <img src=\"https://img.shields.io/badge/pnpm-F69220?logo=pnpm&logoColor=white\" alt=\"PNPM\" />\n  </summary>\n\n```sh\npnpm add typed-case\n```\n\n</details>\n\n<details>\n  <summary>\n    <img src=\"https://img.shields.io/badge/bun-EE81C3?logo=bun&logoColor=white\" alt=\"Bun\" />\n  </summary>\n\n```sh\nbun add typed-case\n```\n\n</details>\n\n\n## Contents\n\n- [Usage](#usage)\n  - [CamelCase](#camelcase)\n  - [PascalCase](#pascalcase)\n  - [TrainCase](#traincase)\n  - [KebabCase](#kebabcase)\n  - [SnakeCase](#snakecase)\n  - [ConstantCase](#constantcase)\n  - [Title Case](#title-case)\n  - [UpperCase, LowerCase](#uppercase-lowercase)\n  - [Capitalize, Uncapitalize](#capitalize-uncapitalize)\n- [License](#license)\n\n## Usage\n\n### CamelCase\n```ts\nimport { toCamelCase, CamelCase } from \"typed-case\";\n\ntoCamelCase(\"hello world\"); // \"helloWorld\"\ntoCamelCase(\"hello_world\"); // \"helloWorld\"\ntoCamelCase(\"hello-world\"); // \"helloWorld\"\n```\n\n#### Preserve UpperCase\n\n```ts\ntoCamelCase(\"hello WORLD\"); // \"helloWORLD\"\ntoCamelCase(\"hello WORLD\", { preserveConsecutiveUppercase: false }); // \"helloWorld\"\n```\n\n### PascalCase\n\n```ts\nimport { toPascalCase, PascalCase } from \"typed-case\";\n\ntoPascalCase(\"hello world\"); // \"HelloWorld\"\ntoPascalCase(\"hello_world\"); // \"HelloWorld\"\ntoPascalCase(\"hello-world\"); // \"HelloWorld\"\n```\n\n#### Preserve UpperCase\n\n```ts\ntoPascalCase(\"hello WORLD\"); // \"HelloWORLD\"\ntoPascalCase(\"hello WORLD\", { preserveConsecutiveUppercase: false }); // \"HelloWorld\"\n```\n\n### TrainCase\n\n```ts\nimport { toTrainCase, TrainCase } from \"typed-case\";\n\ntoTrainCase(\"hello world\"); // \"Hello-World\"\ntoTrainCase(\"hello_world\"); // \"Hello-World\"\ntoTrainCase(\"hello-world\"); // \"Hello-World\"\n```\n\n### TitleCase\n\n```ts\nimport { toTitleCase, TitleCase } from \"typed-case\";\ntoTitleCase(\"hello world\"); // \"Hello World\"\ntoTitleCase(\"hello_world\"); // \"Hello World\"\ntoTitleCase(\"hello-world\"); // \"Hello World\"\n```\n\n#### Preserve UpperCase\n\n```ts\ntoTitleCase(\"hello WORLD\"); // \"Hello WORLD\"\ntoTitleCase(\"hello WORLD\", { preserveConsecutiveUppercase: false }); // \"Hello World\"\n```\n\n### KebabCase\n\n```ts\nimport { toKebabCase, KebabCase } from \"typed-case\";\n\ntoKebabCase(\"hello world\"); // \"hello-world\"\ntoKebabCase(\"hello_world\"); // \"hello-world\"\ntoKebabCase(\"hello-world\"); // \"hello-world\"\n```\n\n### SnakeCase\n\n```ts\nimport { toSnakeCase, SnakeCase } from \"typed-case\";\n\ntoSnakeCase(\"hello world\"); // \"hello_world\"\ntoSnakeCase(\"hello_world\"); // \"hello_world\"\ntoSnakeCase(\"hello-world\"); // \"hello_world\"\n```\n\n### ConstantCase\n\n```ts\nimport { toConstantCase, ConstantCase } from \"typed-case\";\n\ntoConstantCase(\"hello world\"); // \"HELLO_WORLD\"\ntoConstantCase(\"hello_world\"); // \"HELLO_WORLD\"\ntoConstantCase(\"hello-world\"); // \"HELLO_WORLD\"\n```\n\n### UpperCase, LowerCase\n\n```ts\nimport { toUpperCase, toLowerCase, UpperCase, LowerCase } from \"typed-case\";\n\ntoUpperCase(\"hello world\"); // \"HELLO WORLD\"\ntoLowerCase(\"HELLO WORLD\"); // \"hello world\"\n```\n\n### Capitalize, Uncapitalize\n\n```ts\nimport { capitalize, uncapitalize } from \"typed-case\";\n\ncapitalize(\"hello world\"); // \"Hello world\"\nuncapitalize(\"Hello world\"); // \"hello world\"\n```\n\n<!--BEGIN FOOTER-->\n<h2 id=\"license\">License <a href=\"https://opensource.org/licenses/MIT\"><img align=\"right\" alt=\"license\" src=\"https://img.shields.io/npm/l/typed-case.svg\"></a></h2>\n\n[MIT](https://opensource.org/licenses/MIT) - _MIT License_\n<!--END FOOTER-->\n","readmeFilename":"README.md","author":{"name":"Connor White","email":"oss@bconnorwhite.com","url":"https://bconnorwhite.com"}}