import { type PluginManifest } from "../../manifest.js";
export type BundledPluginContractSnapshot = {
    pluginId: string;
    cliBackendIds: string[];
    providerIds: string[];
    providerAuthEnvVars: Record<string, string[]>;
    speechProviderIds: string[];
    realtimeTranscriptionProviderIds: string[];
    realtimeVoiceProviderIds: string[];
    mediaUnderstandingProviderIds: string[];
    documentExtractorIds: string[];
    imageGenerationProviderIds: string[];
    videoGenerationProviderIds: string[];
    musicGenerationProviderIds: string[];
    webContentExtractorIds: string[];
    webFetchProviderIds: string[];
    webSearchProviderIds: string[];
    migrationProviderIds: string[];
    toolNames: string[];
};
export type BundledCapabilityManifest = Pick<PluginManifest, "id" | "autoEnableWhenConfiguredProviders" | "cliBackends" | "contracts" | "legacyPluginIds" | "providerAuthEnvVars" | "providers">;
export declare function buildBundledPluginContractSnapshot(manifest: BundledCapabilityManifest): BundledPluginContractSnapshot;
export declare function hasBundledPluginContractSnapshotCapabilities(entry: BundledPluginContractSnapshot): boolean;
export declare const BUNDLED_PLUGIN_CONTRACT_SNAPSHOTS: readonly BundledPluginContractSnapshot[];
export declare const BUNDLED_LEGACY_PLUGIN_ID_ALIASES: Readonly<Record<string, string>>;
export declare const BUNDLED_AUTO_ENABLE_PROVIDER_PLUGIN_IDS: Readonly<Record<string, string>>;
type BundledContractIdSnapshotKey = Exclude<keyof Omit<BundledPluginContractSnapshot, "pluginId">, "providerAuthEnvVars">;
export declare function resolveBundledContractSnapshotPluginIds(key: BundledContractIdSnapshotKey): string[];
export {};
