export type TranscriptSource = "chatgpt" | "claude" | "slack" | "discord" | "meeting" | "claude-code" | "codex" | "cursor" | "other";
export interface ParsedMessage {
    timestamp: string | null;
    author: string;
    role: "user" | "assistant" | "system" | "unknown";
    content: string;
}
export interface ParsedConversation {
    id: string;
    title: string;
    source: TranscriptSource;
    messages: ParsedMessage[];
    createdAt: string | null;
    updatedAt: string | null;
}
export interface TranscriptParseResult {
    conversations: ParsedConversation[];
    source: TranscriptSource;
    filePath: string;
    totalMessages: number;
}
export interface IngestTranscriptOptions {
    filePath: string;
    source?: TranscriptSource;
    preview?: boolean;
    limit?: number;
    filter?: string;
}
export declare function detectSource(filePath: string, content?: string): TranscriptSource;
export declare function parseTranscript(options: IngestTranscriptOptions): Promise<TranscriptParseResult>;
/**
 * Format transcript parse results for terminal preview output.
 */
export declare function formatTranscriptPreview(result: TranscriptParseResult): string;
/**
 * Convert parsed conversations to Neotoma entity format for storage.
 */
export declare function conversationsToEntities(conversations: ParsedConversation[]): Array<Record<string, unknown>>;
//# sourceMappingURL=transcript_parser.d.ts.map