import { ColdObservable } from './src/rxjs/cold-observable'; import { HotObservable } from './src/rxjs/hot-observable'; import { Subscription } from 'rxjs'; export type ObservableWithSubscriptions = ColdObservable | HotObservable; export { Scheduler } from './src/rxjs/scheduler'; declare global { namespace jest { interface Matchers> { toBeObservable(observable: ObservableWithSubscriptions): R; toHaveSubscriptions(marbles: string | string[]): R; toHaveNoSubscriptions(): R; toBeMarble(marble: string): R; toSatisfyOnFlush(func: () => void): R; } } } declare module 'expect' { interface Matchers> { toBeObservable(observable: ObservableWithSubscriptions): R; toHaveSubscriptions(marbles: string | string[]): R; toHaveNoSubscriptions(): R; toBeMarble(marble: string): R; toSatisfyOnFlush(func: () => void): R; } } export declare function hot(marbles: string, values?: object, error?: object): HotObservable; export declare function cold(marbles: string, values?: object, error?: object): ColdObservable; export declare function time(marbles: string): number; export declare function schedule(work: () => void, delay: number): Subscription;