import { AsyncLocalStorage } from "node:async_hooks"; const requestSignalStorage = new AsyncLocalStorage(); export function withRequestSignal( signal: AbortSignal, callback: () => T, ): T { return requestSignalStorage.run(signal, callback); } export function currentRequestSignal() { return requestSignalStorage.getStore(); }