| import { PartialObserver } from './types'; | 
| import { Observable } from './Observable'; | 
| /** | 
|  * @deprecated NotificationKind is deprecated as const enums are not compatible with isolated modules. Use a string literal instead. | 
|  */ | 
| export declare enum NotificationKind { | 
|     NEXT = "N", | 
|     ERROR = "E", | 
|     COMPLETE = "C" | 
| } | 
| /** | 
|  * Represents a push-based event or value that an {@link Observable} can emit. | 
|  * This class is particularly useful for operators that manage notifications, | 
|  * like {@link materialize}, {@link dematerialize}, {@link observeOn}, and | 
|  * others. Besides wrapping the actual delivered value, it also annotates it | 
|  * with metadata of, for instance, what type of push message it is (`next`, | 
|  * `error`, or `complete`). | 
|  * | 
|  * @see {@link materialize} | 
|  * @see {@link dematerialize} | 
|  * @see {@link observeOn} | 
|  * | 
|  * @class Notification<T> | 
|  */ | 
| export declare class Notification<T> { | 
|     kind: 'N' | 'E' | 'C'; | 
|     value?: T; | 
|     error?: any; | 
|     hasValue: boolean; | 
|     constructor(kind: 'N' | 'E' | 'C', value?: T, error?: any); | 
|     /** | 
|      * Delivers to the given `observer` the value wrapped by this Notification. | 
|      * @param {Observer} observer | 
|      * @return | 
|      */ | 
|     observe(observer: PartialObserver<T>): any; | 
|     /** | 
|      * Given some {@link Observer} callbacks, deliver the value represented by the | 
|      * current Notification to the correctly corresponding callback. | 
|      * @param {function(value: T): void} next An Observer `next` callback. | 
|      * @param {function(err: any): void} [error] An Observer `error` callback. | 
|      * @param {function(): void} [complete] An Observer `complete` callback. | 
|      * @return {any} | 
|      */ | 
|     do(next: (value: T) => void, error?: (err: any) => void, complete?: () => void): any; | 
|     /** | 
|      * Takes an Observer or its individual callback functions, and calls `observe` | 
|      * or `do` methods accordingly. | 
|      * @param {Observer|function(value: T): void} nextOrObserver An Observer or | 
|      * the `next` callback. | 
|      * @param {function(err: any): void} [error] An Observer `error` callback. | 
|      * @param {function(): void} [complete] An Observer `complete` callback. | 
|      * @return {any} | 
|      */ | 
|     accept(nextOrObserver: PartialObserver<T> | ((value: T) => void), error?: (err: any) => void, complete?: () => void): any; | 
|     /** | 
|      * Returns a simple Observable that just delivers the notification represented | 
|      * by this Notification instance. | 
|      * @return {any} | 
|      */ | 
|     toObservable(): Observable<T>; | 
|     private static completeNotification; | 
|     private static undefinedValueNotification; | 
|     /** | 
|      * A shortcut to create a Notification instance of the type `next` from a | 
|      * given value. | 
|      * @param {T} value The `next` value. | 
|      * @return {Notification<T>} The "next" Notification representing the | 
|      * argument. | 
|      * @nocollapse | 
|      */ | 
|     static createNext<T>(value: T): Notification<T>; | 
|     /** | 
|      * A shortcut to create a Notification instance of the type `error` from a | 
|      * given error. | 
|      * @param {any} [err] The `error` error. | 
|      * @return {Notification<T>} The "error" Notification representing the | 
|      * argument. | 
|      * @nocollapse | 
|      */ | 
|     static createError<T>(err?: any): Notification<T>; | 
|     /** | 
|      * A shortcut to create a Notification instance of the type `complete`. | 
|      * @return {Notification<any>} The valueless "complete" Notification. | 
|      * @nocollapse | 
|      */ | 
|     static createComplete(): Notification<any>; | 
| } |