import type { CliTool } from './types';
/**
 * Memory Prompts — filesystem-backed prompt snippets located at
 * `<project>/.ccweb/memory/*.md`, toggleable into CLAUDE.md with
 * `START <name>` / `END <name>` markers (bare-text, one per line) surrounding
 * the inserted body.
 *
 * Design deltas from Agent Prompts:
 * - Content source is the filesystem (the user maintains the md files
 *   externally); no in-app editor, no share, no delete.
 * - Inserted block is bracket-marked by filename, so the remove path is
 *   deterministic (no "try three text-match levels" fallback).
 * - Only one copy of each memory block can be inserted at a time — a second
 *   insert is idempotent (refreshes in place rather than appending twice).
 */
export interface MemoryPromptItem {
    filename: string;
    name: string;
    preview: string;
    inserted: boolean;
    lineCount: number;
}
/** Line count as shown to the user: strips a single trailing `\n` before
 *  counting, so "a\nb\n" (editor shows 2 lines) and "a\nb" both return 2. */
export declare function lineCountOf(content: string): number;
export interface MemoryListResult {
    items: MemoryPromptItem[];
    claudeMdLineCount: number;
}
export declare function listMemoryPrompts(folderPath: string, cliTool?: CliTool): MemoryListResult;
export type ToggleAction = 'insert' | 'remove';
export interface ToggleResult {
    ok: boolean;
    changed: boolean;
    inserted: boolean;
    reason?: string;
    claudeMdLineCount?: number;
}
export declare function toggleMemoryPrompt(folderPath: string, filename: string, action: ToggleAction, cliTool?: CliTool): ToggleResult;
//# sourceMappingURL=memory-prompts.d.ts.map