import type { ImageGenerationProviderPlugin, MediaUnderstandingProviderPlugin, MusicGenerationProviderPlugin, ProviderPlugin, SpeechProviderPlugin, VideoGenerationProviderPlugin } from "../../../src/plugins/types.js";
import { createTestPluginApi } from "./plugin-api.js";
type RegisteredProviderCollections = {
    providers: ProviderPlugin[];
    speechProviders: SpeechProviderPlugin[];
    mediaProviders: MediaUnderstandingProviderPlugin[];
    imageProviders: ImageGenerationProviderPlugin[];
    musicProviders: MusicGenerationProviderPlugin[];
    videoProviders: VideoGenerationProviderPlugin[];
};
type ProviderPluginModule = {
    register(api: ReturnType<typeof createTestPluginApi>): void | Promise<void>;
};
export declare function registerProviderPlugin(params: {
    plugin: ProviderPluginModule;
    id: string;
    name: string;
}): Promise<RegisteredProviderCollections>;
export declare function requireRegisteredProvider<T extends {
    id: string;
}>(entries: T[], id: string, label?: string): T;
export {};
