import type { z } from 'zod';
import type { PipelineSchemaSchema, PipelineAddonSchemaSchema, PipelineSlotSchemaSchema, PipelineModelOptionSchema, AvailableEngineSchema, PipelineTemplateSchema, PipelineTemplateStepSchema } from '../capabilities/pipeline-executor.cap.js';
import type { PipelineDefaultStepOutput } from '../capabilities/pipeline-executor.cap.js';
export type PipelineAddonSchema = z.infer<typeof PipelineAddonSchemaSchema>;
export type PipelineModelOption = z.infer<typeof PipelineModelOptionSchema>;
export type PipelineSlotSchema = z.infer<typeof PipelineSlotSchemaSchema>;
export type AvailableEngine = z.infer<typeof AvailableEngineSchema>;
export type PipelineSchema = z.infer<typeof PipelineSchemaSchema>;
/**
 * A fully-resolved pipeline step.
 * Runtime/backend are NOT per-step — they come from PipelineConfig.engine.
 */
export type PipelineDefaultStep = PipelineDefaultStepOutput;
export type PipelineTemplateStep = z.infer<typeof PipelineTemplateStepSchema>;
export type PipelineTemplate = z.infer<typeof PipelineTemplateSchema>;
export interface TemplateValidationResult {
    readonly valid: boolean;
    readonly steps: readonly PipelineTemplateStep[];
    readonly warnings: readonly string[];
}
//# sourceMappingURL=pipeline-schema.d.ts.map