From 763868e7deed5a5087aa1e0e2455656109d9e628 Mon Sep 17 00:00:00 2001 From: MugeSo Date: Wed, 19 Aug 2015 11:32:47 +0900 Subject: [PATCH] rsmq-worker: export Client interface --- rsmq-worker/rsmq-worker-tests.ts | 4 +- rsmq-worker/rsmq-worker.d.ts | 71 ++++++++++++++++---------------- 2 files changed, 39 insertions(+), 36 deletions(-) diff --git a/rsmq-worker/rsmq-worker-tests.ts b/rsmq-worker/rsmq-worker-tests.ts index 4568302dd..fa635e415 100644 --- a/rsmq-worker/rsmq-worker-tests.ts +++ b/rsmq-worker/rsmq-worker-tests.ts @@ -1,7 +1,9 @@ import RSMQWorker = require('rsmq-worker'); -var worker = new RSMQWorker("my-queue"); +var worker: RSMQWorker.Client; + +worker = new RSMQWorker("my-queue"); worker.changeInterval(1); worker.changeInterval([0, 1, 5, 10]); diff --git a/rsmq-worker/rsmq-worker.d.ts b/rsmq-worker/rsmq-worker.d.ts index 8783d914f..9823daa87 100644 --- a/rsmq-worker/rsmq-worker.d.ts +++ b/rsmq-worker/rsmq-worker.d.ts @@ -9,44 +9,45 @@ declare module "rsmq-worker" { import redis = require('redis'); import events = require('events'); - interface CallbackT { - (e?:Error, res?:R): void; + module RSMQWorker { + export interface Client extends events.EventEmitter { + start(): Client; + stop(): Client; + send(message: string, delay?: number, cb?: CallbackT): Client; + send(message: string, cb: CallbackT): Client; + del(id: string, cb?: CallbackT): Client; + changeInterval(interval: number|number[]): Client; + } + + export interface Options { + interval?: number; + maxReceiveCount?: number; + invisibletime?: number; + defaultDelay?: number; + autostart?: boolean; + timeout: number; + customExceedCheck?: CustomExceedCheckCallback; + rsmq?: RedisSMQ.Client; + redis?: redis.RedisClient; + redisPrefix?: string; + host?: string; + port?: number; + options?: redis.ClientOpts; + } + + export interface CustomExceedCheckCallback { + (message: RedisSMQ.Message): boolean; + } + + export interface CallbackT { + (e?:Error, res?:R): void; + } } interface RSMQWorkerStatic { - new(queuename: string, options?: WorkerOptions): RSMQWorker; + new(queuename: string, options?: RSMQWorker.Options): RSMQWorker.Client; } - interface WorkerOptions { - interval?: number; - maxReceiveCount?: number; - invisibletime?: number; - defaultDelay?: number; - autostart?: boolean; - timeout: number; - customExceedCheck?: CustomExceedCheckCallback; - rsmq?: RedisSMQ.Client; - redis?: redis.RedisClient; - redisPrefix?: string; - host?: string; - port?: number; - options?: redis.ClientOpts; - } - - interface CustomExceedCheckCallback { - (message: RedisSMQ.Message): boolean; - } - - - interface RSMQWorker extends events.EventEmitter { - start(): RSMQWorker; - stop(): RSMQWorker; - send(message: string, delay?: number, cb?: CallbackT): RSMQWorker; - send(message: string, cb: CallbackT): RSMQWorker; - del(id: string, cb?: CallbackT): RSMQWorker; - changeInterval(interval: number|number[]): RSMQWorker; - } - - var worker: RSMQWorkerStatic; - export = worker; + var RSMQWorker: RSMQWorkerStatic; + export = RSMQWorker; }