import type { MastraCodeState } from '@mastra/code-sdk/schema'; import type { MemorySettingsRecord } from '../storage/domains/memory-settings/base.js'; import type { SourceControlStorageHandle } from '../storage/domains/source-control/base.js'; /** Default thresholds mirror the TUI `/om` fallbacks. */ export declare const DEFAULT_OBSERVATION_THRESHOLD = 30000; export declare const DEFAULT_REFLECTION_THRESHOLD = 40000; /** * Layer a channel sender's own row over the project's shared row. The sender * wins only for knobs they saved; an unsaved (`null`) knob keeps the project's * value rather than resetting to Auto or the built-in default, because the * project's choice may be the only credentialed one. */ export declare function layerPersonalMemorySettings(project: MemorySettingsRecord | null, personal: MemorySettingsRecord | null): MemorySettingsRecord | null; export interface MemorySettingsHydrationSession { readonly identity: { getResourceId(): string; }; state: { get: () => MastraCodeState | undefined; set: (updates: Partial) => Promise | void; }; } export interface MemorySettingsHydrationDependencies { /** GitHub-integration source-control rows — the only creator of web user sessions today. */ sourceControl: { sessions: Pick; }; } /** * Seed a freshly created controller session's tenant org from its source-control * row. Memory settings remain DB-authoritative and are loaded into request * context for each invocation instead of being copied into mutable session * state. */ export declare function hydrateSessionMemorySettings(session: MemorySettingsHydrationSession, { sourceControl }: MemorySettingsHydrationDependencies): Promise; //# sourceMappingURL=memory-settings-hydration.d.ts.map