| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | 
							- export interface AnonymousSubscription {
 
-     unsubscribe(): void;
 
- }
 
- export declare type TeardownLogic = AnonymousSubscription | Function | void;
 
- export interface ISubscription extends AnonymousSubscription {
 
-     unsubscribe(): void;
 
-     readonly closed: boolean;
 
- }
 
- /**
 
-  * Represents a disposable resource, such as the execution of an Observable. A
 
-  * Subscription has one important method, `unsubscribe`, that takes no argument
 
-  * and just disposes the resource held by the subscription.
 
-  *
 
-  * Additionally, subscriptions may be grouped together through the `add()`
 
-  * method, which will attach a child Subscription to the current Subscription.
 
-  * When a Subscription is unsubscribed, all its children (and its grandchildren)
 
-  * will be unsubscribed as well.
 
-  *
 
-  * @class Subscription
 
-  */
 
- export declare class Subscription implements ISubscription {
 
-     static EMPTY: Subscription;
 
-     /**
 
-      * A flag to indicate whether this Subscription has already been unsubscribed.
 
-      * @type {boolean}
 
-      */
 
-     closed: boolean;
 
-     protected _parent: Subscription;
 
-     protected _parents: Subscription[];
 
-     private _subscriptions;
 
-     /**
 
-      * @param {function(): void} [unsubscribe] A function describing how to
 
-      * perform the disposal of resources when the `unsubscribe` method is called.
 
-      */
 
-     constructor(unsubscribe?: () => void);
 
-     /**
 
-      * Disposes the resources held by the subscription. May, for instance, cancel
 
-      * an ongoing Observable execution or cancel any other type of work that
 
-      * started when the Subscription was created.
 
-      * @return {void}
 
-      */
 
-     unsubscribe(): void;
 
-     /**
 
-      * Adds a tear down to be called during the unsubscribe() of this
 
-      * Subscription.
 
-      *
 
-      * If the tear down being added is a subscription that is already
 
-      * unsubscribed, is the same reference `add` is being called on, or is
 
-      * `Subscription.EMPTY`, it will not be added.
 
-      *
 
-      * If this subscription is already in an `closed` state, the passed
 
-      * tear down logic will be executed immediately.
 
-      *
 
-      * @param {TeardownLogic} teardown The additional logic to execute on
 
-      * teardown.
 
-      * @return {Subscription} Returns the Subscription used or created to be
 
-      * added to the inner subscriptions list. This Subscription can be used with
 
-      * `remove()` to remove the passed teardown logic from the inner subscriptions
 
-      * list.
 
-      */
 
-     add(teardown: TeardownLogic): Subscription;
 
-     /**
 
-      * Removes a Subscription from the internal list of subscriptions that will
 
-      * unsubscribe during the unsubscribe process of this Subscription.
 
-      * @param {Subscription} subscription The subscription to remove.
 
-      * @return {void}
 
-      */
 
-     remove(subscription: Subscription): void;
 
-     private _addParent(parent);
 
- }
 
 
  |