import type { KlawConfig } from "../config/types.klaw.js"; import type { CodexAppServerExtensionFactory } from "./codex-app-server-extension-types.js"; import type { PluginAgentEventSubscriptionRegistration, PluginControlUiDescriptor, PluginRuntimeLifecycleRegistration, PluginSessionActionRegistration, PluginSessionSchedulerJobRegistration, PluginSessionExtensionRegistration, PluginToolMetadataRegistration, PluginTrustedToolPolicyRegistration } from "./host-hooks.js"; import type { MemoryEmbeddingProviderAdapter } from "./memory-embedding-providers.js"; import type { PluginAgentToolResultMiddlewareRegistration } from "./registry-types.js"; import type { AnyAgentTool, AgentHarness, CliBackendPlugin, KlawPluginApi, ImageGenerationProviderPlugin, MediaUnderstandingProviderPlugin, MigrationProviderPlugin, MusicGenerationProviderPlugin, KlawPluginCliCommandDescriptor, KlawPluginCliRegistrar, PluginTextTransformRegistration, ProviderPlugin, RealtimeTranscriptionProviderPlugin, RealtimeVoiceProviderPlugin, SpeechProviderPlugin, UnifiedModelCatalogProviderPlugin, VideoGenerationProviderPlugin, WebFetchProviderPlugin, WebSearchProviderPlugin } from "./types.js"; type CapturedPluginCliRegistration = { register: KlawPluginCliRegistrar; parentPath: string[]; commands: string[]; descriptors: KlawPluginCliCommandDescriptor[]; }; export type CapturedPluginRegistration = { api: KlawPluginApi; providers: ProviderPlugin[]; agentHarnesses: AgentHarness[]; cliRegistrars: CapturedPluginCliRegistration[]; cliBackends: CliBackendPlugin[]; textTransforms: PluginTextTransformRegistration[]; codexAppServerExtensionFactories: CodexAppServerExtensionFactory[]; agentToolResultMiddlewares: PluginAgentToolResultMiddlewareRegistration[]; speechProviders: SpeechProviderPlugin[]; realtimeTranscriptionProviders: RealtimeTranscriptionProviderPlugin[]; realtimeVoiceProviders: RealtimeVoiceProviderPlugin[]; mediaUnderstandingProviders: MediaUnderstandingProviderPlugin[]; imageGenerationProviders: ImageGenerationProviderPlugin[]; videoGenerationProviders: VideoGenerationProviderPlugin[]; musicGenerationProviders: MusicGenerationProviderPlugin[]; webFetchProviders: WebFetchProviderPlugin[]; webSearchProviders: WebSearchProviderPlugin[]; migrationProviders: MigrationProviderPlugin[]; memoryEmbeddingProviders: MemoryEmbeddingProviderAdapter[]; sessionExtensions: PluginSessionExtensionRegistration[]; trustedToolPolicies: PluginTrustedToolPolicyRegistration[]; toolMetadata: PluginToolMetadataRegistration[]; controlUiDescriptors: PluginControlUiDescriptor[]; runtimeLifecycles: PluginRuntimeLifecycleRegistration[]; agentEventSubscriptions: PluginAgentEventSubscriptionRegistration[]; sessionSchedulerJobs: PluginSessionSchedulerJobRegistration[]; sessionActions: PluginSessionActionRegistration[]; tools: AnyAgentTool[]; modelCatalogProviders: UnifiedModelCatalogProviderPlugin[]; }; export declare function createCapturedPluginRegistration(params?: { config?: KlawConfig; id?: string; name?: string; registrationMode?: KlawPluginApi["registrationMode"]; source?: string; }): CapturedPluginRegistration; export declare function capturePluginRegistration(params: NonNullable[0]> & { register(api: KlawPluginApi): void; }): CapturedPluginRegistration; export {};