import { type ChildObservable, type InitializedObservable, type Observable, type ObservableBase, type Operator, type Subscription, type UpdateToken, type WithInitialValueOperator } from '../types/index.mjs';
export declare class ObservableBaseClass['kind'], Depth extends ObservableBase['depth']> implements ObservableBase {
#private;
readonly id: import("../types/id.mjs").ObservableId;
readonly kind: Kind;
readonly depth: Depth;
constructor({ kind, depth, initialValue, }: Readonly<{
kind: Kind;
depth: Depth;
initialValue: ReturnType['getSnapshot']>;
}>);
addChild(child: ChildObservable): void;
getSnapshot(): ReturnType['getSnapshot']>;
protected getCurrentValue(): ReturnType['getSnapshot']>;
get isCompleted(): boolean;
get updateToken(): UpdateToken;
get hasSubscriber(): boolean;
get hasChild(): boolean;
hasActiveChild(): boolean;
protected setNext(nextValue: A, updateToken: UpdateToken): void;
tryUpdate(_updateToken: UpdateToken): void;
tryComplete(): void;
complete(): void;
pipe(operator: WithInitialValueOperator): InitializedObservable;
pipe(operator: Operator): Observable;
subscribe(onNext: (v: A) => void, onComplete?: () => void): Subscription;
}
//# sourceMappingURL=observable-base-class.d.mts.map