import { z } from "zod"; export declare const AGENT_FRONTMATTER_SCHEMA_VERSION = "1.0.0"; /** * Validates an OpenCode agent file name: 1–64 chars, lowercase alphanumeric * with single hyphen separators. No leading/trailing hyphens, no consecutive * hyphens. Matches: my-agent, researcher, gsd-code-fixer. */ export declare const AgentNameSchema: z.ZodString; export type AgentName = z.infer; /** * Determines when the agent is available: * - "primary" → top-level conversations only * - "subagent" → delegated sub-sessions only * - "all" → both (default) */ export declare const AgentModeEnum: z.ZodEnum<{ subagent: "subagent"; primary: "primary"; all: "all"; }>; export type AgentMode = z.infer; /** * OpenCode agent YAML frontmatter schema. Only `description` is strictly * required. Includes backward-compatible deprecated fields (tools, maxSteps) * with deprecation-tracking refines that always pass validation. */ export declare const AgentFrontmatterSchema: z.ZodObject<{ description: z.ZodString; mode: z.ZodOptional>; model: z.ZodOptional; variant: z.ZodOptional; temperature: z.ZodOptional; top_p: z.ZodOptional; prompt: z.ZodOptional; tools: z.ZodOptional>; disable: z.ZodOptional; hidden: z.ZodOptional; options: z.ZodOptional>; color: z.ZodOptional; steps: z.ZodOptional; maxSteps: z.ZodOptional; permission: z.ZodOptional>; }, z.core.$strict>; export type AgentFrontmatter = z.infer; /** Lenient variant that strips unknown fields instead of rejecting them. */ export declare const AgentFrontmatterSchemaLenient: z.ZodObject<{ description: z.ZodString; mode: z.ZodOptional>; model: z.ZodOptional; variant: z.ZodOptional; temperature: z.ZodOptional; top_p: z.ZodOptional; prompt: z.ZodOptional; tools: z.ZodOptional>; disable: z.ZodOptional; hidden: z.ZodOptional; options: z.ZodOptional>; color: z.ZodOptional; steps: z.ZodOptional; maxSteps: z.ZodOptional; permission: z.ZodOptional>; }, z.core.$strip>; export type AgentFrontmatterLenient = z.infer; /** * Represents a fully parsed OpenCode agent .md file: the validated YAML * frontmatter, the markdown body (system prompt), and the file path. */ export declare const AgentFileSchema: z.ZodObject<{ frontmatter: z.ZodObject<{ description: z.ZodString; mode: z.ZodOptional>; model: z.ZodOptional; variant: z.ZodOptional; temperature: z.ZodOptional; top_p: z.ZodOptional; prompt: z.ZodOptional; tools: z.ZodOptional>; disable: z.ZodOptional; hidden: z.ZodOptional; options: z.ZodOptional>; color: z.ZodOptional; steps: z.ZodOptional; maxSteps: z.ZodOptional; permission: z.ZodOptional>; }, z.core.$strict>; body: z.ZodString; filePath: z.ZodString; }, z.core.$strict>; export type AgentFile = z.infer; /** Lenient variant that strips unknown fields instead of rejecting them. */ export declare const AgentFileSchemaLenient: z.ZodObject<{ frontmatter: z.ZodObject<{ description: z.ZodString; mode: z.ZodOptional>; model: z.ZodOptional; variant: z.ZodOptional; temperature: z.ZodOptional; top_p: z.ZodOptional; prompt: z.ZodOptional; tools: z.ZodOptional>; disable: z.ZodOptional; hidden: z.ZodOptional; options: z.ZodOptional>; color: z.ZodOptional; steps: z.ZodOptional; maxSteps: z.ZodOptional; permission: z.ZodOptional>; }, z.core.$strip>; body: z.ZodString; filePath: z.ZodString; }, z.core.$strip>; export type AgentFileLenient = z.infer; //# sourceMappingURL=agent-frontmatter.schema.d.ts.map