UNPKG

rx-sandbox

Version:

Marble diagram DSL based test suite for RxJS 6/7

48 lines 1.84 kB
import { ObservableNotification } from 'rxjs'; import { SubscriptionLog } from '../utils/coreInternalImport'; /** * Expanded structured type of `ObservableNotification<T>` since we can't narrow down * TestMessage<T> to specific notification types, instead provide wide support */ interface NotificationType<T> { kind: 'N' | 'E' | 'C'; value?: T; error?: any; } /** * Represents interface for single metadata value emitted by HotObservable<T> or ColdObservable<T> * */ interface TestMessage<T = string> { frame: number; notification: NotificationType<T>; } /** * Represents single metadata value emitted by HotObservable<T> or ColdObservable<T> * */ declare class TestMessageValue<T = string> implements TestMessage<T> { readonly frame: number; readonly notification: ObservableNotification<T>; constructor(frame: number, notification: ObservableNotification<T>); } /** * Utility function to generate TestMessage represents value for Observer::next() * @param frame virtual frame time when value will be emitted * @param value */ declare const next: <T = string>(frame: number, value: T) => TestMessage<T>; /** * Utility function to generate TestMessage represents error for Observer::error() * @param frame virtual frame time when value will be emitted * @param value */ declare const error: (frame: number, error?: any) => TestMessage<any>; /** * Utility function to generate TestMessage represents completion for Observer::complete() * @param frame virtual frame time when value will be emitted */ declare const complete: <T = void>(frame: number) => TestMessage<T>; declare const subscribe: (subscribedFrame?: number, unsubscribedFrame?: number) => SubscriptionLog; export { TestMessage, TestMessageValue, next, error, complete, subscribe }; //# sourceMappingURL=TestMessage.d.ts.map