import type { ChildObservable, InitializedObservable, Observable, ObservableBase, Operator, Subscription, ToInitializedOperator, Token } from '../types';
export declare class ObservableBaseClass['kind'], Depth extends ObservableBase['depth']> implements ObservableBase {
#private;
readonly id: import("../types").ObservableId;
readonly kind: Kind;
readonly type: import("../types").ObservableType;
readonly depth: Depth;
constructor({ kind, type, depth, currentValueInit, }: Readonly<{
kind: Kind;
type: ObservableBase['type'];
depth: Depth;
currentValueInit: ObservableBase['currentValue'];
}>);
addChild(child: ChildObservable): void;
get currentValue(): ObservableBase['currentValue'];
protected getCurrentValue(): ObservableBase['currentValue'];
get isCompleted(): boolean;
get token(): Token;
get hasSubscriber(): boolean;
get hasChild(): boolean;
hasActiveChild(): boolean;
protected setNext(nextValue: A, token: Token): void;
tryUpdate(_token: Token): void;
tryComplete(): void;
complete(): void;
chain(operator: ToInitializedOperator): InitializedObservable;
chain(operator: Operator): Observable;
subscribe(onNext: (v: A) => void, onComplete?: () => void): Subscription;
}