import { Observable, Subject } from "rxjs"; import type { ICacheEntry, ICacheEntryOptions } from "../../../query/types/index.js"; /** * Internal reactive container wrapping a Signal.state. * Implements ICacheEntry. */ export declare class CacheEntry implements ICacheEntry { private _state$; private _isCompleted; readonly completed$: Subject; readonly obs: Observable; readonly state$: import("../../../signals/index.js").ReadonlySignal; constructor(initialState: TState, options: ICacheEntryOptions); /** * Raw state stream without keepalive semantics: replays the current state on * subscribe and completes on {@link complete}. Unlike {@link obs}, subscribing * does not hold the share's refcount, so retention GC is unaffected. */ protected get rawObs(): Observable; /** Whether {@link complete} has been called — the state is disposed and reads throw. */ get isCompleted(): boolean; /** Non-reactive read */ peek(): TState; /** Update stored state (no-op if completed). `actionName` labels the change in devtools. */ set(state: TState, actionName?: string): void; /** Fire onClean$ and mark completed. Subsequent set() calls are no-ops. */ complete(): void; private _getResetOnRefCountZero; }