import { createQpcrPlateTemplate } from './qpcrPlateBuilder' import { createSampleSheetTemplate } from './sampleSheetBuilder' import { presetSampleRecords } from './sampleNormalizers' import { createTemplateCollection } from './templateEnvelopes' import type { CreateQpcrExpressionCollectionOptions, TemplateCollectionEnvelope, } from './types' /** @deprecated Scheduled for removal from the core SDK in MINT 1.4; the biology templates move to a dedicated package or the owning plugins. */ export function createQpcrExpressionCollection( options: CreateQpcrExpressionCollectionOptions = {} ): TemplateCollectionEnvelope { const sampleRecords = presetSampleRecords(options.samples ?? ['Control', 'Treatment']) const sampleSheet = createSampleSheetTemplate({ samples: sampleRecords }) const qpcr = createQpcrPlateTemplate({ samples: sampleRecords.map(sample => ({ sampleId: sample.sampleId, name: sample.name, group: sample.group, metadata: sample.metadata ?? {}, })), targets: options.targets ?? ['ACTB', 'GAPDH'], chemistry: options.chemistry, format: options.format, includeNoTemplateControls: options.includeNoTemplateControls, replicates: options.replicates ?? 3, instrument: options.instrument, }) return createTemplateCollection( [sampleSheet, qpcr], { preset: 'qpcr-expression', ...(options.metadata ?? {}) } ) }