import { BaseDocumentLoader } from "./base"; import { Document } from "../types"; export interface RSSLoaderConfig { maxItems?: number; includeContent?: boolean; requestOptions?: { timeout?: number; headers?: Record; }; } export interface RSSItem { title?: string; link?: string; content?: string; contentSnippet?: string; author?: string; pubDate?: string; categories?: string[]; guid?: string; } export interface RSSFeed { title?: string; description?: string; link?: string; language?: string; lastBuildDate?: string; items: RSSItem[]; } export declare class RSSLoader extends BaseDocumentLoader { supportedExtensions: string[]; private parser; private config; constructor(config?: RSSLoaderConfig); load(filePath: string, content: Buffer): Promise; loadFromURL(url: string): Promise; loadFromString(rssContent: string, sourceUrl: string): Promise; private processFeed; private createDocumentFromItem; private cleanHtmlContent; private detectLanguage; protected generateDocumentId(identifier: string): string; } export declare class NaverBlogRSSLoader extends RSSLoader { private blogId; constructor(blogId: string, config?: RSSLoaderConfig); loadBlog(): Promise; getBlogId(): string; getRSSUrl(): string; static createFromUrl(url: string, config?: RSSLoaderConfig): NaverBlogRSSLoader; static extractBlogId(url: string): string | null; } export declare class RSSFeedManager { private feedSources; addFeed(name: string, loader: RSSLoader): void; removeFeed(name: string): boolean; loadAllFeeds(): Promise>; getFeedNames(): string[]; getFeed(name: string): RSSLoader | undefined; } //# sourceMappingURL=rss.d.ts.map