// Pattern core: minimal definitions to bootstrap the Flow × Pattern DSL. // A Pattern is a reusable solution ("how to guarantee success") declared as // pure data. Concrete usage fills its params and action injection points. export interface PatternParamDef { type: 'int' | 'string'; min?: number; default?: number | string; } export interface PatternDef { name: string; params: Record; } export interface PatternRef { ref: string; args: Record; } export function definePattern(def: PatternDef): PatternDef { return def; } export function ref(name: string, args: Record): PatternRef { return { ref: name, args }; }