import { isAsyncIterable, isIterable } from 'ix/internal/isiterable'; import { Observable, Observer, Subject, Subscription } from 'rxjs'; import { AnonymousSubscription } from 'rxjs/Subscription'; import { Logging } from '../Utils'; import { Command, ObservableLike, ObservableOrValue, Property } from './Interfaces'; export { isIterable, isAsyncIterable }; export declare function isSubscription(value: any): value is AnonymousSubscription; export declare function isObservable(value: any): value is Observable; export declare function isObserver(value: any): value is Observer; export declare function isSubject(value: any): value is Subject; export declare function isProperty(value: any): value is Property; export declare function isCommand(value: any): value is Command; export declare function asObservable(value: ObservableOrValue): Observable; export declare function getObservable(observableLike: ObservableLike | undefined): Observable; export declare function getProperty(observableLike: ObservableLike | undefined, initialValue?: T, compare?: boolean | ((x: T, y: T) => boolean), keySelector?: (x: T) => any): Property; export declare function handleError(e: any, ...optionalParams: any[]): void; export declare function logError(err: Error, ...optionalParams: any[]): void; export declare function logObservable(logger: Logging.Logger, observable: Observable, name: string): Subscription; export declare function logMemberObservables(logger: Logging.Logger, source: StringMap): Subscription[]; export declare function getObservableOrAlert(observableFactory: () => Observable, header?: string, style?: string, timeout?: number, errorFormatter?: (e: TError) => string, errorResult?: Observable): Observable; export declare function getObservableResultOrAlert(resultFactory: () => TResult, header?: string, style?: string, timeout?: number, errorFormatter?: (e: TError) => string, errorResult?: Observable): Observable; export declare function subscribeOrAlert(observableFactory: () => Observable, header: string, onNext: (value: T) => void, style?: string, timeout?: number, errorFormatter?: (e: TError) => string, errorResult?: Observable): Subscription;