diff --git a/types/hubot/index.d.ts b/types/hubot/index.d.ts index b3c58947ba..f136d88ceb 100644 --- a/types/hubot/index.d.ts +++ b/types/hubot/index.d.ts @@ -5,7 +5,8 @@ declare namespace Hubot { class Brain { - userForId: (id: any) => any; + userForId(id: any): any; + userForName(name: string): any; } class User { @@ -22,33 +23,24 @@ declare namespace Hubot { class Response { match: RegExpMatchArray; message: Message; - send: (...strings: string[]) => void; - reply: (...strings: string[]) => void; - random: (items: T[]) => T; + + constructor(robot: Robot, message: Message, match: RegExpMatchArray); + send(...strings: string[]): void; + reply(...strings: string[]): void; + random(items: T[]): T; } interface ListenerCallback { (response: Response): void; } - interface HearWithOptions { - (regex: RegExp, options: any, callback: ListenerCallback): void; - } - interface HearWithoutOptions { - (regex: RegExp, callback: ListenerCallback): void; - } - - interface RespondWithOptions { - (regex: RegExp, options: any, callback: ListenerCallback): void; - } - interface RespondWithoutOptions { - (regex: RegExp, callback: ListenerCallback): void; - } - export interface Robot { brain: Brain; - hear: HearWithOptions & HearWithoutOptions; - respond: RespondWithOptions & RespondWithoutOptions; + + hear(regex: RegExp, callback: ListenerCallback): void; + hear(regex: RegExp, options: any, callback: ListenerCallback): void; + response(regex: RegExp, callback: ListenerCallback): void; + response(regex: RegExp, options: any, callback: ListenerCallback): void; } }