import type { SessionEntry } from '@earendil-works/pi-coding-agent'; import type { WaggleConfig } from '@openwaggle/waggle-core'; import { type PiWaggleModeState } from './protocol.js'; export interface PiWaggleModeStateWriter { readonly appendCustomEntry: (customType: string, data?: unknown) => string | undefined; } export interface PiWaggleModeStateReader { readonly getBranch: () => readonly SessionEntry[]; } export declare function enabledPiWaggleModeState(input: { readonly config: WaggleConfig; readonly presetId?: string; readonly updatedAt?: number; }): PiWaggleModeState; export declare function disabledPiWaggleModeState(input?: { readonly updatedAt?: number; }): PiWaggleModeState; export declare function appendPiWaggleModeState(writer: PiWaggleModeStateWriter, state: PiWaggleModeState): string | undefined; export declare function latestPiWaggleModeStateFromEntries(entries: readonly SessionEntry[]): PiWaggleModeState | null; export declare function latestPiWaggleModeStateFromBranch(sessionManager: PiWaggleModeStateReader): PiWaggleModeState | null;