@typeonly/validator
TypeOnly aims to be the pure typing part of TypeScript. This package provides an API to validate JSON and JavaScript objects with TypeScript definitions, using the TypeOnly parser.
Tutorial: How to programmatically validate JSON data
At first, it is necessary to follow the tutorial of TypeOnly in order to generate a .to.json
file based on your TypeScript definitions. After this step, you have the following file: dist/types.to.json
.
Now, add @typeonly/validator
to the project:
npm install @typeonly/validator
Create a file src/validate-main.js
with the following content:
const { createValidator } = require("@typeonly/validator");
const data = {
color: "green",
shape: {
kind: "circle",
x: 100,
y: 100,
radius: 50
}
};
const validator = createValidator({
bundle: require("./types.to.json")
});
const result = validator.validate("./drawing", "Drawing", data);
console.log(result);
This code validates the data
object using RTO files generated by the TypeOnly parser.
Execute it:
$ node src/validate-main.js
{ valid: true }
Contribute
With VS Code, our recommanded plugin is:
- TSLint from Microsoft (
ms-vscode.vscode-typescript-tslint-plugin
)