import { ConfigManager } from './config.js';
export interface BaiduHotSearchItem {
    appUrl: string;
    desc: string;
    hotChange: string;
    hotScore: string;
    hotTag: string;
    hotTagImg: string;
    img: string;
    index: number;
    indexUrl: string;
    query: string;
    rawUrl: string;
    show: any[];
    url: string;
    word: string;
}
export interface BilibiliVideoItem {
    title: string;
    desc: string;
    pic: string;
    firstframe: string;
    url: string;
    publocation: string;
    aid: number;
    bvid: string;
    mid: number;
    name: string;
    face: string;
    view: number;
    vv: number;
    danmaku: number;
    reply: number;
    favorite: number;
    coin: number;
    share: number;
    like: number;
}
export interface BaiduApiResponse {
    code: number;
    time: number;
    time2: string;
    data: BaiduHotSearchItem[];
}
export interface BilibiliApiResponse {
    code: number;
    time: number;
    time2: string;
    data: BilibiliVideoItem[];
}
export interface SimplifiedHotSearchItem {
    rank: number;
    title: string;
    hotScore: string;
    trend: string;
    url: string;
    description?: string;
}
export interface SimplifiedBilibiliItem {
    rank: number;
    title: string;
    author: string;
    views: number;
    likes: number;
    coins: number;
    url: string;
    bvid: string;
    description?: string;
    publishLocation?: string;
    stats: {
        danmaku: number;
        reply: number;
        favorite: number;
        share: number;
    };
}
export declare class BaiduHotSearchService {
    private configManager;
    private baseUrl;
    private lastFetchTime;
    private cacheData;
    private readonly CACHE_DURATION;
    constructor(configManager?: ConfigManager);
    /**
     * 获取百度热搜榜数据
     */
    getHotSearchData(useCache?: boolean): Promise<SimplifiedHotSearchItem[]>;
    /**
     * 构建API请求URL
     */
    private buildApiUrl;
    /**
     * 发送API请求
     */
    private makeApiRequest;
    /**
     * 验证API响应
     */
    private validateResponse;
    /**
     * 转换数据格式为简化版本
     */
    private transformData;
    /**
     * 获取趋势文本描述
     */
    private getTrendText;
    /**
     * 检查缓存是否有效
     */
    private isCacheValid;
    /**
     * 更新缓存
     */
    private updateCache;
    /**
     * 错误处理
     */
    private handleError;
    /**
     * 搜索特定关键词的热搜
     */
    searchHotSearch(keyword: string): Promise<SimplifiedHotSearchItem[]>;
    /**
     * 获取排名前N的热搜
     */
    getTopHotSearch(count?: number): Promise<SimplifiedHotSearchItem[]>;
    /**
     * 清除缓存
     */
    clearCache(): void;
}
export declare class BilibiliHotSearchService {
    private configManager;
    private baseUrl;
    private lastFetchTime;
    private cacheData;
    private readonly CACHE_DURATION;
    constructor(configManager?: ConfigManager);
    getBilibiliHotData(useCache?: boolean): Promise<SimplifiedBilibiliItem[]>;
    private buildApiUrl;
    private makeApiRequest;
    private validateResponse;
    private transformData;
    private isCacheValid;
    private updateCache;
    private handleError;
    getTopBilibiliVideos(count?: number): Promise<SimplifiedBilibiliItem[]>;
    searchBilibiliVideos(keyword: string): Promise<SimplifiedBilibiliItem[]>;
    clearCache(): void;
}
//# sourceMappingURL=api.d.ts.map