diff --git a/types/voucher-code-generator/index.d.ts b/types/voucher-code-generator/index.d.ts new file mode 100644 index 0000000000..fd57466c26 --- /dev/null +++ b/types/voucher-code-generator/index.d.ts @@ -0,0 +1,19 @@ +// Type definitions for voucher-code-generator 1.1 +// Project: http://www.voucherify.io/ +// Definitions by: My Self +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/*~ If this module has methods, declare them as functions like so. + */ +export function charset(name: "numbers" | "alphabetic" | "alphanumeric"): string; +export function generate(config?: generatorConfig): string[]; + +/*~ You can declare types that are available via importing the module */ +export interface generatorConfig { + length?: number; + count?: number; + charset?: string; + prefix?: string; + postfix?: string; + pattern?: string; +} diff --git a/types/voucher-code-generator/tsconfig.json b/types/voucher-code-generator/tsconfig.json new file mode 100644 index 0000000000..dc5d0025be --- /dev/null +++ b/types/voucher-code-generator/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "voucher-code-generator-tests.ts" + ] +} diff --git a/types/voucher-code-generator/tslint.json b/types/voucher-code-generator/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/voucher-code-generator/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/voucher-code-generator/voucher-code-generator-tests.ts b/types/voucher-code-generator/voucher-code-generator-tests.ts new file mode 100644 index 0000000000..3232be37aa --- /dev/null +++ b/types/voucher-code-generator/voucher-code-generator-tests.ts @@ -0,0 +1,18 @@ +import voucherGenerator = require('voucher-code-generator'); +import { generatorConfig } from 'voucher-code-generator'; + +const config: generatorConfig = { + length: 6, + count: 3, + charset: "0123456789", + prefix: "offer-", + postfix: "-2019", + pattern: "######" +}; + +voucherGenerator.charset('numbers'); +voucherGenerator.charset('alphabetic'); +voucherGenerator.charset('alphanumeric'); + +voucherGenerator.generate(); +voucherGenerator.generate(config);