import { ProgressStep } from './types'; interface OpenPhaseDetectionStep extends ProgressStep { id: 'openPhaseDetection'; } interface PhaseResistanceMeasurementStep extends ProgressStep { id: 'phaseResistanceMeasurement'; } interface PhaseInductanceMeasurementStep extends ProgressStep { id: 'phaseInductanceMeasurement'; } interface PolePairDetectionStep extends ProgressStep { id: 'polePairDetection'; } interface MotorPhaseOrderDetectionStep extends ProgressStep { id: 'motorPhaseOrderDetection'; } interface CommutationOffsetMeasurementStep extends ProgressStep { id: 'commutationOffsetMeasurement'; } /** * Tuple representing the ordered sequence of all offset detection steps. * * Each position in the tuple corresponds to a specific diagnostic step * in the offset detection workflow. */ export type OffsetDetectionSteps = [ OpenPhaseDetectionStep, PhaseResistanceMeasurementStep, PhaseInductanceMeasurementStep, PolePairDetectionStep, MotorPhaseOrderDetectionStep, CommutationOffsetMeasurementStep ]; /** * Union type of all possible offset detection step identifiers. */ export type OffsetDetectionStepId = OffsetDetectionSteps[number]['id']; /** * Template describing the ordered offset detection steps and their initial state. * * This array serves as the baseline structure for reporting progress during the * offset detection procedure. It is typically cloned and mutated as the procedure * executes, with each step transitioning through statuses such as: * - 'idle' * - 'running' * - 'succeeded' * - 'failed' * * The structure and order of this array define: * - The sequence in which diagnostic steps are executed * - The shape of progress updates emitted during the procedure * * Consumers should treat this array as immutable and use a cloned copy when * tracking or displaying runtime progress. */ export declare const offsetDetectionSteps: OffsetDetectionSteps; /** * Formats the value associated with a specific offset detection step. * * Depending on the provided `stepId`, this function will convert the raw `value` into a human-readable string * or return the value as-is. The formatting is tailored to the type of step: * - For 'openPhaseDetection', returns 'Yes' or 'No' based on the truthiness of `value`. * - For 'phaseResistanceMeasurement', appends 'mΩ' to the value if defined. * - For 'phaseInductanceMeasurement', appends 'μH' to the value if defined. * - For 'polePairDetection', returns the value directly. * - For 'motorPhaseOrderDetection', returns 'Normal' or 'Inverted' based on the value. * - For 'commutationOffsetMeasurement', returns the value if defined. * - For any other step, returns the value as-is. * * @param stepId - The identifier of the offset detection step. * @param value - The value to be parsed and formatted. * @returns The formatted value as a string or the original value, depending on the step. */ export declare function formatOffsetDetectionStepValue(stepId: OffsetDetectionStepId, value: number): string | number; export {};