import type { Promisable } from 'type-fest';
import type { string_markdown, string_markdown_text } from '../../types/string_markdown';
import type { string_title } from '../../types/string_title';
import type { SearchEngine } from '../SearchEngine';
import type { SearchResult } from '../SearchResult';
/**
 * A search engine implementation that uses the Google Custom Search JSON API.
 *
 * @private <- TODO: !!!! Export via some package
 */
export declare class GoogleSearchEngine implements SearchEngine {
    get title(): string_title & string_markdown_text;
    get description(): string_markdown;
    /**
     * @see https://developers.google.com/custom-search/v1/overview
     */
    checkConfiguration(): Promisable<void>;
    search(query: string, options?: Record<string, unknown>): Promise<SearchResult[]>;
}
