UNPKG

@agentdao/core

Version:

Core functionality, skills, and ready-made UI components for AgentDAO - Web3 subscriptions, content generation, social media, help support, live chat, RSS fetching, web search, and agent pricing integration

79 lines (78 loc) 2.44 kB
export interface SearchResult { title: string; url: string; snippet: string; source?: string; publishedDate?: string; imageUrl?: string; } export interface SearchOptions { maxResults?: number; includeImages?: boolean; includeNews?: boolean; language?: string; region?: string; timeRange?: 'day' | 'week' | 'month' | 'year'; provider?: 'google' | 'bing' | 'openai'; } export interface AISearchResult { searchResults: SearchResult[]; aiAnalysis: string; summary: string; recommendations: string[]; } export declare class SearchError extends Error { readonly originalError?: Error | undefined; constructor(message: string, originalError?: Error | undefined); } export declare class APIKeyMissingError extends Error { constructor(service: string); } export declare class SearchProviders { private static readonly GOOGLE_SEARCH_API; private static readonly BING_SEARCH_API; private static readonly OPENAI_API; private static readonly NEWS_API; private static readonly UNSPLASH_API; /** * Perform web search using configured provider */ static searchWeb(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Search using Google Custom Search API */ static searchGoogle(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Search using Bing Search API */ static searchBing(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Search using OpenAI web search (requires GPT-4 with browsing) */ static searchOpenAI(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Search news using NewsAPI */ static searchNews(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Search images using Unsplash API */ static searchImages(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * AI-powered search with analysis */ static searchWithAI(query: string, context?: string): Promise<AISearchResult>; /** * Get search analytics */ static getSearchAnalytics(): Promise<{ totalSearches: number; popularQueries: string[]; averageResults: number; topSources: string[]; }>; /** * Helper to get days from time range */ private static getDaysFromTimeRange; }