@bigteam/apidoc-plugin-ts

1.0.0 • Public • Published

apidoc-plugin-ts

A plugin for apidoc that injects @apiSuccess params from TypeScript interfaces. Supports extended and nested interfaces.

Getting started

npm install --save-dev apidoc @bigteam/apidoc-plugin-ts
yarn add -D apidoc @bigteam/apidoc-plugin-ts

A custom api-doc param @apiInterface is exposed:

@apiInterface (optional path to definitions file) {INTERFACE_NAME} change the target

Example

Given the following interface:

// filename: ./employers.ts

export interface Employer {
  /**
   * Employer job title
   */
  jobTitle: string;
  /**
   * Employer personal details
   */
  personalDetails: {
    name: string,
    age: number
  };
}

and the following custom param:

// import file and interface
/**
 * @apiInterface (./employers.ts) {Person}
 */

under the hood this would transpile to:

/**
 * @apiSuccess {String} jobTitle Job title
 * @apiSuccess {Object} personalDetails Empoyer personal details
 * @apiSuccess {String} personalDetails.name
 * @apiSuccess {Number} personalDetails.age
 */

Note if the Person interface is defined in the same file then you can drop the path:

//  interface is in file
/**
 * @apiInterface {Person}
 */

Package Sidebar

Install

npm i @bigteam/apidoc-plugin-ts

Weekly Downloads

1

Version

1.0.0

License

MIT

Unpacked Size

17 kB

Total Files

4

Last publish

Collaborators

  • bigteam-admin
  • dewwwald