/** * Wraps a Node-style callback function into a Promise. * Supports both (err) => void and (err, result) => void patterns. */ export function callbackToPromise( fn: (callback: (err: Error | null | undefined) => void) => void, ): Promise; export function callbackToPromise( fn: (callback: (err: Error | null | undefined, result: T) => void) => void, ): Promise; export function callbackToPromise( fn: (callback: (err: Error | null | undefined, result?: T) => void) => void, ): Promise { return new Promise((resolve, reject) => { fn((err, result) => { if (err) { reject(err); return; } resolve(result as T); }); }); }