dsherret / dts-minify

Minifier for TypeScript declaration files (.d.ts)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dts-minify

JSR npm version CI

Minifies TypeScript declaration files (.d.ts files).

Strips:

  • Non-essential whitespace and newlines.
  • Comments, but keeps triple-slash directives.

Use Case

This library is useful for minifying declaration files that won't be read by humans.

Setup

Deno:

deno add @david/dts-minify

Node:

npm install dts-minify

Example

import { createMinifier } from "@david/dts-minify"; // dts-minify on npm
import * as ts from "typescript";

// setup (provide a TS Compiler API object)
const minifier = createMinifier(ts);

// minify
const inputText = `declare class MyClass {
    /**
     * Some description.
     */
    doSomething(value: number): number;
}`;
const minifiedText = minifier.minify(inputText);

console.log(minifiedText);

Outputs:

declare class MyClass{doSomething(value:number):number;}

Options

keepJsDocs

When true, it won't remove the JS docs.

const minifiedText = minifier.minify(inputText, {
  keepJsDocs: true, // false by default
});

Outputs:

declare class MyClass{/**
 * Some description.
 */doSomething(value:number):number;}

About

Minifier for TypeScript declaration files (.d.ts)

License:MIT License


Languages

Language:TypeScript 100.0%