/**
 * WorkingMemoryStateProcessor
 *
 * Experimental: delivers working memory to the model as a state signal instead
 * of folding it into the system message. Storage and the `setWorkingMemory`
 * tool are unchanged — this processor only changes the delivery path.
 *
 * Pattern matches `BrowserContextProcessor` in `@mastra/core/browser`:
 * - `stateId` namespaces the state lane on the thread.
 * - `cacheKey` is derived from the rendered payload so dedup is automatic.
 * - `contextWindow.hasSnapshot` re-injection ensures the model still sees the
 *   current snapshot after older messages drop out of the window.
 *
 * Delta emission (markdown mode only): when a prior snapshot exists in the
 * context window, the processor emits a unified-diff delta against that
 * snapshot's contents. Schema mode and the snapshot fallback always emit a
 * full snapshot.
 *
 * @example
 * ```ts
 * new Memory({
 *   options: {
 *     workingMemory: {
 *       enabled: true,
 *       template: '...',
 *       useStateSignals: true, // auto-attaches this processor
 *     },
 *   },
 * });
 * ```
 */
import type { MastraMemory, MemoryConfigInternal, WorkingMemoryTemplate } from '@mastra/core/memory';
import type { ComputeStateSignalArgs, ComputeStateSignalResult, Processor } from '@mastra/core/processors';
export declare const WORKING_MEMORY_STATE_ID = "working-memory";
export declare const WORKING_MEMORY_STATE_PROCESSOR_ID = "working-memory-state";
export declare class WorkingMemoryStateProcessor implements Processor<typeof WORKING_MEMORY_STATE_PROCESSOR_ID> {
    private readonly memory;
    private readonly memoryConfig?;
    readonly id = "working-memory-state";
    readonly stateId = "working-memory";
    constructor(memory: MastraMemory, memoryConfig?: MemoryConfigInternal | undefined);
    computeStateSignal(args: ComputeStateSignalArgs): Promise<ComputeStateSignalResult>;
}
/**
 * Stable cache key for the rendered working memory payload. Returns a SHA-256
 * digest so dedup metadata stays compact regardless of payload size (working
 * memory blobs can grow arbitrarily long).
 */
export declare function stableWorkingMemoryCacheKey(input: {
    format: WorkingMemoryTemplate['format'];
    data: string | null;
}): string;
//# sourceMappingURL=processor.d.ts.map