import { c as PersistOptions, o as PersistApi } from "../persist-core-B649IGlX.mjs";

//#region src/adapters/sources/mobx.d.ts
/**
 * Persist a mobx observable object. `toJS` for reads, `Object.assign` for
 * writes, `observe` for change tracking.
 *
 * @example
 * ```ts
 * import { observable } from "mobx";
 * import { persistObservable } from "@stainless-code/persist/sources/mobx";
 * const state = observable.object({ count: 0 });
 * const persist = persistObservable(state, { name: "count" });
 * ```
 */
declare function persistObservable<TState extends object, TPersistedState = TState>(observable: TState, options: PersistOptions<TState, TPersistedState>): PersistApi<TState, TPersistedState>;
//#endregion
export { persistObservable };