import type { OpenClawConfig } from "../config/types.openclaw.js"; import type { PluginMetadataSnapshot } from "./plugin-metadata-snapshot.types.js"; import type { PluginRegistry } from "./registry-types.js"; type CapabilityProviderRegistryKey = "memoryEmbeddingProviders" | "speechProviders" | "realtimeTranscriptionProviders" | "realtimeVoiceProviders" | "mediaUnderstandingProviders" | "imageGenerationProviders" | "videoGenerationProviders" | "musicGenerationProviders"; type CapabilityProviderForKey = PluginRegistry[K][number] extends { provider: infer T; } ? T : never; export declare function loadCapabilityManifestSnapshot(params: { cfg?: OpenClawConfig; workspaceDir?: string; }): Pick; export declare function resolveManifestCapabilityProviderIds(params: { key: CapabilityProviderRegistryKey; cfg?: OpenClawConfig; workspaceDir?: string; }): string[]; export declare function resolveBundledCapabilityProviderIds(params: { key: CapabilityProviderRegistryKey; cfg?: OpenClawConfig; workspaceDir?: string; }): string[]; export declare function resolvePluginCapabilityProvider(params: { key: K; providerId: string; cfg?: OpenClawConfig; }): CapabilityProviderForKey | undefined; export declare function resolvePluginCapabilityProviders(params: { key: K; cfg?: OpenClawConfig; }): CapabilityProviderForKey[]; export {};