import type { AgentFrontmatter, CommandFrontmatter, SkillFrontmatter } from "../schema-kernel/index.js"; export type CompileResult = { success: boolean; content: string; filePath: string; errors?: string[]; }; export type DecompileResult = { success: boolean; spec: T | null; body: string; warnings: string[]; }; export type AgentSpec = { name: string; frontmatter: AgentFrontmatter; body: string; }; export type CommandSpec = { name: string; frontmatter: CommandFrontmatter; body: string; }; export type SkillSpec = { name: string; frontmatter: SkillFrontmatter; body: string; }; export type CompileOptions = { scope?: "project" | "global"; basePath?: string; skipValidation?: boolean; }; export type BatchCompileResult = { results: CompileResult[]; allSucceeded: boolean; failureReport?: CompileResult; }; export type MixedPrimitiveSpec = { type: "agent" | "command" | "skill"; name: string; spec: AgentSpec | CommandSpec | SkillSpec; }; export type MixedBatchResult = { success: boolean; results: { type: string; name: string; result: CompileResult; }[]; errors: string[]; warnings: string[]; }; export declare function resolveBasePath(options?: CompileOptions): string; export declare function validateOutputPath(filePath: string, _basePath: string): string | null; export declare function compileAgent(spec: AgentSpec, options?: CompileOptions): CompileResult; export declare function compileCommand(spec: CommandSpec, options?: CompileOptions): CompileResult; export declare function compileSkill(spec: SkillSpec, options?: CompileOptions): CompileResult; export declare function decompileAgent(md: string): DecompileResult; export declare function decompileCommand(md: string): DecompileResult; export declare function decompileSkill(md: string): DecompileResult; export declare function batchCompile(specs: Array<{ type: "agent" | "command" | "skill"; spec: AgentSpec | CommandSpec | SkillSpec; }>, options?: { atomic?: boolean; compileOptions?: CompileOptions; }): BatchCompileResult; export declare function mixedBatchCompile(specs: MixedPrimitiveSpec[], options?: { dryRun?: boolean; validate?: boolean; scope?: "project" | "global"; basePath?: string; }): MixedBatchResult; export type DiscoveredCommandBundle = { name: string; description: string; sourcePath: string; }; export declare function listCommandBundles(results: MixedBatchResult): DiscoveredCommandBundle[]; //# sourceMappingURL=compiler.d.ts.map