UNPKG

every-plugin

Version:
54 lines (53 loc) 2.7 kB
import { PluginRuntimeError } from "../errors.mjs"; import { AnyPlugin, AnyPluginConstructor, LoadedPlugin, PluginInstance, PluginMetadata, PluginRegistry } from "../../types.mjs"; import { ModuleFederationService } from "./module-federation.service.mjs"; import { SecretsService } from "./secrets.service.mjs"; import { InferSchemaInput, InferSchemaOutput } from "@orpc/contract"; import { Context, Effect, Scope } from "effect"; //#region src/runtime/services/plugin-loader.service.d.ts declare const PluginRegistryTag_base: Context.TagClass<PluginRegistryTag, "PluginRegistry", PluginRegistry>; declare class PluginRegistryTag extends PluginRegistryTag_base {} declare const PluginMapTag_base: Context.TagClass<PluginMapTag, "PluginMap", Record<string, AnyPluginConstructor>>; declare class PluginMapTag extends PluginMapTag_base {} declare const RegistryService_base: Effect.Service.Class<RegistryService, "RegistryService", { readonly effect: Effect.Effect<{ get: (pluginId: string) => Effect.Effect<{ constructor: AnyPluginConstructor; metadata: PluginMetadata; } | { constructor: null; metadata: PluginMetadata; }, PluginRuntimeError, never>; getModule: (pluginId: string) => Effect.Effect<AnyPluginConstructor | null, never, never>; }, never, PluginRegistryTag | PluginMapTag>; }>; declare class RegistryService extends RegistryService_base {} declare const PluginLoaderService_base: Effect.Service.Class<PluginLoaderService, "PluginLoaderService", { readonly effect: Effect.Effect<{ loadPlugin: (pluginId: string) => Effect.Effect<{ ctor: any; metadata: PluginMetadata; }, PluginRuntimeError, never>; instantiatePlugin: <T extends AnyPlugin>(pluginId: string, loadedPlugin: LoadedPlugin<T>) => Effect.Effect<{ plugin: T; metadata: PluginMetadata; }, PluginRuntimeError, never>; initializePlugin: <T extends AnyPlugin>(pluginInstance: PluginInstance<T>, config: { variables: InferSchemaInput<T["configSchema"]["variables"]>; secrets: InferSchemaInput<T["configSchema"]["secrets"]>; }, plugins?: Record<string, unknown>) => Effect.Effect<{ plugin: T; metadata: PluginMetadata; config: { variables: InferSchemaOutput<T["configSchema"]["variables"]>; secrets: InferSchemaOutput<T["configSchema"]["secrets"]>; }; context: any; scope: Scope.CloseableScope; }, PluginRuntimeError, never>; }, never, ModuleFederationService | SecretsService | RegistryService>; }>; declare class PluginLoaderService extends PluginLoaderService_base {} //#endregion export { PluginLoaderService }; //# sourceMappingURL=plugin-loader.service.d.mts.map