import { SubscriptionObserver } from '../../core/types.h' export function errorAfterTime( ms: number, reason: any ): (observer: SubscriptionObserver) => void export function errorAfterTime(observer: SubscriptionObserver, ms: number, reason: any): void export function errorAfterTime( observerOrMs: SubscriptionObserver | number, msOrReason: number | any, reason?: any ) { if (typeof observerOrMs === 'number') { return (observer: SubscriptionObserver) => { setTimeout(() => observer.error(msOrReason), observerOrMs) } } setTimeout(() => observerOrMs.error(reason), msOrReason) }