@opentrons/step-generation 0.3.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +19 -0
  3. package/lib/__tests__/robotStateSelectors.test.d.ts +1 -0
  4. package/lib/__tests__/waitForTasks.test.d.ts +1 -0
  5. package/lib/__utils__/index.d.ts +1 -0
  6. package/lib/__utils__/makeImmutableStateUpdater.d.ts +4 -0
  7. package/lib/__utils__/testMatchers.d.ts +2 -0
  8. package/lib/commandCreators/atomic/__tests__/absorbanceReaderCloseLid.test.d.ts +1 -0
  9. package/lib/commandCreators/atomic/__tests__/absorbanceReaderOpenLid.test.d.ts +1 -0
  10. package/lib/commandCreators/atomic/__tests__/aspirate.test.d.ts +1 -0
  11. package/lib/commandCreators/atomic/__tests__/aspirateInPlace.test.d.ts +1 -0
  12. package/lib/commandCreators/atomic/__tests__/blowOutInPlace.test.d.ts +1 -0
  13. package/lib/commandCreators/atomic/__tests__/blowOutInWell.test.d.ts +1 -0
  14. package/lib/commandCreators/atomic/__tests__/captureImage.test.d.ts +1 -0
  15. package/lib/commandCreators/atomic/__tests__/comment.test.d.ts +1 -0
  16. package/lib/commandCreators/atomic/__tests__/configureForVolume.test.d.ts +1 -0
  17. package/lib/commandCreators/atomic/__tests__/configureNozzleLayout.test.d.ts +1 -0
  18. package/lib/commandCreators/atomic/__tests__/deactivateTemperature.test.d.ts +1 -0
  19. package/lib/commandCreators/atomic/__tests__/delay.test.d.ts +1 -0
  20. package/lib/commandCreators/atomic/__tests__/disengageMagnet.test.d.ts +1 -0
  21. package/lib/commandCreators/atomic/__tests__/dispense.test.d.ts +1 -0
  22. package/lib/commandCreators/atomic/__tests__/dispenseInPlace.test.d.ts +1 -0
  23. package/lib/commandCreators/atomic/__tests__/dropTip.test.d.ts +1 -0
  24. package/lib/commandCreators/atomic/__tests__/dropTipInPlace.test.d.ts +1 -0
  25. package/lib/commandCreators/atomic/__tests__/engageMagnet.test.d.ts +1 -0
  26. package/lib/commandCreators/atomic/__tests__/flexStackerEmpty.test.d.ts +1 -0
  27. package/lib/commandCreators/atomic/__tests__/flexStackerFillItems.test.d.ts +1 -0
  28. package/lib/commandCreators/atomic/__tests__/flexStackerRetrieve.test.d.ts +1 -0
  29. package/lib/commandCreators/atomic/__tests__/flexStackerStore.test.d.ts +1 -0
  30. package/lib/commandCreators/atomic/__tests__/heaterShakerOpenLatch.test.d.ts +1 -0
  31. package/lib/commandCreators/atomic/__tests__/liquidProbe.test.d.ts +1 -0
  32. package/lib/commandCreators/atomic/__tests__/moveLabware.test.d.ts +1 -0
  33. package/lib/commandCreators/atomic/__tests__/moveToAddressableArea.test.d.ts +1 -0
  34. package/lib/commandCreators/atomic/__tests__/moveToAddressableAreaForDropTip.test.d.ts +1 -0
  35. package/lib/commandCreators/atomic/__tests__/moveToWell.test.d.ts +1 -0
  36. package/lib/commandCreators/atomic/__tests__/pickUpTip.test.d.ts +1 -0
  37. package/lib/commandCreators/atomic/__tests__/prepareToAspirate.test.d.ts +1 -0
  38. package/lib/commandCreators/atomic/__tests__/setTemperature.test.d.ts +1 -0
  39. package/lib/commandCreators/atomic/__tests__/thermocyclerAtomicCommands.test.d.ts +1 -0
  40. package/lib/commandCreators/atomic/__tests__/thermocyclerCloseLid.test.d.ts +1 -0
  41. package/lib/commandCreators/atomic/__tests__/touchTip.test.d.ts +1 -0
  42. package/lib/commandCreators/atomic/__tests__/waitForTemperature.test.d.ts +1 -0
  43. package/lib/commandCreators/atomic/absorbanceReaderCloseLid.d.ts +3 -0
  44. package/lib/commandCreators/atomic/absorbanceReaderInitialize.d.ts +3 -0
  45. package/lib/commandCreators/atomic/absorbanceReaderOpenLid.d.ts +3 -0
  46. package/lib/commandCreators/atomic/absorbanceReaderRead.d.ts +3 -0
  47. package/lib/commandCreators/atomic/airGapInPlace.d.ts +3 -0
  48. package/lib/commandCreators/atomic/aspirate.d.ts +10 -0
  49. package/lib/commandCreators/atomic/aspirateInPlace.d.ts +3 -0
  50. package/lib/commandCreators/atomic/blowOutInPlace.d.ts +3 -0
  51. package/lib/commandCreators/atomic/blowOutInWell.d.ts +3 -0
  52. package/lib/commandCreators/atomic/captureImage.d.ts +3 -0
  53. package/lib/commandCreators/atomic/comment.d.ts +3 -0
  54. package/lib/commandCreators/atomic/configureForVolume.d.ts +3 -0
  55. package/lib/commandCreators/atomic/configureNozzleLayout.d.ts +3 -0
  56. package/lib/commandCreators/atomic/deactivateTemperature.d.ts +4 -0
  57. package/lib/commandCreators/atomic/delay.d.ts +3 -0
  58. package/lib/commandCreators/atomic/disengageMagnet.d.ts +4 -0
  59. package/lib/commandCreators/atomic/dispense.d.ts +10 -0
  60. package/lib/commandCreators/atomic/dispenseInPlace.d.ts +7 -0
  61. package/lib/commandCreators/atomic/dropTip.d.ts +13 -0
  62. package/lib/commandCreators/atomic/dropTipInPlace.d.ts +3 -0
  63. package/lib/commandCreators/atomic/engageMagnet.d.ts +4 -0
  64. package/lib/commandCreators/atomic/flexStackerEmpty.d.ts +3 -0
  65. package/lib/commandCreators/atomic/flexStackerFillItems.d.ts +2 -0
  66. package/lib/commandCreators/atomic/flexStackerRetrieve.d.ts +3 -0
  67. package/lib/commandCreators/atomic/flexStackerStore.d.ts +3 -0
  68. package/lib/commandCreators/atomic/heaterShakerCloseLatch.d.ts +3 -0
  69. package/lib/commandCreators/atomic/heaterShakerDeactivateHeater.d.ts +3 -0
  70. package/lib/commandCreators/atomic/heaterShakerOpenLatch.d.ts +3 -0
  71. package/lib/commandCreators/atomic/heaterShakerSetTargetShakeSpeed.d.ts +3 -0
  72. package/lib/commandCreators/atomic/heaterShakerStopShake.d.ts +3 -0
  73. package/lib/commandCreators/atomic/index.d.ts +36 -0
  74. package/lib/commandCreators/atomic/liquidProbe.d.ts +3 -0
  75. package/lib/commandCreators/atomic/moveLabware.d.ts +5 -0
  76. package/lib/commandCreators/atomic/moveToAddressableArea.d.ts +7 -0
  77. package/lib/commandCreators/atomic/moveToAddressableAreaForDropTip.d.ts +3 -0
  78. package/lib/commandCreators/atomic/moveToWell.d.ts +4 -0
  79. package/lib/commandCreators/atomic/pickUpTip.d.ts +9 -0
  80. package/lib/commandCreators/atomic/prepareToAspirate.d.ts +3 -0
  81. package/lib/commandCreators/atomic/setTemperature.d.ts +4 -0
  82. package/lib/commandCreators/atomic/thermocyclerCloseLid.d.ts +3 -0
  83. package/lib/commandCreators/atomic/thermocyclerDeactivateBlock.d.ts +3 -0
  84. package/lib/commandCreators/atomic/thermocyclerDeactivateLid.d.ts +3 -0
  85. package/lib/commandCreators/atomic/thermocyclerOpenLid.d.ts +3 -0
  86. package/lib/commandCreators/atomic/thermocyclerSetTargetBlockTemperature.d.ts +3 -0
  87. package/lib/commandCreators/atomic/thermocyclerSetTargetLidTemperature.d.ts +3 -0
  88. package/lib/commandCreators/atomic/thermocyclerStartRunExtendedProfile.d.ts +7 -0
  89. package/lib/commandCreators/atomic/touchTip.d.ts +7 -0
  90. package/lib/commandCreators/atomic/waitForTasks.d.ts +3 -0
  91. package/lib/commandCreators/atomic/waitForTemperature.d.ts +4 -0
  92. package/lib/commandCreators/compound/__tests__/absorbanceReaderCloseInitialize.test.d.ts +1 -0
  93. package/lib/commandCreators/compound/__tests__/absorbanceReaderCloseRead.test.d.ts +1 -0
  94. package/lib/commandCreators/compound/__tests__/airGapInTrash.test.d.ts +1 -0
  95. package/lib/commandCreators/compound/__tests__/airGapInWasteChute.test.d.ts +1 -0
  96. package/lib/commandCreators/compound/__tests__/airGapInWell.test.d.ts +1 -0
  97. package/lib/commandCreators/compound/__tests__/blowOutInTrash.test.d.ts +1 -0
  98. package/lib/commandCreators/compound/__tests__/blowOutinWasteChute.test.d.ts +1 -0
  99. package/lib/commandCreators/compound/__tests__/consolidate.test.d.ts +1 -0
  100. package/lib/commandCreators/compound/__tests__/dispenseInTrash.test.d.ts +1 -0
  101. package/lib/commandCreators/compound/__tests__/dispenseInWasteChute.test.d.ts +1 -0
  102. package/lib/commandCreators/compound/__tests__/distribute.test.d.ts +1 -0
  103. package/lib/commandCreators/compound/__tests__/dropTipInTrash.test.d.ts +1 -0
  104. package/lib/commandCreators/compound/__tests__/dropTipInWasteChute.test.d.ts +1 -0
  105. package/lib/commandCreators/compound/__tests__/heaterShaker.test.d.ts +1 -0
  106. package/lib/commandCreators/compound/__tests__/mix.test.d.ts +1 -0
  107. package/lib/commandCreators/compound/__tests__/replaceTip.test.d.ts +1 -0
  108. package/lib/commandCreators/compound/__tests__/thermocyclerProfileStep.test.d.ts +1 -0
  109. package/lib/commandCreators/compound/__tests__/thermocyclerStateStep.test.d.ts +1 -0
  110. package/lib/commandCreators/compound/__tests__/transfer.test.d.ts +1 -0
  111. package/lib/commandCreators/compound/__tests__/waitForModuleTask.test.d.ts +1 -0
  112. package/lib/commandCreators/compound/absorbanceReaderCloseInitialize.d.ts +2 -0
  113. package/lib/commandCreators/compound/absorbanceReaderCloseRead.d.ts +2 -0
  114. package/lib/commandCreators/compound/airGapInTrash.d.ts +9 -0
  115. package/lib/commandCreators/compound/airGapInWasteChute.d.ts +9 -0
  116. package/lib/commandCreators/compound/airGapInWell.d.ts +12 -0
  117. package/lib/commandCreators/compound/blowOutInTrash.d.ts +8 -0
  118. package/lib/commandCreators/compound/blowOutInWasteChute.d.ts +8 -0
  119. package/lib/commandCreators/compound/consolidate.d.ts +2 -0
  120. package/lib/commandCreators/compound/dispenseInTrash.d.ts +9 -0
  121. package/lib/commandCreators/compound/dispenseInWasteChute.d.ts +9 -0
  122. package/lib/commandCreators/compound/distribute.d.ts +2 -0
  123. package/lib/commandCreators/compound/dropTipInTrash.d.ts +7 -0
  124. package/lib/commandCreators/compound/dropTipInWasteChute.d.ts +7 -0
  125. package/lib/commandCreators/compound/heaterShaker.d.ts +2 -0
  126. package/lib/commandCreators/compound/index.d.ts +20 -0
  127. package/lib/commandCreators/compound/mix.d.ts +19 -0
  128. package/lib/commandCreators/compound/replaceTip.d.ts +21 -0
  129. package/lib/commandCreators/compound/thermocyclerProfileStep.d.ts +2 -0
  130. package/lib/commandCreators/compound/thermocyclerStateStep.d.ts +2 -0
  131. package/lib/commandCreators/compound/transfer.d.ts +2 -0
  132. package/lib/commandCreators/compound/waitForModuleTask.d.ts +6 -0
  133. package/lib/commandCreators/index.d.ts +2 -0
  134. package/lib/constants.d.ts +55 -0
  135. package/lib/errorCreators.d.ts +89 -0
  136. package/lib/fixtures/__tests__/fixtureGeneration.test.d.ts +1 -0
  137. package/lib/fixtures/commandFixtures.d.ts +511 -0
  138. package/lib/fixtures/data.d.ts +12 -0
  139. package/lib/fixtures/index.d.ts +3 -0
  140. package/lib/fixtures/robotStateFixtures.d.ts +39 -0
  141. package/lib/getNextRobotStateAndWarnings/__tests__/dispenseUpdateLiquidState.test.d.ts +1 -0
  142. package/lib/getNextRobotStateAndWarnings/__tests__/forAspirate.test.d.ts +1 -0
  143. package/lib/getNextRobotStateAndWarnings/__tests__/forBlowout.test.d.ts +1 -0
  144. package/lib/getNextRobotStateAndWarnings/__tests__/forDropTip.test.d.ts +1 -0
  145. package/lib/getNextRobotStateAndWarnings/__tests__/forMoveLabware.test.d.ts +1 -0
  146. package/lib/getNextRobotStateAndWarnings/__tests__/forPickUpTip.test.d.ts +1 -0
  147. package/lib/getNextRobotStateAndWarnings/__tests__/heaterShakerUpdates.test.d.ts +1 -0
  148. package/lib/getNextRobotStateAndWarnings/__tests__/stackerUpdates.test.d.ts +1 -0
  149. package/lib/getNextRobotStateAndWarnings/__tests__/temperatureUpdates.test.d.ts +1 -0
  150. package/lib/getNextRobotStateAndWarnings/__tests__/thermocyclerUpdates.test.d.ts +1 -0
  151. package/lib/getNextRobotStateAndWarnings/__tests__/updateMagneticModule.test.d.ts +1 -0
  152. package/lib/getNextRobotStateAndWarnings/absorbanceReaderUpdates.d.ts +5 -0
  153. package/lib/getNextRobotStateAndWarnings/dispenseUpdateLiquidState.d.ts +15 -0
  154. package/lib/getNextRobotStateAndWarnings/forAirGapInPlace.d.ts +3 -0
  155. package/lib/getNextRobotStateAndWarnings/forAspirate.d.ts +3 -0
  156. package/lib/getNextRobotStateAndWarnings/forBlowout.d.ts +3 -0
  157. package/lib/getNextRobotStateAndWarnings/forConfigureNozzleLayout.d.ts +11 -0
  158. package/lib/getNextRobotStateAndWarnings/forDispense.d.ts +3 -0
  159. package/lib/getNextRobotStateAndWarnings/forDropTip.d.ts +3 -0
  160. package/lib/getNextRobotStateAndWarnings/forLoadLiquid.d.ts +3 -0
  161. package/lib/getNextRobotStateAndWarnings/forMoveLabware.d.ts +3 -0
  162. package/lib/getNextRobotStateAndWarnings/forMoveToAddressableArea.d.ts +3 -0
  163. package/lib/getNextRobotStateAndWarnings/forMoveToWell.d.ts +3 -0
  164. package/lib/getNextRobotStateAndWarnings/forPickUpTip.d.ts +3 -0
  165. package/lib/getNextRobotStateAndWarnings/forWaitForTasks.d.ts +3 -0
  166. package/lib/getNextRobotStateAndWarnings/heaterShakerUpdates.d.ts +9 -0
  167. package/lib/getNextRobotStateAndWarnings/inPlaceCommandUpdates.d.ts +4 -0
  168. package/lib/getNextRobotStateAndWarnings/index.d.ts +4 -0
  169. package/lib/getNextRobotStateAndWarnings/magnetUpdates.d.ts +4 -0
  170. package/lib/getNextRobotStateAndWarnings/stackerUpdates.d.ts +9 -0
  171. package/lib/getNextRobotStateAndWarnings/temperatureUpdates.d.ts +5 -0
  172. package/lib/getNextRobotStateAndWarnings/thermocyclerUpdates.d.ts +22 -0
  173. package/lib/index.cjs +197 -0
  174. package/lib/index.d.ts +8 -0
  175. package/lib/index.mjs +16066 -0
  176. package/lib/robotStateSelectors.d.ts +31 -0
  177. package/lib/types.d.ts +693 -0
  178. package/lib/utils/__tests__/blowoutUtil.test.d.ts +1 -0
  179. package/lib/utils/__tests__/delayLocationHelper.test.d.ts +1 -0
  180. package/lib/utils/__tests__/getActiveNozzleAmount.test.d.ts +1 -0
  181. package/lib/utils/__tests__/getIsSafePipetteMovement.test.d.ts +1 -0
  182. package/lib/utils/__tests__/getLabwareSlot.test.d.ts +1 -0
  183. package/lib/utils/__tests__/glue.test.d.ts +1 -0
  184. package/lib/utils/__tests__/liquidClassUtils.test.d.ts +1 -0
  185. package/lib/utils/__tests__/misc.test.d.ts +1 -0
  186. package/lib/utils/__tests__/modulePipetteCollision.test.d.ts +1 -0
  187. package/lib/utils/__tests__/pythonFileUtils.test.d.ts +1 -0
  188. package/lib/utils/__tests__/pythonFormat.test.d.ts +1 -0
  189. package/lib/utils/__tests__/removePairs.test.d.ts +1 -0
  190. package/lib/utils/__tests__/safePipetteMovements.test.d.ts +1 -0
  191. package/lib/utils/__tests__/stripNoOpMixCommands.test.d.ts +1 -0
  192. package/lib/utils/__tests__/swatchColors.test.d.ts +1 -0
  193. package/lib/utils/__tests__/thermocyclerProfileConversions.test.d.ts +1 -0
  194. package/lib/utils/__tests__/traversals.test.d.ts +1 -0
  195. package/lib/utils/__tests__/utils.test.d.ts +1 -0
  196. package/lib/utils/absorbanceReaderCollision.d.ts +2 -0
  197. package/lib/utils/commandCreatorArgsGetters.d.ts +5 -0
  198. package/lib/utils/commandCreatorsTimeline.d.ts +2 -0
  199. package/lib/utils/constructInvariantContextFromAnalysis.d.ts +3 -0
  200. package/lib/utils/createTimelineFromRunCommands.d.ts +11 -0
  201. package/lib/utils/curryCommandCreator.d.ts +8 -0
  202. package/lib/utils/getActiveNozzleAmount.d.ts +7 -0
  203. package/lib/utils/getLabwareSlot.d.ts +2 -0
  204. package/lib/utils/getNozzleConfig.d.ts +2 -0
  205. package/lib/utils/heaterShakerCollision.d.ts +9 -0
  206. package/lib/utils/index.d.ts +22 -0
  207. package/lib/utils/liquidClassUtils.d.ts +15 -0
  208. package/lib/utils/liquidUtils.d.ts +13 -0
  209. package/lib/utils/misc.d.ts +180 -0
  210. package/lib/utils/modulePipetteCollision.d.ts +7 -0
  211. package/lib/utils/pythonFileUtils.d.ts +30 -0
  212. package/lib/utils/pythonFormat.d.ts +29 -0
  213. package/lib/utils/reduceCommandCreators.d.ts +2 -0
  214. package/lib/utils/removePairs.d.ts +1 -0
  215. package/lib/utils/safePipetteMovements.d.ts +49 -0
  216. package/lib/utils/stripNoOpCommands.d.ts +3 -0
  217. package/lib/utils/thermocyclerPipetteCollision.d.ts +2 -0
  218. package/lib/utils/thermocyclerProfileConversions.d.ts +19 -0
  219. package/lib/utils/thermocyclerStateDiff.d.ts +10 -0
  220. package/lib/utils/traversals.d.ts +127 -0
  221. package/lib/warningCreators.d.ts +7 -0
  222. package/package.json +45 -0
@@ -0,0 +1,511 @@
1
+ import type { AddressableAreaName, AspDispAirgapParams, AspirateInPlaceParams, BlowoutParams, CreateCommand, DispenseInPlaceParams, DispenseParams, MoveToWellParams, NozzleConfigurationParams, TouchTipParams, WellLocation } from '@opentrons/shared-data';
2
+ import type { CommandCreatorErrorResponse, CommandsAndWarnings } from '../types';
3
+ /** Used to wrap command creators in tests, effectively casting their results
4
+ ** to normal response or error response
5
+ **/
6
+ export declare function getSuccessResult(result: CommandsAndWarnings | CommandCreatorErrorResponse): CommandsAndWarnings;
7
+ export declare function getErrorResult(result: CommandsAndWarnings | CommandCreatorErrorResponse): CommandCreatorErrorResponse;
8
+ export declare const replaceTipCommands: (tip: number | string) => CreateCommand[];
9
+ export declare const prepareAndConfigureCommands: (volumeToConfigure?: number) => CreateCommand[];
10
+ export declare const BLOWOUT_FLOW_RATE = 2.3;
11
+ export declare const ASPIRATE_OFFSET_FROM_BOTTOM_MM = 3.1;
12
+ export declare const DISPENSE_OFFSET_FROM_BOTTOM_MM = 3.2;
13
+ export declare const BLOWOUT_OFFSET_FROM_TOP_MM = 3.3;
14
+ interface FlowRateAndOffsetParamsTransferlike {
15
+ aspirateFlowRateUlSec: number;
16
+ dispenseFlowRateUlSec: number;
17
+ blowoutFlowRateUlSec: number;
18
+ aspirateOffsetFromBottomMm: number;
19
+ dispenseOffsetFromBottomMm: number;
20
+ blowoutOffsetFromTopMm: number;
21
+ touchTipAfterAspirateOffsetMmFromTop: number;
22
+ touchTipAfterDispenseOffsetMmFromTop: number;
23
+ }
24
+ export declare const getFlowRateAndOffsetParamsTransferLike: () => FlowRateAndOffsetParamsTransferlike;
25
+ interface FlowRateAndOffsetParamsMix {
26
+ aspirateFlowRateUlSec: number;
27
+ dispenseFlowRateUlSec: number;
28
+ blowoutFlowRateUlSec: number;
29
+ aspirateOffsetFromBottomMm: number;
30
+ dispenseOffsetFromBottomMm: number;
31
+ blowoutOffsetFromTopMm: number;
32
+ touchTipMmFromTop: number;
33
+ }
34
+ export declare const getFlowRateAndOffsetParamsMix: () => FlowRateAndOffsetParamsMix;
35
+ type MakeAspDispHelper<P> = (bakedParams?: Partial<P>) => (well: string, volume: number, params?: Partial<P>) => CreateCommand;
36
+ type MakeAspDispCompoundHelper<P, P2> = (bakedParams?: Partial<P>) => (inPlaceParams: P, moveToWellParams?: P2, doMove?: boolean) => CreateCommand[];
37
+ export declare const makeAspirateHelper: MakeAspDispHelper<AspDispAirgapParams>;
38
+ export declare const makeAspirateInPlaceHelper: MakeAspDispCompoundHelper<AspirateInPlaceParams, MoveToWellParams>;
39
+ export declare const makeDispenseInPlaceHelper: MakeAspDispCompoundHelper<DispenseInPlaceParams, MoveToWellParams>;
40
+ export declare const aspirateHelperLiquidClass: (submergeParams: {
41
+ pipetteId: string;
42
+ labwareId: string;
43
+ wellName: string;
44
+ volume: number;
45
+ submergeSpeed: number;
46
+ retractSpeed: number;
47
+ aspirateFlowRate: number;
48
+ submergeLocation: WellLocation;
49
+ aspirateLocation: WellLocation;
50
+ retractLocation: WellLocation;
51
+ aspirateAirGap?: number;
52
+ dispenseAirGap?: number;
53
+ dispenseFlowRate?: number;
54
+ shouldProbe?: boolean;
55
+ shouldPreWet?: boolean;
56
+ shouldTouchTip?: boolean;
57
+ submergeDelay?: number;
58
+ aspirateDelay?: number;
59
+ retractDelay?: number;
60
+ dispenseDelay?: number;
61
+ mixTimes?: number;
62
+ mixVolume?: number;
63
+ touchTipMmFromTop?: number;
64
+ touchTipMmFromEdge?: number;
65
+ touchTipSpeed?: number;
66
+ isRetractSafeForAirGap?: boolean;
67
+ }) => ({
68
+ commandType: string;
69
+ key: any;
70
+ params: {
71
+ pipetteId: string;
72
+ labwareId: string;
73
+ wellName: string;
74
+ wellLocation: WellLocation;
75
+ volume?: undefined;
76
+ flowRate?: undefined;
77
+ pushOut?: undefined;
78
+ seconds?: undefined;
79
+ speed?: undefined;
80
+ mmFromEdge?: undefined;
81
+ };
82
+ meta?: undefined;
83
+ } | {
84
+ commandType: string;
85
+ key: any;
86
+ params: {
87
+ pipetteId: string;
88
+ volume: number;
89
+ flowRate: number | undefined;
90
+ pushOut: number;
91
+ labwareId?: undefined;
92
+ wellName?: undefined;
93
+ wellLocation?: undefined;
94
+ seconds?: undefined;
95
+ speed?: undefined;
96
+ mmFromEdge?: undefined;
97
+ };
98
+ meta: {
99
+ isAirGap: boolean;
100
+ };
101
+ } | {
102
+ commandType: string;
103
+ key: any;
104
+ params: {
105
+ seconds: number;
106
+ pipetteId?: undefined;
107
+ labwareId?: undefined;
108
+ wellName?: undefined;
109
+ wellLocation?: undefined;
110
+ volume?: undefined;
111
+ flowRate?: undefined;
112
+ pushOut?: undefined;
113
+ speed?: undefined;
114
+ mmFromEdge?: undefined;
115
+ };
116
+ meta?: undefined;
117
+ } | {
118
+ commandType: string;
119
+ key: any;
120
+ params: {
121
+ pipetteId: string;
122
+ labwareId?: undefined;
123
+ wellName?: undefined;
124
+ wellLocation?: undefined;
125
+ volume?: undefined;
126
+ flowRate?: undefined;
127
+ pushOut?: undefined;
128
+ seconds?: undefined;
129
+ speed?: undefined;
130
+ mmFromEdge?: undefined;
131
+ };
132
+ meta?: undefined;
133
+ } | {
134
+ commandType: string;
135
+ key: any;
136
+ params: {
137
+ pipetteId: string;
138
+ labwareId: string;
139
+ speed: number;
140
+ wellName: string;
141
+ wellLocation: WellLocation;
142
+ volume?: undefined;
143
+ flowRate?: undefined;
144
+ pushOut?: undefined;
145
+ seconds?: undefined;
146
+ mmFromEdge?: undefined;
147
+ };
148
+ meta?: undefined;
149
+ } | {
150
+ commandType: string;
151
+ key: any;
152
+ params: {
153
+ pipetteId: string;
154
+ volume: number;
155
+ flowRate: number;
156
+ labwareId?: undefined;
157
+ wellName?: undefined;
158
+ wellLocation?: undefined;
159
+ pushOut?: undefined;
160
+ seconds?: undefined;
161
+ speed?: undefined;
162
+ mmFromEdge?: undefined;
163
+ };
164
+ meta?: undefined;
165
+ } | {
166
+ commandType: string;
167
+ key: any;
168
+ params: {
169
+ pipetteId: string;
170
+ volume: number;
171
+ flowRate: number | undefined;
172
+ pushOut: number;
173
+ labwareId?: undefined;
174
+ wellName?: undefined;
175
+ wellLocation?: undefined;
176
+ seconds?: undefined;
177
+ speed?: undefined;
178
+ mmFromEdge?: undefined;
179
+ };
180
+ meta?: undefined;
181
+ } | {
182
+ commandType: string;
183
+ key: any;
184
+ params: {
185
+ pipetteId: string;
186
+ labwareId: string;
187
+ wellName: string;
188
+ wellLocation: {
189
+ origin: "top";
190
+ offset: {
191
+ z: number | undefined;
192
+ };
193
+ };
194
+ mmFromEdge: number | undefined;
195
+ speed: number | undefined;
196
+ volume?: undefined;
197
+ flowRate?: undefined;
198
+ pushOut?: undefined;
199
+ seconds?: undefined;
200
+ };
201
+ meta?: undefined;
202
+ })[];
203
+ export declare const blowoutInTrashCommands: (args: {
204
+ pipetteId: string;
205
+ addressableAreaName: string;
206
+ blowoutFlowRate: number;
207
+ dispenseAirGap?: number;
208
+ aspirateDelay?: number;
209
+ aspirateFlowRate?: number;
210
+ }) => ({
211
+ commandType: string;
212
+ key: any;
213
+ params: {
214
+ pipetteId: string;
215
+ addressableAreaName: string;
216
+ offset: {
217
+ x: number;
218
+ y: number;
219
+ z: number;
220
+ };
221
+ flowRate?: undefined;
222
+ seconds?: undefined;
223
+ };
224
+ } | {
225
+ commandType: string;
226
+ key: any;
227
+ params: {
228
+ pipetteId: string;
229
+ flowRate: number;
230
+ addressableAreaName?: undefined;
231
+ offset?: undefined;
232
+ seconds?: undefined;
233
+ };
234
+ } | {
235
+ commandType: string;
236
+ key: any;
237
+ params: {
238
+ pipetteId: string;
239
+ addressableAreaName?: undefined;
240
+ offset?: undefined;
241
+ flowRate?: undefined;
242
+ seconds?: undefined;
243
+ };
244
+ } | {
245
+ commandType: string;
246
+ key: any;
247
+ params: {
248
+ flowRate?: number | undefined;
249
+ pipetteId: string;
250
+ volume: number;
251
+ addressableAreaName?: undefined;
252
+ offset?: undefined;
253
+ seconds?: undefined;
254
+ };
255
+ } | {
256
+ commandType: string;
257
+ key: any;
258
+ params: {
259
+ seconds: number;
260
+ pipetteId?: undefined;
261
+ addressableAreaName?: undefined;
262
+ offset?: undefined;
263
+ flowRate?: undefined;
264
+ };
265
+ })[];
266
+ export declare const dispenseHelperLiquidClass: (params: {
267
+ pipetteId: string;
268
+ labwareId: string;
269
+ wellName: string;
270
+ volume: number;
271
+ submergeSpeed: number;
272
+ retractSpeed: number;
273
+ dispenseFlowRate: number;
274
+ submergeLocation: WellLocation;
275
+ dispenseLocation: WellLocation;
276
+ retractLocation: WellLocation;
277
+ aspirateFlowRate?: number;
278
+ aspirateAirGap?: number;
279
+ dispenseAirGap?: number;
280
+ shouldTouchTip?: boolean;
281
+ submergeDelay?: number;
282
+ aspirateDelay?: number;
283
+ retractDelay?: number;
284
+ dispenseDelay?: number;
285
+ mixTimes?: number;
286
+ mixVolume?: number;
287
+ touchTipMmFromTop?: number;
288
+ touchTipMmFromEdge?: number;
289
+ touchTipSpeed?: number;
290
+ pushOut?: number;
291
+ shouldBlowoutInDestination?: boolean;
292
+ blowoutFlowRate?: number;
293
+ isRetractSafeForAirGap?: boolean;
294
+ }) => ({
295
+ commandType: string;
296
+ key: any;
297
+ params: {
298
+ pipetteId: string;
299
+ labwareId: string;
300
+ wellName: string;
301
+ wellLocation: WellLocation;
302
+ volume?: undefined;
303
+ flowRate?: undefined;
304
+ pushOut?: undefined;
305
+ seconds?: undefined;
306
+ speed?: undefined;
307
+ mmFromEdge?: undefined;
308
+ };
309
+ meta?: undefined;
310
+ } | {
311
+ commandType: string;
312
+ key: any;
313
+ params: {
314
+ pipetteId: string;
315
+ volume: number;
316
+ flowRate: number;
317
+ pushOut: number;
318
+ labwareId?: undefined;
319
+ wellName?: undefined;
320
+ wellLocation?: undefined;
321
+ seconds?: undefined;
322
+ speed?: undefined;
323
+ mmFromEdge?: undefined;
324
+ };
325
+ meta: {
326
+ isAirGap: boolean;
327
+ };
328
+ } | {
329
+ commandType: string;
330
+ key: any;
331
+ params: {
332
+ seconds: number;
333
+ pipetteId?: undefined;
334
+ labwareId?: undefined;
335
+ wellName?: undefined;
336
+ wellLocation?: undefined;
337
+ volume?: undefined;
338
+ flowRate?: undefined;
339
+ pushOut?: undefined;
340
+ speed?: undefined;
341
+ mmFromEdge?: undefined;
342
+ };
343
+ meta?: undefined;
344
+ } | {
345
+ commandType: string;
346
+ key: any;
347
+ params: {
348
+ pipetteId: string;
349
+ labwareId: string;
350
+ speed: number;
351
+ wellName: string;
352
+ wellLocation: WellLocation;
353
+ volume?: undefined;
354
+ flowRate?: undefined;
355
+ pushOut?: undefined;
356
+ seconds?: undefined;
357
+ mmFromEdge?: undefined;
358
+ };
359
+ meta?: undefined;
360
+ } | {
361
+ commandType: string;
362
+ key: any;
363
+ params: {
364
+ pushOut?: number | undefined;
365
+ pipetteId: string;
366
+ volume: number;
367
+ flowRate: number;
368
+ labwareId?: undefined;
369
+ wellName?: undefined;
370
+ wellLocation?: undefined;
371
+ seconds?: undefined;
372
+ speed?: undefined;
373
+ mmFromEdge?: undefined;
374
+ };
375
+ meta?: undefined;
376
+ } | {
377
+ commandType: string;
378
+ key: any;
379
+ params: {
380
+ pipetteId: string;
381
+ volume: number;
382
+ flowRate: number | undefined;
383
+ labwareId?: undefined;
384
+ wellName?: undefined;
385
+ wellLocation?: undefined;
386
+ pushOut?: undefined;
387
+ seconds?: undefined;
388
+ speed?: undefined;
389
+ mmFromEdge?: undefined;
390
+ };
391
+ meta?: undefined;
392
+ } | {
393
+ commandType: string;
394
+ key: any;
395
+ params: {
396
+ pipetteId: string;
397
+ flowRate: number | undefined;
398
+ labwareId?: undefined;
399
+ wellName?: undefined;
400
+ wellLocation?: undefined;
401
+ volume?: undefined;
402
+ pushOut?: undefined;
403
+ seconds?: undefined;
404
+ speed?: undefined;
405
+ mmFromEdge?: undefined;
406
+ };
407
+ meta?: undefined;
408
+ } | {
409
+ commandType: string;
410
+ key: any;
411
+ params: {
412
+ pipetteId: string;
413
+ labwareId: string;
414
+ wellName: string;
415
+ wellLocation: {
416
+ origin: "top";
417
+ offset: {
418
+ z: number | undefined;
419
+ };
420
+ };
421
+ mmFromEdge: number | undefined;
422
+ speed: number | undefined;
423
+ volume?: undefined;
424
+ flowRate?: undefined;
425
+ pushOut?: undefined;
426
+ seconds?: undefined;
427
+ };
428
+ meta?: undefined;
429
+ } | {
430
+ commandType: string;
431
+ key: any;
432
+ params: {
433
+ pipetteId: string;
434
+ labwareId?: undefined;
435
+ wellName?: undefined;
436
+ wellLocation?: undefined;
437
+ volume?: undefined;
438
+ flowRate?: undefined;
439
+ pushOut?: undefined;
440
+ seconds?: undefined;
441
+ speed?: undefined;
442
+ mmFromEdge?: undefined;
443
+ };
444
+ meta?: undefined;
445
+ })[];
446
+ export declare const makeMoveToWellHelper: (wellName: string, labwareId?: string) => {
447
+ commandType: string;
448
+ key: any;
449
+ params: {
450
+ pipetteId: string;
451
+ labwareId: string;
452
+ wellName: string;
453
+ wellLocation: {
454
+ origin: string;
455
+ offset: {
456
+ x: number;
457
+ y: number;
458
+ z: number;
459
+ };
460
+ };
461
+ };
462
+ };
463
+ export declare const makeAirGapAfterAspirateHelper: (volume: number, flowRate?: number) => {
464
+ commandType: string;
465
+ key: any;
466
+ params: {
467
+ pipetteId: string;
468
+ volume: number;
469
+ flowRate: number;
470
+ };
471
+ };
472
+ export declare const makeAirGapHelper: (volume: number, flowRate?: number) => ({
473
+ commandType: string;
474
+ key: any;
475
+ params: {
476
+ pipetteId: string;
477
+ volume?: undefined;
478
+ flowRate?: undefined;
479
+ };
480
+ } | {
481
+ commandType: string;
482
+ key: any;
483
+ params: {
484
+ pipetteId: string;
485
+ volume: number;
486
+ flowRate: number;
487
+ };
488
+ })[];
489
+ export declare const blowoutHelper: (labware: string, params?: Partial<BlowoutParams>) => CreateCommand;
490
+ export declare const blowoutInPlaceHelper: () => CreateCommand[];
491
+ export declare const makeDispenseHelper: MakeAspDispHelper<DispenseParams>;
492
+ export declare const makeDispenseAirGapHelper: (wellName: string, volume: number) => CreateCommand;
493
+ type MakeTouchTipHelper = (bakedParams?: Partial<TouchTipParams>) => (wellName: string, params?: Partial<TouchTipParams>) => CreateCommand;
494
+ export declare const makeTouchTipHelper: MakeTouchTipHelper;
495
+ export declare const delayCommand: (seconds: number, message?: string) => CreateCommand;
496
+ export declare const delayWithOffset: (wellName: string, labwareId: string, seconds?: number, zOffset?: number, forceDirect?: boolean, minimumZHeight?: number, message?: string) => CreateCommand[];
497
+ export declare const dropTipHelper: (pipette?: string) => CreateCommand[];
498
+ export declare const dropTipIntoWasteChuteHelper: (pipette?: string) => CreateCommand[];
499
+ export declare const configureNozzleLayoutHelper: (pipetteId: string, configurationParams: NozzleConfigurationParams) => CreateCommand;
500
+ export declare const pickUpTipHelper: (tip: number | string, params?: {
501
+ pipetteId?: string;
502
+ labwareId?: string;
503
+ }) => CreateCommand;
504
+ export declare const dropTipInPlaceHelper: (params?: {
505
+ pipetteId?: string;
506
+ }) => CreateCommand;
507
+ export declare const moveToAddressableAreaHelper: (params?: {
508
+ pipetteId?: string;
509
+ addressableAreaName: AddressableAreaName;
510
+ }) => CreateCommand;
511
+ export {};
@@ -0,0 +1,12 @@
1
+ export declare const tiprackWellNamesFlat: string[];
2
+ export declare const DEFAULT_PIPETTE = "p300SingleId";
3
+ export declare const MULTI_PIPETTE = "p300MultiId";
4
+ export declare const PIPETTE_96 = "p100096Id";
5
+ export declare const SOURCE_LABWARE = "sourcePlateId";
6
+ export declare const DEST_LABWARE = "destPlateId";
7
+ export declare const TROUGH_LABWARE = "troughId";
8
+ export declare const DEFAULT_BLOWOUT_WELL = "A1";
9
+ export declare const TIPRACK_1 = "tiprack1Id";
10
+ export declare const AIR_GAP_META: {
11
+ isAirGap: boolean;
12
+ };
@@ -0,0 +1,3 @@
1
+ export * from './robotStateFixtures';
2
+ export * from './commandFixtures';
3
+ export * from './data';
@@ -0,0 +1,39 @@
1
+ import { TEMPERATURE_DEACTIVATED } from '../constants';
2
+ import type { Config, InvariantContext, RobotState, RobotStateAndWarnings } from '../';
3
+ import type { TEMPERATURE_APPROACHING_TARGET, TEMPERATURE_AT_TARGET } from '../constants';
4
+ import type { TipState } from '../types';
5
+ export declare const DEFAULT_CONFIG: Config;
6
+ type WellTipState = Record<string, TipState>;
7
+ export declare function getTiprackTipstate(filled: boolean | null | undefined): WellTipState;
8
+ export declare function getTipColumn<T>(index: number, filled: T): Record<string, T>;
9
+ export declare function makeContext(): InvariantContext;
10
+ export declare const makeState: (args: {
11
+ invariantContext: InvariantContext;
12
+ labwareLocations: RobotState['labware'];
13
+ moduleLocations?: RobotState['modules'];
14
+ pipetteLocations: RobotState['pipettes'];
15
+ tiprackSetting: Record<string, boolean>;
16
+ }) => RobotState;
17
+ interface StandardMakeStateArgs {
18
+ pipetteLocations: RobotState['pipettes'];
19
+ labwareLocations: RobotState['labware'];
20
+ moduleLocations: RobotState['modules'];
21
+ }
22
+ export declare const makeStateArgsStandard: () => StandardMakeStateArgs;
23
+ export declare const makeStateArgsLabwareOffDeck: () => StandardMakeStateArgs;
24
+ export declare const getInitialRobotStateStandard: (invariantContext: InvariantContext) => RobotState;
25
+ export declare const getInitialRobotStateWithOffDeckLabwareStandard: (invariantContext: InvariantContext) => RobotState;
26
+ export declare const getRobotStateAndWarningsStandard: (invariantContext: InvariantContext) => RobotStateAndWarnings;
27
+ export declare const getRobotStateWithTipStandard: (invariantContext: InvariantContext) => RobotState;
28
+ export declare const getRobotStatePickedUpTipStandard: (invariantContext: InvariantContext) => RobotState;
29
+ export declare const getRobotInitialStateNoTipsRemain: (invariantContext: InvariantContext) => RobotState;
30
+ interface StateAndContext {
31
+ robotState: RobotState;
32
+ invariantContext: InvariantContext;
33
+ }
34
+ export declare const getStateAndContextTempTCModules: ({ temperatureModuleId, thermocyclerId, }: {
35
+ temperatureModuleId: string;
36
+ thermocyclerId: string;
37
+ }) => StateAndContext;
38
+ export declare const robotWithStatusAndTemp: (robotState: RobotState, temperatureModuleId: string, status: typeof TEMPERATURE_AT_TARGET | typeof TEMPERATURE_APPROACHING_TARGET | typeof TEMPERATURE_DEACTIVATED, targetTemperature: number | null) => RobotState;
39
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { AbsorbanceReaderInitializeParams, ModuleOnlyParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare const forAbsorbanceReaderOpenLid: (params: ModuleOnlyParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings) => void;
4
+ export declare const forAbsorbanceReaderCloseLid: (params: ModuleOnlyParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings) => void;
5
+ export declare const forAbsorbanceReaderInitialize: (params: AbsorbanceReaderInitializeParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings) => void;
@@ -0,0 +1,15 @@
1
+ import type { InvariantContext, RobotState, RobotStateAndWarnings } from '../types';
2
+ type LiquidState = RobotState['liquidState'];
3
+ export interface DispenseUpdateLiquidStateArgs {
4
+ invariantContext: InvariantContext;
5
+ prevLiquidState: LiquidState;
6
+ pipetteId: string;
7
+ useFullVolume: boolean;
8
+ robotStateAndWarnings: RobotStateAndWarnings;
9
+ entityId: string;
10
+ wellName?: string;
11
+ volume?: number;
12
+ }
13
+ /** This is a helper to do dispense/blowout liquid state updates. */
14
+ export declare function dispenseUpdateLiquidState(args: DispenseUpdateLiquidStateArgs): void;
15
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { AirGapInPlaceParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forAirGapInPlace(params: AirGapInPlaceParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { AspDispAirgapParams, AspirateInPlaceParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forAspirate(params: AspDispAirgapParams | AspirateInPlaceParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { BlowoutParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forBlowout(params: BlowoutParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,11 @@
1
+ import type { NozzleConfigurationStyle, PrimaryNozzleConfigurationStyle } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ interface ConfigureNozzleLayoutParams {
4
+ pipetteId: string;
5
+ configurationParams: {
6
+ style: NozzleConfigurationStyle;
7
+ primaryNozzle?: PrimaryNozzleConfigurationStyle;
8
+ };
9
+ }
10
+ export declare function forConfigureNozzleLayout(params: ConfigureNozzleLayoutParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
11
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { AspDispAirgapParams, DispenseInPlaceParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forDispense(params: AspDispAirgapParams | DispenseInPlaceParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { DropTipParams } from '@opentrons/shared-data/protocol/types/schemaV6/command/pipetting';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forDropTip(params: DropTipParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { LoadLiquidCreateCommand } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forLoadLiquid(params: LoadLiquidCreateCommand['params'], _invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { MoveLabwareParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forMoveLabware(params: MoveLabwareParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;
@@ -0,0 +1,3 @@
1
+ import type { MoveToAddressableAreaForDropTipParams, MoveToAddressableAreaParams } from '@opentrons/shared-data';
2
+ import type { InvariantContext, RobotStateAndWarnings } from '../types';
3
+ export declare function forMoveToAddressableArea(params: MoveToAddressableAreaParams | MoveToAddressableAreaForDropTipParams, invariantContext: InvariantContext, robotStateAndWarnings: RobotStateAndWarnings): void;