import { ISubscription } from './Subscription'; export interface IObservableEvent { readonly type: EventType; readonly time: number; } export declare enum EventType { next = "NEXT", error = "ERROR", complete = "COMPLETE", start = "START", end = "END" } export declare class EventNext implements IObservableEvent { time: number; value: T; type: EventType; constructor(time: number, value: T); } export declare class EventError implements IObservableEvent { time: number; value: Error; type: EventType; constructor(time: number, value: Error); } export declare class EventComplete implements IObservableEvent { time: number; type: EventType; constructor(time: number); } export declare class EventEnd implements IObservableEvent { time: number; subscription: ISubscription; type: EventType; constructor(time: number, subscription: ISubscription); } export declare class EventStart implements IObservableEvent { time: number; subscription: ISubscription; type: EventType; constructor(time: number, subscription: ISubscription); } export declare const EVENT: { next(time: number, value: T): EventNext; error(time: number, value: Error): EventError; complete(time: number): EventComplete; start(time: number, subscription: ISubscription): EventStart; end(time: number, subscription: ISubscription): EventEnd; };