/** * Register the Arya Image preset with the host's preset registry. * * Mirrors the pattern the AryaCode presets use (see * `dsh-aryacode-polish/presets/arya-standard/plugin.js`): the mount point is a * plugin whose `inject` names the registry, so the Loader holds it until * `agentPresets` exists and the registration lands while the composition is * still settling. Registering from inside `apply()` with `ctx.inject()` is not * equivalent: that callback can run after the Loader has settled, which is late * enough for a preset list already read by the client to miss the new entry. * * Optional surface: a composition without `agentPresets` (headless, SDK) is a * valid composition, so the service is looked up and skipped when absent. * Registration is released with this plugin's fiber; a duplicate id is logged * and dropped, because the preset already mounted is the one sessions are using. * * @module dsh-arya-image-gen/agent-preset/register */ import type { Context } from '@deepseek-ai/cordis'; /** Row configuration for the mount point. */ export interface AgentPresetMountConfig { /** `process.platform` of the host; decides which shell tool the mask keeps. */ platform?: string; } /** * Mount the preset: register the definition and release it with this fiber. * * @param ctx - the mount point's context, with `agentPresets` injected. * @param config - host facts the definition depends on. */ export declare function mountAgentPreset(ctx: Context, config?: AgentPresetMountConfig): void;