export type ProcessEvent = { processType: string, phase: string, command?: string, content?: string, contentType?: string, }; export type ProcessEventCallback = (event: ProcessEvent) => void; export type ErrorEventCallback = (event: Error) => void; export interface SummarizerProcessParams { url: string; language?: string; country?: string; } export interface SummarizerEventEmitter extends NodeJS.EventEmitter { process(params: T): void; on(eventType: 'process', callback: ProcessEventCallback): this; on(eventType: 'error', callback: ErrorEventCallback): this; on(eventType: 'end', callback: () => void): this; } export interface OpenAiParams { apiKey: string; organizationId?: string; model?: string; temperature?: number; } export interface CreateBaseSummarizerParams { openAiParams: OpenAiParams; }