import type { IAgentRuntime } from "../../../../types/index.ts";
import type { ClipboardConfig, ClipboardEntry, ClipboardReadOptions, ClipboardSearchOptions, ClipboardSearchResult, ClipboardWriteOptions } from "../types.ts";
export declare const DEFAULT_CLIPBOARD_CONFIG: ClipboardConfig;
export declare function resolveClipboardConfig(config?: Partial<ClipboardConfig>, runtime?: IAgentRuntime): ClipboardConfig;
/**
 * Service for managing file-based clipboard memories.
 * Provides write, read, search, list, and delete operations.
 */
export declare class ClipboardService {
    private config;
    constructor(runtime: IAgentRuntime, config?: Partial<ClipboardConfig>);
    /**
     * Ensures the clipboard directory exists
     */
    private ensureDirectory;
    /**
     * Generates a safe filename from a title
     */
    private sanitizeFilename;
    /**
     * Gets the full path for a clipboard entry
     */
    private getFilePath;
    /**
     * Extracts entry ID from a filename
     */
    private getEntryId;
    /**
     * Writes or appends content to a clipboard entry
     */
    write(title: string, content: string, options?: ClipboardWriteOptions): Promise<ClipboardEntry>;
    /**
     * Reads a clipboard entry by ID
     */
    read(id: string, options?: ClipboardReadOptions): Promise<ClipboardEntry>;
    /**
     * Checks if a clipboard entry exists
     */
    exists(id: string): Promise<boolean>;
    /**
     * Lists all clipboard entries
     */
    list(): Promise<ClipboardEntry[]>;
    /**
     * Searches clipboard entries using text matching
     */
    search(query: string, options?: ClipboardSearchOptions): Promise<ClipboardSearchResult[]>;
    /**
     * Deletes a clipboard entry
     */
    delete(id: string): Promise<boolean>;
    /**
     * Gets a summary of all clipboard content
     */
    getSummary(): Promise<string>;
    /**
     * Gets the base path for clipboard files
     */
    getBasePath(): string;
}
/**
 * Factory function to create a ClipboardService instance
 */
export declare function createClipboardService(runtime: IAgentRuntime, config?: Partial<ClipboardConfig>): ClipboardService;
//# sourceMappingURL=clipboardService.d.ts.map