import type { AgentDefinition, AgentBuildDefinition } from "#public/definitions/agent.js"; import type { ScheduleDefinition } from "#public/definitions/schedule.js"; import type { SkillDefinition } from "#public/definitions/skill.js"; import type { InstructionsDefinition } from "#public/definitions/instructions.js"; type NormalizedAgentDefinition = Omit & { build?: { externalDependencies?: Readonly; }; }; /** * Normalizes one authored agent definition into the canonical internal shape. * * Authored `name` fields are rejected — agent identity is derived at compile * time from `manifest.agentId` (package name or app-root basename). */ export declare function normalizeAgentDefinition(value: unknown, message: string): Readonly; /** * Normalizes one authored instructions definition into the canonical * internal shape. * * Authored `name` fields are rejected — instructions prompt identity is * derived from the file path (`instructions.md` or * `instructions.{ts,...}`). */ export declare function normalizeInstructionsDefinition(value: unknown, message: string): InstructionsDefinition & { readonly markdown: string; }; /** * Normalizes one authored skill definition into the canonical internal * shape. * * Authored `name` fields are rejected — skill identity is derived from * the file path under `agent/skills/`. */ export declare function normalizeSkillDefinition(value: unknown, message: string): SkillDefinition; /** * Normalizes one authored schedule definition into the canonical internal * shape. * * Authored `name` fields are rejected — schedule identity is derived from * the file path under `agent/schedules/`. Exactly one of `markdown` (the * fire-and-forget agent prompt) or `run` (the cron handler function) * must be provided. */ export declare function normalizeScheduleDefinition(value: unknown, message: string): ScheduleDefinition; export {};