// flows/index.ts
import { registerFlow, createFlow, parse, extract, split, combine } from '@docloai/flows';
// Simple extraction
registerFlow('simple-extraction', (providers) =>
createFlow()
.step('extract', extract({
provider: providers?.vlm,
schema: providers?.schema
}))
);
// OCR + extraction
registerFlow('ocr-extraction', (providers) =>
createFlow()
.step('parse', parse({ provider: providers?.ocr }))
.step('extract', extract({
provider: providers?.llm,
schema: providers?.schema
}))
);
// Multi-document processing
registerFlow('multi-document', (providers) =>
createFlow()
.step('split', split({
provider: providers?.vlm,
schemas: providers?.schemas
}))
.forEach('process', (doc) =>
createFlow()
.step('extract', extract({
provider: providers?.vlm,
schema: doc.schema
}))
)
.step('combine', combine())
);