Resily is a TypeScript resilience and transient-fault-handling library that allows developers to express policies such as Retry, Fallback, Circuit Breaker, Timeout, Bulkhead Isolation, and Cache. Inspired by App-vNext/Polly.
A TimeoutPolicy should be able to limit the time the caller should wait for a method to return. A TimeoutException should be thrown if the called function neither returns nor throws within the specified time interval. The original result and exceptions should be returned/thrown transparently.