diff --git a/types/bull-board/bull-board-tests.ts b/types/bull-board/bull-board-tests.ts new file mode 100644 index 0000000000..3dd417398c --- /dev/null +++ b/types/bull-board/bull-board-tests.ts @@ -0,0 +1,14 @@ +import BullBoard from 'bull-board'; +import express from 'express'; +import Queue from 'bull'; + +const redis = 'redis://127.0.0.1:6379'; + +const queueList = [new Queue('video transcoding', redis), new Queue('audio transcoding', redis)]; +const queue = BullBoard.createQueues(redis); +const app = express(); + +BullBoard.setQueues(queueList); + +app.use('/queues', BullBoard.UI); +queue.add('pdf transcoding', { redis: { host: redis } }); diff --git a/types/bull-board/index.d.ts b/types/bull-board/index.d.ts new file mode 100644 index 0000000000..7199b68f09 --- /dev/null +++ b/types/bull-board/index.d.ts @@ -0,0 +1,23 @@ +// Type definitions for bull-board 0.6 +// Project: https://github.com/vcapretz/bull-board +// Definitions by: Keven Leone +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import { Express } from 'express'; +import { Queue, QueueOptions } from 'bull'; + +declare const BullBoard: BullBoard.Options; + +declare namespace BullBoard { + interface CreateQueue { + add(name: string, opts: QueueOptions): Queue; + } + + interface Options { + UI(): Express; + setQueues(bullQueues: Queue | Queue[]): Queue; + createQueues(redisURL: string): CreateQueue; + } +} + +export = BullBoard; diff --git a/types/bull-board/tsconfig.json b/types/bull-board/tsconfig.json new file mode 100644 index 0000000000..3b8f31b2f8 --- /dev/null +++ b/types/bull-board/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "esModuleInterop": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "bull-board-tests.ts" + ] +} diff --git a/types/bull-board/tslint.json b/types/bull-board/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/bull-board/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" }