import { type $Callback } from "@dweb-browser/helper/createSignal.ts"; import { BasePlugin } from "../components/base/base.plugin.js"; type $Transform = (value: T) => R; /** * 提供了一个状态的读取与更新的功能 */ export declare class StateObserver { private plugin; private fetcher; private coder; private buildWsUrl; private _ipc; constructor(plugin: BasePlugin, fetcher: () => Promise, coder: { decode: $Transform; encode: $Transform; }, buildWsUrl?: (ws_url: URL) => Promise); private ws?; /**监听状态变化 */ jsonlines(options?: { signal?: AbortSignal; }): Promise, void, unknown>>; pullMessage(wsUrl: string, controller: ReadableStreamDefaultController): void; stopObserve(): void; private _currentState?; /** * 当前的状态集合 */ get currentState(): STATE | undefined; set currentState(state: STATE | undefined); private _signalCurrentStateChange; readonly onChange: (cb: $Callback<[STATE]>) => import("@dweb-browser/helper/createSignal.ts").$OffListener; /** * 获取当前状态栏的完整信息 * @returns */ getState(force_update?: boolean): Promise; /** * 刷新获取有关状态栏当前状态的信息。 */ private _updateCurrentState; } export interface $Coder { decode: $Transform; encode: $Transform; } export {}; //# sourceMappingURL=StateObserver.d.ts.map