Type checking for tsconfig.json.
If I should maintain this repo, please ⭐️
DM me on Twitter if you have questions or suggestions.
This package uses zod to parse and type-guard a TSConfigJSON object.
yarn add types-tsconfig
npm install types-tsconfig
pnpm add types-tsconfig
The isTSConfigJSON
function is a type guard that checks if an object is a valid TSConfigJSON
object.
import { isTSConfigJSON, TSConfigJSON } from "types-tsconfig";
const config = {
$schema: "https://json.schemastore.org/tsconfig",
extends: "@autosoft/tsconfig",
compilerOptions: {
outDir: ".auto/build",
rootDirs: [
"source"
]
},
files: [
"source/index.ts"
]
};
if(isTSConfigJSON(config)) {
// config is TSConfigJSON
}
The parseTSConfigJSON
function parses an object into a TSConfigJSON
object. If the object is a valid TSConfigJSON
object, it will be returned, otherwise undefined will be returned.
import { parseTSConfigJSON, TSConfigJSON } from "types-tsconfig";
const config = {
invalid: "config"
};
const result = parseTSConfigJSON(config); // undefined
Additionally, a constant fileName
is exported as "tsconfig.json":
import { fileName } from "types-tsconfig";
console.log(fileName); // "tsconfig.json"
- type-fest: A collection of essential TypeScript types
- zod: TypeScript-first schema declaration and validation library with static type inference
- autorepo: Autorepo abstracts away your dev dependencies, providing a single command to run all of your scripts.
MIT - MIT License
- types-json: Type checking for JSON objects
- types-pkg-json: Type checking for package.json
- types-eslintrc: Type checking for .eslintrc.json