import { type ExportMessage, type ExportMetadata } from './markdown.js'; export type { ExportMessage, ExportMetadata }; export interface ExportOptions { /** Redact API keys, absolute file paths, and other sensitive data. */ redact?: boolean | undefined; } export interface SessionExportData { messages: ExportMessage[]; metadata?: ExportMetadata | undefined; /** Cost in USD, if tracked. */ cost?: number | undefined; /** ISO timestamp of export. */ exportedAt?: string | undefined; } /** * redactMessage - Deep-clone a message and redact all string fields that may * contain sensitive data (content, reasoning, tool arguments). */ export declare function redactMessage(msg: ExportMessage): ExportMessage; /** * exportToJSON - Serialize a session to machine-readable JSON. * * Output includes metadata (model, provider, session ID, timestamp, token * usage totals, cost), then the full message array with all fields preserved. */ export declare function exportToJSON(messages: ExportMessage[], metadata?: ExportMetadata, options?: ExportOptions & { cost?: number; }): string; /** * exportToMarkdownExtended - Wrapper around markdown.ts exportToMarkdown that * adds cost information and optional redaction. */ export declare function exportToMarkdownExtended(messages: ExportMessage[], metadata?: ExportMetadata, options?: ExportOptions & { cost?: number; }): string; /** * exportToHTML - Generate a self-contained, styled HTML document from a * conversation. Features: * * - Embedded CSS (dark theme, readable typography) * - Syntax-highlighted fenced code blocks (language class on ) * - Collapsible
sections for tool calls and tool results * - Metadata table in the header * - Token usage and cost summary at the foot */ export declare function exportToHTML(messages: ExportMessage[], metadata?: ExportMetadata, options?: ExportOptions & { cost?: number; }): string; /** * defaultExportPath - Build the default output path for a share export. * * Format: ~/goodvibes-exports/session-. */ export declare function defaultExportPath(format: 'html' | 'json' | 'md', homeDirectory: string): string; //# sourceMappingURL=session-export.d.ts.map