import { i as OpenClawConfig, p as PluginInstallRecord } from "./types.openclaw-DH5a2ppk.js"; import { n as PluginManifestRegistry, r as PluginDiscoveryResult } from "./manifest-registry-BCD6e2rb.js"; import { n as PluginMetadataSnapshot, t as PluginMetadataRegistryView } from "./plugin-metadata-snapshot.types-DSa-TOrz.js"; import { Kr as PluginRegistryParams, cn as ProviderPlugin, ht as PluginLogger, jr as GatewayRequestHandler, kf as augmentModelCatalogWithProviderPlugins, qr as CreatePluginRuntimeOptions } from "./types-DIBfaBvi.js"; import { n as PluginSdkResolutionPreference } from "./plugin-module-loader-cache-n9cBkaYQ.js"; //#region src/plugins/loader.d.ts type PluginLoadOptions = { config?: OpenClawConfig; activationSourceConfig?: OpenClawConfig; autoEnabledReasons?: Readonly>; workspaceDir?: string; installRecords?: Record; env?: NodeJS.ProcessEnv; resolveRawConfigEnvVars?: boolean; logger?: PluginLogger; coreGatewayHandlers?: Record; coreGatewayMethodNames?: readonly string[]; hostServices?: PluginRegistryParams["hostServices"]; runtimeOptions?: CreatePluginRuntimeOptions; startupTrace?: { detail: (name: string, metrics: ReadonlyArray) => void; }; pluginSdkResolution?: PluginSdkResolutionPreference; cache?: boolean; mode?: "full" | "validate"; onlyPluginIds?: string[]; includeSetupOnlyChannelPlugins?: boolean; forceSetupOnlyChannelPlugins?: boolean; requireSetupEntryForSetupOnlyChannelPlugins?: boolean; /** * Prefer `setupEntry` for configured channel plugins that explicitly opt in * via package metadata because their setup entry covers the pre-listen startup surface. */ preferSetupRuntimeForChannelPlugins?: boolean; /** * Load channel runtime entries even when setup entries are available. Plugin CLI * registration needs the runtime entry because setup entries only own setup state. */ forceFullRuntimeForChannelPlugins?: boolean; /** * For hot startup paths, prefer bundled plugin JS artifacts over source TS * entrypoints when both are present in a source checkout. */ preferBuiltPluginArtifacts?: boolean; toolDiscovery?: boolean; activate?: boolean; loadModules?: boolean; throwOnLoadError?: boolean; manifestRegistry?: PluginManifestRegistry; discovery?: PluginDiscoveryResult; }; //#endregion //#region src/plugins/providers.d.ts declare function resolveOwningPluginIdsForProvider(params: { provider: string; config?: PluginLoadOptions["config"]; workspaceDir?: string; env?: PluginLoadOptions["env"]; manifestRegistry?: PluginManifestRegistry; metadataSnapshot?: Pick; }): string[] | undefined; declare function resolveCatalogHookProviderPluginIds(params: { config?: PluginLoadOptions["config"]; workspaceDir?: string; env?: PluginLoadOptions["env"]; }): string[]; //#endregion //#region src/plugins/providers.runtime.d.ts declare function isPluginProvidersLoadInFlight(params: Parameters[0]): boolean; declare function resolvePluginProviders(params: { config?: PluginLoadOptions["config"]; workspaceDir?: string; /** Use an explicit env when plugin roots should resolve independently from process.env. */ env?: PluginLoadOptions["env"]; bundledProviderVitestCompat?: boolean; onlyPluginIds?: string[]; providerRefs?: readonly string[]; modelRefs?: readonly string[]; activate?: boolean; cache?: boolean; applyAutoEnable?: boolean; pluginSdkResolution?: PluginLoadOptions["pluginSdkResolution"]; mode?: "runtime" | "setup"; includeUntrustedWorkspacePlugins?: boolean; pluginMetadataSnapshot?: PluginMetadataRegistryView; skipIfLoadInFlight?: boolean; }): ProviderPlugin[]; //#endregion export { augmentModelCatalogWithProviderPlugins, isPluginProvidersLoadInFlight, resolveCatalogHookProviderPluginIds, resolveOwningPluginIdsForProvider, resolvePluginProviders };