@restnfeel/agentc-starter-kit
Version:
한국어 기업용 CMS 모듈 - Task Master AI와 함께 빠르게 웹사이트를 구현할 수 있는 재사용 가능한 컴포넌트 시스템
60 lines • 1.89 kB
TypeScript
import { BaseDocumentLoader } from "./base";
import { Document } from "../types";
export interface RSSLoaderConfig {
maxItems?: number;
includeContent?: boolean;
requestOptions?: {
timeout?: number;
headers?: Record<string, string>;
};
}
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<Document>;
loadFromURL(url: string): Promise<Document[]>;
loadFromString(rssContent: string, sourceUrl: string): Promise<Document[]>;
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<Document[]>;
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<Map<string, Document[]>>;
getFeedNames(): string[];
getFeed(name: string): RSSLoader | undefined;
}
//# sourceMappingURL=rss.d.ts.map