From d6c594dc2aae293392c0062a2644e3624a1b57bd Mon Sep 17 00:00:00 2001 From: dejan-lukic <105333780+dejan-lukic@users.noreply.github.com> Date: Mon, 14 Apr 2025 10:02:32 +1000 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20Merge=20PR=20#72064=20[rascal]?= =?UTF-8?q?=20Fix=20@typescript-eslint/no-misused-promises=20errors=20on?= =?UTF-8?q?=20subscription=20events=20by=20@dejan-lukic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- types/rascal/index.d.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/types/rascal/index.d.ts b/types/rascal/index.d.ts index 0d7818d03a3f4a..824d70171cc5f9 100644 --- a/types/rascal/index.d.ts +++ b/types/rascal/index.d.ts @@ -437,16 +437,20 @@ declare const testConfig: { }; type AckOrNack = (err?: Error, recovery?: Recovery | Recovery[]) => void; +type CallbackReturn = T | Promise; export class SubscriberSessionAsPromised extends EventEmitter { name: string; cancel(): Promise; - on(event: "message", listener: (message: Message, content: any, ackOrNackFn: AckOrNack) => void): this; - on(event: "error" | "cancelled", listener: (err: Error) => void): this; + on( + event: "message", + listener: (message: Message, content: any, ackOrNackFn: AckOrNack) => CallbackReturn, + ): this; + on(event: "error" | "cancelled", listener: (err: Error) => CallbackReturn): this; on( event: "invalid_content" | "redeliveries_exceeded" | "redeliveries_error", - listener: (err: Error, message: Message, ackOrNackFn: AckOrNack) => void, + listener: (err: Error, message: Message, ackOrNackFn: AckOrNack) => CallbackReturn, ): this; } @@ -472,11 +476,14 @@ export class SubscriptionSession extends EventEmitter { isCancelled(): boolean; cancel(next: ErrorCb): void; - on(event: "message", listener: (message: Message, content: any, ackOrNackFn: AckOrNack) => void): this; - on(event: "error" | "cancelled", listener: (err: Error) => void): this; + on( + event: "message", + listener: (message: Message, content: any, ackOrNackFn: AckOrNack) => CallbackReturn, + ): this; + on(event: "error" | "cancelled", listener: (err: Error) => CallbackReturn): this; on( event: "invalid_content" | "redeliveries_exceeded" | "redeliveries_error", - listener: (err: Error, message: Message, ackOrNackFn: AckOrNack) => void, + listener: (err: Error, message: Message, ackOrNackFn: AckOrNack) => CallbackReturn, ): this; }