import { LinkedListNode } from 'dbl-linked-list-ds'; import { SubscriberFunctionReturnType } from './SubscriberFunction'; import { ISubscription } from './Subscription'; export interface ISubscription { unsubscribe(): void; readonly closed: boolean; } export declare class Subscription implements ISubscription { private dispose; closed: boolean; constructor(dispose: SubscriberFunctionReturnType); unsubscribe(): void; } export declare class CompositeSubscription implements ISubscription { closed: boolean; private subscriptions; constructor(); head(): LinkedListNode | undefined; tail(): LinkedListNode | undefined; add(d: ISubscription): LinkedListNode; remove(d?: LinkedListNode): number | void; length(): number; unsubscribe(): void; }