/**
 * GeyserMC Source
 *
 * Fetches plugin information from GeyserMC's download API
 * API: https://download.geysermc.org/v2/
 *
 * @since v2.3.4
 */
import type { PluginInfo, SourceType } from '../types/index.js';
import { BasePluginSource } from './base.js';
/**
 * GeyserMC download platform identifiers
 */
type GeyserMCPlatform = 'bungeecord' | 'fabric' | 'neoforge' | 'spigot' | 'standalone' | 'velocity' | 'viaproxy';
/**
 * GeyserMCSource implementation
 */
export declare class GeyserMCSource extends BasePluginSource {
    readonly id = "geysermc";
    readonly name = "GeyserMC";
    readonly type: SourceType;
    private static readonly API_BASE;
    private platform;
    /**
     * Set the target platform for downloads (default: spigot)
     */
    setPlatform(platform: GeyserMCPlatform): void;
    /**
     * Get plugin info by project ID (e.g., "geyser", "floodgate")
     */
    getPluginInfo(projectId: string): Promise<PluginInfo | null>;
    /**
     * Search is not supported by GeyserMC API — returns empty
     */
    searchPlugins(_query: string, _limit?: number): Promise<PluginInfo[]>;
    /**
     * Get latest version for a project
     */
    getLatestVersion(projectId: string): Promise<string | null>;
    /**
     * Override headers
     */
    protected buildHeaders(additional?: Record<string, string>): Record<string, string>;
    /**
     * Get a brief description for known GeyserMC projects
     */
    private getProjectDescription;
}
export {};
//# sourceMappingURL=geysermc.d.ts.map