/** * Public Plugin authoring contracts and runtime factories. * * @module */ export * from './core-capabilities.js'; export * from './visible-raster-bake.js'; export { createCapabilityToken, type CapabilityRequirement, type CapabilityToken, } from '../plugin-kernel/capability-token.js'; export { createDisposable, disposeInReverseSync, observePromise, type Disposable, type MaybePromise, } from '../plugin-kernel/disposable.js'; export { isRuntimeIdentifier } from '../plugin-kernel/plugin-identifier.js'; export { coreOperationIds, cropOperationIds, historyOperationIds, mosaicOperationIds, } from '../plugin-kernel/operation-ids.js'; export { isValidSemVer } from '../plugin-kernel/semver.js'; export { CapabilityConflictError, CapabilityMissingError, CapabilityVersionError, PluginApiVersionError, PluginBatchInstallError, PluginDefinitionConflictError, PluginDefinitionAlreadyBoundError, PluginDependencyCycleError, PluginDependencyError, PluginEngineVersionError, PluginError, PluginIdentityConflictError, PluginManifestError, PluginNotInstalledError, PluginPermissionError, PluginSetupError, } from '../plugin-kernel/errors.js'; export { definePluginRef, type PluginRef } from '../plugin-kernel/plugin-ref.js'; export type { CapabilityProviderDefinition, CapabilityProviderOptions, ConfigurablePluginApi, DisposableScope, PluginManifest, OptionalCapabilityStatus, PluginPermission, PluginSetupContext, PluginToolAccess, PluginToolStatus, PluginToolStatusListener, PluginToolStatusSubscriptionOptions, SynchronousEditorPlugin, } from '../plugin-kernel/plugin-types.js'; export { definePlugin } from './plugin-definition.js'; export { CORE_API_VERSION, validatePluginManifest } from './plugin-manifest.js'; export { composePlugins, type PluginArrayApis, type PluginPlan, type PluginPlanApis, } from './plugin-plan.js';