diff --git a/types/sequencify/index.d.ts b/types/sequencify/index.d.ts new file mode 100644 index 0000000000..dbfdb22e28 --- /dev/null +++ b/types/sequencify/index.d.ts @@ -0,0 +1,16 @@ +// Type definitions for sequencify v0.0 +// Project: https://github.com/robrich/sequencify +// Definitions by: Nicolas Penin +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +// Definition file started by dts-gen + +export = sequencify; + +declare namespace sequencify { + export type Task = { name: string, dep: string[] }; + + export type TaskMap = { [name: string]: Task } +} + +declare function sequencify(tasks: sequencify.TaskMap, names: (keyof sequencify.TaskMap)[], results: string[], nest?: string[]): void; diff --git a/types/sequencify/sequencify-tests.ts b/types/sequencify/sequencify-tests.ts new file mode 100644 index 0000000000..cdb82b3384 --- /dev/null +++ b/types/sequencify/sequencify-tests.ts @@ -0,0 +1,32 @@ +/* Add tests for your definition file here */ + +import * as sequencify from 'sequencify'; + +var items: sequencify.TaskMap = { + a: { + name: 'a', + dep: [] + // other properties as needed + }, + b: { + name: 'b', + dep: ['a'] + }, + c: { + name: 'c', + dep: ['a'] + }, + d: { + name: 'd', + dep: ['c'] + }, +}; + +var names = ['d', 'b', 'c', 'a']; // The names of the items you want arranged, need not be all + +var results: string[] = []; + +sequencify(items, names, results); + +console.log(results); +// ['a','b','c','d']; diff --git a/types/sequencify/tsconfig.json b/types/sequencify/tsconfig.json new file mode 100644 index 0000000000..a0f1b28bcf --- /dev/null +++ b/types/sequencify/tsconfig.json @@ -0,0 +1,19 @@ +{ + "files": [ + "index.d.ts", + "sequencify-tests.ts" + ], + "compilerOptions": { + "module": "commonjs", + "target": "es6", + "noImplicitAny": true, + "strictNullChecks": false, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + } +} \ No newline at end of file diff --git a/types/sequencify/tslint.json b/types/sequencify/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/sequencify/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file