From 87a02f041bd29d2ca86cb28d5387e9dae28afadc Mon Sep 17 00:00:00 2001 From: Phips Peter Date: Wed, 28 Jan 2015 13:42:13 -0800 Subject: [PATCH] Adding type definitions for dts-bundle DtsBundle is for bundling type definitions to be consumed by other libraries. --- dts-bundle/dts-bundle-tests.ts | 54 ++++++++++++++++++++++++++++++++++ dts-bundle/dts-bundle.d.ts | 23 +++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 dts-bundle/dts-bundle-tests.ts create mode 100644 dts-bundle/dts-bundle.d.ts diff --git a/dts-bundle/dts-bundle-tests.ts b/dts-bundle/dts-bundle-tests.ts new file mode 100644 index 0000000000..63ba70ca0b --- /dev/null +++ b/dts-bundle/dts-bundle-tests.ts @@ -0,0 +1,54 @@ +/// +/// +import dts = require("dts-bundle"); +import os = require("os"); + +var opts = { + + // Required + + // name of module likein package.json + // - used to declare module & import/require + name: 'cool-project', + // path to entry-point (generated .d.ts file for main module) + // - either relative or absolute + main: 'build/index.d.ts', + + // Optional + + // base directory to be used for discovering type declarations (i.e. from this project itself) + // - default: dirname of main + baseDir: 'build', + // path of output file + // - default: "/.d.ts" + out: 'dist/cool-project.d.ts', + // include typings outside of the 'baseDir' (i.e. like node.d.ts) + // - default: false + externals: false, + // filter to exclude typings, either a RegExp or a callback. match path relative to opts.baseDir + // - RegExp: a match excludes the file + // - function: (file:String, external:Boolean) return true to exclude, false to allow + // - always use forward-slashes (even on Windows) + // - default: *pass* + exclude: /^defs\/$/, + // delete all source typings (i.e. "/**/*.d.ts") + // - default: false + removeSource: false, + // newline to use in output file + newline: os.EOL, + // indentation to use in output file + // - default 4 spaces + indent: ' ', + // prefix for rewriting module names + // - default '__' + prefix: '__', + // separator for rewriting module 'path' names + // - default: forward slash (like sub-modules) + separator: '/', + // enable verbose mode, prints detailed info about all references and includes/excludes + // - default: false + verbose: false +}; + +// run it +dts.bundle(opts); \ No newline at end of file diff --git a/dts-bundle/dts-bundle.d.ts b/dts-bundle/dts-bundle.d.ts new file mode 100644 index 0000000000..eb0c4acacb --- /dev/null +++ b/dts-bundle/dts-bundle.d.ts @@ -0,0 +1,23 @@ +// Type definitions for dts-bundle +// Project: https://github.com/TypeStrong/dts-bundle +// Definitions by: Asana +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare module "dts-bundle" { + interface Options { + name: string; + main: string; + baseDir?: string; + exclude?: RegExp; + externals?: boolean; + indent?: string; + newLine?: string; + out?: string; + prefix?: string; + removeSource?: boolean; + separator?: string; + verbose?: boolean; + } + + export function bundle(opts: Options): void; +} \ No newline at end of file