import { WellPlateFormat } from '../types'; import { AssayFeature, AssaySample, CalibrationAcceptanceInput, CalibrationModel, CalibrationPointInput, CompoundDoseSeries, ControlDefinition, FlowPanelControl, FlowPanelMarker, InstrumentMethodInput, InstrumentRunItemInput, PlateMapTemplate, PlateMapTemplateData, ProtocolStepRecord, ReagentTemplateInput, SampleColumn, SampleGroupDefinition, SamplePrepStepInput, SamplePrepStepType, SampleRecord, TemplateSample, TimeCourseCondition, TimePoint, TimeUnit } from './types'; import { QpcrChemistry, QpcrSample, QpcrTarget } from './templateQpcrTypes'; export interface CreateBioTemplatePackCollectionOptions { metadata?: Record; } export interface CreatePlateMapTemplateOptions { name?: string; id?: string; format?: WellPlateFormat; samples?: Array; metadata?: Record; } export interface CreateSampleSheetTemplateOptions { samples: SampleRecord[]; columns?: SampleColumn[]; groups?: SampleGroupDefinition[]; metadata?: Record; } export interface CreateSamplePrepTemplateOptions { samples: Array; prepType?: SamplePrepStepType; protocolName?: string; volumeUnit?: string; inputVolume?: number; outputVolume?: number; metadata?: Record; } export interface CreateDoseResponseTemplateOptions { compounds: Record | CompoundDoseSeries[]; unit: string; replicates?: number; controls?: ControlDefinition[]; layout?: PlateMapTemplate | PlateMapTemplateData; metadata?: Record; } export interface CreateCalibrationCurveTemplateOptions { concentrations: Array; analyte?: string; unit?: string; responseUnit?: string; model?: CalibrationModel; includeBlank?: boolean; includeQc?: boolean; acceptance?: CalibrationAcceptanceInput; metadata?: Record; } export interface CreateTimeCourseTemplateOptions { timepoints: Array; unit: TimeUnit; conditions: Array; replicates?: number; metadata?: Record; } export interface CreateAssayMatrixTemplateOptions { samples: Array; features: Array; values?: Record>; metadata?: Record; } export interface CreateProtocolStepsTemplateOptions { steps: Array & { name: string; })>; metadata?: Record; } export interface CreateReagentListTemplateOptions { reagents: Array; metadata?: Record; } export interface CreateFlowCytometryPanelTemplateOptions { markers: Array & { marker: string; })>; controls?: Array & { name: string; })>; instrument?: string; includeDefaultControls?: boolean; metadata?: Record; } export interface CreateInstrumentRunTemplateOptions { items: Array; method?: string | InstrumentMethodInput; instrument?: string; includeBlanks?: boolean; includeQc?: boolean; metadata?: Record; } export interface CreateQpcrPlateTemplateOptions { samples: Array; targets: Array; format?: WellPlateFormat; replicates?: number; includeNoTemplateControls?: boolean; instrument?: string; chemistry?: QpcrChemistry; metadata?: Record; } export interface CreateWellPlateScreenCollectionOptions { samples?: Array; compounds?: Record | CompoundDoseSeries[]; unit?: string; replicates?: number; plateName?: string; plateFormat?: WellPlateFormat; metadata?: Record; } export interface CreateQpcrExpressionCollectionOptions { samples?: Array; targets?: Array; chemistry?: QpcrChemistry; includeNoTemplateControls?: boolean; format?: WellPlateFormat; replicates?: number; instrument?: string; metadata?: Record; } export interface CreateLcmsBatchCollectionOptions { samples?: Array; features?: Array; instrument?: string; method?: string | InstrumentMethodInput; includeQc?: boolean; metadata?: Record; } export interface CreateTargetedMetabolomicsCollectionOptions { samples?: Array; metabolites?: Array; internalStandards?: Array; standardConcentrations?: number[]; concentrationUnit?: string; responseUnit?: string; calibrationAnalyte?: string; instrument?: string; method?: string | InstrumentMethodInput; prepType?: SamplePrepStepType; outputVolume?: number; includeQc?: boolean; metadata?: Record; } export interface CreateElisaAssayCollectionOptions { samples?: Array; analyte?: string; standardConcentrations?: number[]; unit?: string; responseUnit?: string; plateName?: string; plateFormat?: WellPlateFormat; metadata?: Record; } export interface CreateFlowCytometryAssayCollectionOptions { samples?: Array; markers?: CreateFlowCytometryPanelTemplateOptions['markers']; features?: Array; instrument?: string; includeDefaultControls?: boolean; metadata?: Record; } export interface CreateWesternBlotAssayCollectionOptions { samples?: Array; targets?: Array; loadingControl?: string; metadata?: Record; }