I am trying to create a typescript doc-generator, but to do so, i need to parse a typescript file into something more easily readable
EX:
"Command": {
"description": "A command object for the command handler",
"constructor": [
{
"name": "name",
"type": "string",
"optional": false,
"default": null,
"description": "Name of the command"
},
{
"name": "callback",
"type": "(event: CommandContext) => void",
"optional": false,
"default": null,
"description": "Callback for the command"
}
],
"properties": [
{
"name": "name",
"description": "Name of the command",
"type": "string"
},
{
"name": "fullname",
"description": "Fullname of the command",
"type": "string"
}
],
"methods": [
{
"name": "canRun",
"description": "Checks all permission checks and verifies if a command can be run",
"parameters": [
{
"name": "context",
"type": "CommandContext",
"optional": false,
"default": null,
"description": "The context for the command",
"returns": "PermissionCheckResult"
}
]
}
],
"events": null
}
would come from something like this
export declare class Command {
/**
* Name of the command
*/
name: string;
/**
* Fullname of the command
*/
fullname: string;
/**
* Create a command
* @param name - Name of the command
* @param callback - Callback for the command
*/
constructor(name: string, callback: (event: CommandContext) => void);
/**
* Checks all permission checks and verifies if a command can be run
* @param context - The context for the command
*/
canRun(context: CommandContext): boolean;
}
how would I accomplish this, preferably in the browser, but if that is not possible I could also do it using node.js
TypeDoc has a similar feature, you can use the --json
tag to get data about the module in JSON format
it is not exactly what I was looking for, but can be used to accomplish the same thing