@esrf/daiquiri-lib 5.3.1 → 5.5.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.
package/dist/index.d.ts CHANGED
@@ -3,7 +3,6 @@ import { JSONSchema7 } from 'json-schema';
3
3
  import * as react from 'react';
4
4
  import react__default, { ComponentType, ReactElement, PropsWithChildren, ReactNode, ChangeEvent, KeyboardEvent, Component } from 'react';
5
5
  import * as react_jsx_runtime from 'react/jsx-runtime';
6
- import { Placement } from 'react-bootstrap/esm/types';
7
6
 
8
7
  interface HardwareError {
9
8
  property: string;
@@ -106,6 +105,20 @@ type HardwareComponentType<H extends Hardware = Hardware> = ComponentType<Hardwa
106
105
  interface HardwareVariant<H extends Hardware = Hardware> {
107
106
  [name: string]: HardwareComponentType<H>;
108
107
  }
108
+ /**
109
+ * Bundles everything a hardware module exposes: its widget
110
+ * variants, plus optional mocks/simulator/monitor.
111
+ */
112
+ interface HardwareDesc<H extends Hardware = Hardware> {
113
+ /** Widget variants, keyed by variant name */
114
+ variants: HardwareVariant<H>;
115
+ /** Static mock data samples used for documentation */
116
+ mocks?: Record<string, unknown>;
117
+ /** Component emulating live hardware, for tests/demo */
118
+ simulator?: ComponentType<any>;
119
+ /** Monitor panel widget override */
120
+ monitor?: HardwareComponentType<H>;
121
+ }
109
122
  /**
110
123
  * TODO: Add a description
111
124
  */
@@ -129,6 +142,7 @@ type types_d_EditableHardwareWidgetOptions = EditableHardwareWidgetOptions;
129
142
  type types_d_Hardware<P extends Record<string, unknown> = Record<string, any>> = Hardware<P>;
130
143
  type types_d_HardwareChangeActions = HardwareChangeActions;
131
144
  type types_d_HardwareComponentType<H extends Hardware = Hardware> = HardwareComponentType<H>;
145
+ type types_d_HardwareDesc<H extends Hardware = Hardware> = HardwareDesc<H>;
132
146
  type types_d_HardwareMonitorOptions = HardwareMonitorOptions;
133
147
  type types_d_HardwareObjectProps = HardwareObjectProps;
134
148
  type types_d_HardwareSchemaDescription = HardwareSchemaDescription;
@@ -139,7 +153,7 @@ type types_d_LockDescription = LockDescription;
139
153
  type types_d_OfflineHardware = OfflineHardware;
140
154
  type types_d_OnlineHardware<P extends Record<string, any> = Record<string, never>> = OnlineHardware<P>;
141
155
  declare namespace types_d {
142
- export type { types_d_AnyHardware as AnyHardware, types_d_BaseHardware as BaseHardware, types_d_EditableHardware as EditableHardware, types_d_EditableHardwareWidgetOptions as EditableHardwareWidgetOptions, types_d_Hardware as Hardware, types_d_HardwareChangeActions as HardwareChangeActions, types_d_HardwareComponentType as HardwareComponentType, types_d_HardwareMonitorOptions as HardwareMonitorOptions, types_d_HardwareObjectProps as HardwareObjectProps, types_d_HardwareSchemaDescription as HardwareSchemaDescription, types_d_HardwareVariant as HardwareVariant, types_d_HardwareWidgetOptions as HardwareWidgetOptions, types_d_HardwareWidgetProps as HardwareWidgetProps, types_d_LockDescription as LockDescription, types_d_OfflineHardware as OfflineHardware, types_d_OnlineHardware as OnlineHardware };
156
+ export type { types_d_AnyHardware as AnyHardware, types_d_BaseHardware as BaseHardware, types_d_EditableHardware as EditableHardware, types_d_EditableHardwareWidgetOptions as EditableHardwareWidgetOptions, types_d_Hardware as Hardware, types_d_HardwareChangeActions as HardwareChangeActions, types_d_HardwareComponentType as HardwareComponentType, types_d_HardwareDesc as HardwareDesc, types_d_HardwareMonitorOptions as HardwareMonitorOptions, types_d_HardwareObjectProps as HardwareObjectProps, types_d_HardwareSchemaDescription as HardwareSchemaDescription, types_d_HardwareVariant as HardwareVariant, types_d_HardwareWidgetOptions as HardwareWidgetOptions, types_d_HardwareWidgetProps as HardwareWidgetProps, types_d_LockDescription as LockDescription, types_d_OfflineHardware as OfflineHardware, types_d_OnlineHardware as OnlineHardware };
143
157
  }
144
158
 
145
159
  /**
@@ -158,7 +172,7 @@ declare namespace schema_d {
158
172
  export type { schema_d_AnySchema as AnySchema, schema_d_GenericSchema as GenericSchema };
159
173
  }
160
174
 
161
- declare const Variants$t: HardwareVariant<AnySchema>;
175
+ declare const BaseHardwareDesc: HardwareDesc<AnySchema>;
162
176
 
163
177
  declare const Mocks$p: {
164
178
  default: {
@@ -298,7 +312,7 @@ type ActuatorSchema = Hardware<{
298
312
  type AirBearingSchema = Hardware<{
299
313
  state: string;
300
314
  }>;
301
- declare const Variants$s: HardwareVariant<AirBearingSchema>;
315
+ declare const AirBearingHardwareDesc: HardwareDesc<AirBearingSchema>;
302
316
 
303
317
  declare function AirBearing(props: HardwareWidgetProps<AirBearingSchema, HardwareWidgetOptions>): react_jsx_runtime.JSX.Element;
304
318
 
@@ -350,7 +364,7 @@ type BeamviewerSchema = Hardware<{
350
364
  diode_ranges: string[];
351
365
  diode_range: string;
352
366
  }>;
353
- declare const Variants$r: HardwareVariant<BeamviewerSchema>;
367
+ declare const BeamviewerHardwareDesc: HardwareDesc<BeamviewerSchema>;
354
368
 
355
369
  declare function Beamviewer(props: HardwareWidgetProps<BeamviewerSchema>): react_jsx_runtime.JSX.Element;
356
370
 
@@ -382,7 +396,7 @@ type EnergyManagerSchema = Hardware<{
382
396
  available_source_names: string[];
383
397
  source: string;
384
398
  }>;
385
- declare const Variants$q: HardwareVariant<EnergyManagerSchema>;
399
+ declare const EnergyManagerHardwareDesc: HardwareDesc<EnergyManagerSchema>;
386
400
 
387
401
  declare function EnergyManagerDefault(props: HardwareWidgetProps<EnergyManagerSchema>): react_jsx_runtime.JSX.Element;
388
402
 
@@ -423,7 +437,7 @@ type FrontendSchema = Hardware<{
423
437
  pssitlk: string;
424
438
  expitlk: string;
425
439
  }>;
426
- declare const Variants$p: HardwareVariant<FrontendSchema>;
440
+ declare const FrontendHardwareDesc: HardwareDesc<FrontendSchema>;
427
441
 
428
442
  declare function Frontend(props: HardwareWidgetProps<FrontendSchema>): react_jsx_runtime.JSX.Element;
429
443
 
@@ -460,7 +474,7 @@ type GaugeSchema = Hardware<{
460
474
  pressure: number;
461
475
  unit?: string;
462
476
  }>;
463
- declare const Variants$o: HardwareVariant<GaugeSchema>;
477
+ declare const GaugeHardwareDesc: HardwareDesc<GaugeSchema>;
464
478
 
465
479
  interface GaugeWidgetOptions extends HardwareWidgetOptions {
466
480
  /** Unit of pressure */
@@ -508,7 +522,7 @@ type LaserSchema = Hardware<{
508
522
  state: string;
509
523
  power: number;
510
524
  }>;
511
- declare const Variants$n: HardwareVariant<LaserSchema>;
525
+ declare const LaserHardwareDesc: HardwareDesc<LaserSchema>;
512
526
 
513
527
  interface LaserWidgetOptions extends HardwareWidgetOptions {
514
528
  /** Default step size to use for up / down arrows */
@@ -544,7 +558,7 @@ type LaserHeatingSchema = Hardware<{
544
558
  fit_wavelength: number[];
545
559
  current_calibration: string;
546
560
  }>;
547
- declare const Variants$m: HardwareVariant<LaserHeatingSchema>;
561
+ declare const LaserHeatingHardwareDesc: HardwareDesc<LaserHeatingSchema>;
548
562
 
549
563
  interface LaserHeatingWidgetOptions extends HardwareWidgetOptions {
550
564
  /** Default step size to use for up / down arrows */
@@ -581,7 +595,7 @@ type LightSchema = Hardware<{
581
595
  temperature: number;
582
596
  intensity: number;
583
597
  }>;
584
- declare const Variants$l: HardwareVariant<LightSchema>;
598
+ declare const LightHardwareDesc: HardwareDesc<LightSchema>;
585
599
 
586
600
  declare function Light(props: HardwareWidgetProps<LightSchema>): react_jsx_runtime.JSX.Element;
587
601
 
@@ -671,7 +685,7 @@ declare function useLimaHardware(name: string | null): LimaSchema | null;
671
685
  * Compute the nb sub frames which will be used for a specific exposure time
672
686
  */
673
687
  declare function limaGuessSubframes(exposureTime: number, accMaxExpoTime: number): [number, number];
674
- declare const Variants$k: HardwareVariant<LimaSchema>;
688
+ declare const LimaHardwareDesc: HardwareDesc<LimaSchema>;
675
689
 
676
690
  declare function LimaBinning(props: HardwareWidgetProps<LimaSchema, EditableHardwareWidgetOptions>): react_jsx_runtime.JSX.Element;
677
691
 
@@ -844,7 +858,7 @@ interface MeasurementGroupProperties extends Record<string, unknown> {
844
858
  * Hardware as exposed by Redux
845
859
  */
846
860
  type MeasurementGroupSchema = Hardware<MeasurementGroupProperties>;
847
- declare const Variants$j: HardwareVariant<MeasurementGroupSchema>;
861
+ declare const MeasurementGroupHardwareDesc: HardwareDesc<MeasurementGroupSchema>;
848
862
 
849
863
  declare function MeasurementGroup(props: HardwareWidgetProps<MeasurementGroupSchema>): react_jsx_runtime.JSX.Element;
850
864
 
@@ -926,7 +940,6 @@ declare function isMotorHardware(entity: Hardware): entity is MotorSchema;
926
940
  * @param name: An hardware identifier
927
941
  */
928
942
  declare function useMotorHardware(name: string | null): MotorSchema | null;
929
- declare const Variants$i: HardwareVariant<MotorSchema>;
930
943
  /**
931
944
  * True if the motor positon is clock wise.
932
945
  *
@@ -939,6 +952,7 @@ declare function isMotorClockWise(hardware: MotorSchema, options?: {
939
952
  * Normalize the limits as finite values or `undefined`.
940
953
  */
941
954
  declare function motorLimits(hardware: MotorSchema): [number | undefined, number | undefined];
955
+ declare const MotorHardwareDesc: HardwareDesc<MotorSchema>;
942
956
 
943
957
  interface MotorDefaultOptions extends HardwareWidgetOptions {
944
958
  /** Default step size to use for up / down arrows */
@@ -1181,7 +1195,7 @@ type MultipositionSchema = Hardware<{
1181
1195
  }[];
1182
1196
  }[];
1183
1197
  }>;
1184
- declare const Variants$h: HardwareVariant<MultipositionSchema>;
1198
+ declare const MultipositionHardwareDesc: HardwareDesc<MultipositionSchema>;
1185
1199
 
1186
1200
  declare function Multiposition$1(props: HardwareWidgetProps<MultipositionSchema>): react_jsx_runtime.JSX.Element;
1187
1201
 
@@ -1236,7 +1250,7 @@ interface OpticProperties extends Record<string, unknown> {
1236
1250
  */
1237
1251
  type OpticSchema = Hardware<OpticProperties>;
1238
1252
  declare function isOpticHardware(entity: Hardware): entity is OpticSchema;
1239
- declare const Variants$g: HardwareVariant<OpticSchema>;
1253
+ declare const OpticHardwareDesc: HardwareDesc<OpticSchema>;
1240
1254
 
1241
1255
  interface OpticWidgetOptions extends HardwareWidgetOptions {
1242
1256
  readonly?: boolean;
@@ -1327,7 +1341,7 @@ type ProcedureSchema = Hardware<{
1327
1341
  previous_run_exception: string | null;
1328
1342
  parameters: Record<string, any>;
1329
1343
  }>;
1330
- declare const Variants$f: HardwareVariant<ProcedureSchema>;
1344
+ declare const ProcedureHardwareDesc: HardwareDesc<ProcedureSchema>;
1331
1345
 
1332
1346
  interface HardwareFromProcedure {
1333
1347
  __type__: 'hardware';
@@ -1447,8 +1461,16 @@ type RegulationSchema = Hardware<{
1447
1461
  output_unit: string;
1448
1462
  deadband?: number;
1449
1463
  }>;
1450
- declare const Variants$e: HardwareVariant<RegulationSchema>;
1464
+ declare const RegulationHardwareDesc: HardwareDesc<RegulationSchema>;
1451
1465
 
1466
+ /**
1467
+ * Mirrors react-bootstrap's `Placement` (itself re-exported from
1468
+ * `@restart/ui`/`@popperjs/core` via an inline `import()` type), spelled out
1469
+ * as a literal union so widget-options codegen (which walks these
1470
+ * interfaces with the TypeScript compiler API to produce a JSON Schema) can
1471
+ * represent it — codegen can't resolve through the `import()` type node.
1472
+ */
1473
+ type PopupPlacement = 'auto' | 'auto-start' | 'auto-end' | 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end';
1452
1474
  interface RegulationOptions extends HardwareWidgetOptions {
1453
1475
  /** Default step size to use for up / down arrows */
1454
1476
  step?: number;
@@ -1465,7 +1487,7 @@ interface RegulationOptions extends HardwareWidgetOptions {
1465
1487
  /** Popup button title */
1466
1488
  buttonTitle?: string;
1467
1489
  /** Popup placement */
1468
- popupPlacement?: Placement;
1490
+ popupPlacement?: PopupPlacement;
1469
1491
  }
1470
1492
 
1471
1493
  declare function RegulationLoop(props: HardwareWidgetProps<RegulationSchema, RegulationOptions>): react_jsx_runtime.JSX.Element;
@@ -1503,7 +1525,7 @@ type ShutterSchema = Hardware<{
1503
1525
  open_text: string;
1504
1526
  closed_text: string;
1505
1527
  }>;
1506
- declare const Variants$d: HardwareVariant<ShutterSchema>;
1528
+ declare const ShutterHardwareDesc: HardwareDesc<ShutterSchema>;
1507
1529
 
1508
1530
  declare function ShutterDefault(props: HardwareWidgetProps<ShutterSchema, HardwareWidgetOptions>): react_jsx_runtime.JSX.Element;
1509
1531
 
@@ -1568,7 +1590,7 @@ interface SlitDefaultOptions extends HardwareWidgetOptions {
1568
1590
  /** Setup the widget to be read only */
1569
1591
  readonly?: boolean;
1570
1592
  }
1571
- declare const Variants$c: HardwareVariant<SlitSchema>;
1593
+ declare const SlitHardwareDesc: HardwareDesc<SlitSchema>;
1572
1594
 
1573
1595
  declare function SlitDefault(props: HardwareWidgetProps<SlitSchema, SlitDefaultOptions>): react_jsx_runtime.JSX.Element;
1574
1596
 
@@ -1626,7 +1648,7 @@ type PumpSchema = Hardware<{
1626
1648
  current: number;
1627
1649
  unit?: string;
1628
1650
  }>;
1629
- declare const Variants$b: HardwareVariant<PumpSchema>;
1651
+ declare const PumpHardwareDesc: HardwareDesc<PumpSchema>;
1630
1652
 
1631
1653
  interface PumpWidgetOptions extends HardwareWidgetOptions {
1632
1654
  unit?: string;
@@ -1659,7 +1681,7 @@ declare const Mocks$7: {
1659
1681
  type PusherSchema = Hardware<{
1660
1682
  state: string;
1661
1683
  }>;
1662
- declare const Variants$a: HardwareVariant<PusherSchema>;
1684
+ declare const PusherHardwareDesc: HardwareDesc<PusherSchema>;
1663
1685
 
1664
1686
  interface PusherOptions extends HardwareWidgetOptions {
1665
1687
  /**
@@ -1703,7 +1725,7 @@ declare function PusherSimulator(props: PropsWithSimulator): react_jsx_runtime.J
1703
1725
  type ServiceSchema = Hardware<{
1704
1726
  state: 'STOPPED' | 'STARTING' | 'RUNNING' | 'BACKOFF' | 'STOPPING' | 'EXITED' | 'FATAL' | 'UNKNOWN';
1705
1727
  }>;
1706
- declare const Variants$9: HardwareVariant<ServiceSchema>;
1728
+ declare const ServiceHardwareDesc: HardwareDesc<ServiceSchema>;
1707
1729
 
1708
1730
  declare function ServiceDefault(props: HardwareWidgetProps<ServiceSchema, HardwareWidgetOptions>): react_jsx_runtime.JSX.Element;
1709
1731
 
@@ -1750,7 +1772,7 @@ interface TomoFlatMotionProperties extends Record<string, unknown> {
1750
1772
  * Hardware as exposed by Redux
1751
1773
  */
1752
1774
  type TomoFlatMotionSchema = Hardware<TomoFlatMotionProperties>;
1753
- declare const Variants$8: HardwareVariant<TomoFlatMotionSchema>;
1775
+ declare const TomoFlatMotionHardwareDesc: HardwareDesc<TomoFlatMotionSchema>;
1754
1776
 
1755
1777
  declare function isTomoFlatMotionHardware(entity: Hardware): entity is TomoFlatMotionSchema;
1756
1778
  declare function useTomoFlatMotionHardware(name: string | null): TomoFlatMotionSchema | null;
@@ -1837,7 +1859,7 @@ declare function TomoFlatMotionSimulator(props: PropsWithSimulator): react_jsx_r
1837
1859
  */
1838
1860
  type TomoReferencePositionSchema = Hardware<Record<string, never>>;
1839
1861
  declare function isTomoReferencePositionHardware(entity: Hardware): entity is TomoReferencePositionSchema;
1840
- declare const Variants$7: HardwareVariant<TomoReferencePositionSchema>;
1862
+ declare const TomoReferencePositionHardwareDesc: HardwareDesc<TomoReferencePositionSchema>;
1841
1863
 
1842
1864
  interface TomoReferencePositionDefaultOptions extends HardwareWidgetOptions {
1843
1865
  /**
@@ -1861,7 +1883,7 @@ type TomoDetectorSchema = Hardware<{
1861
1883
  source_distance: number | null;
1862
1884
  acq_mode: 'MANUAL' | 'SINGLE' | 'ACCUMULATION';
1863
1885
  }>;
1864
- declare const Variants$6: HardwareVariant<TomoDetectorSchema>;
1886
+ declare const TomoDetectorHardwareDesc: HardwareDesc<TomoDetectorSchema>;
1865
1887
 
1866
1888
  declare function isTomoDetectorHardware(entity: Hardware): entity is TomoDetectorSchema;
1867
1889
  declare function useTomoDetectorHardware(name: string | null): TomoDetectorSchema | null;
@@ -1918,7 +1940,7 @@ type TomoDetectorsSchema = Hardware<{
1918
1940
  active_detector: string;
1919
1941
  target_detector?: string;
1920
1942
  }>;
1921
- declare const Variants$5: HardwareVariant<TomoDetectorsSchema>;
1943
+ declare const TomoDetectorsHardwareDesc: HardwareDesc<TomoDetectorsSchema>;
1922
1944
 
1923
1945
  declare function isTomoDetectorsHardware(entity: Hardware): entity is TomoDetectorsSchema;
1924
1946
  declare function useTomoDetectorsHardware(name: string | null): TomoDetectorsSchema | null;
@@ -1954,7 +1976,7 @@ type TomoImagingSchema = Hardware<{
1954
1976
  exposure_time: number;
1955
1977
  settle_time: number;
1956
1978
  }>;
1957
- declare const Variants$4: HardwareVariant<TomoImagingSchema>;
1979
+ declare const TomoImagingHardwareDesc: HardwareDesc<TomoImagingSchema>;
1958
1980
 
1959
1981
  interface TomoImagingActionsOptions extends HardwareWidgetOptions {
1960
1982
  /**
@@ -2016,7 +2038,7 @@ type TomoSampleStageSchema = Hardware<{
2016
2038
  x_axis_focal_pos: number | null;
2017
2039
  detector_center: [number | null, number | null];
2018
2040
  }>;
2019
- declare const Variants$3: HardwareVariant<TomoSampleStageSchema>;
2041
+ declare const TomoSampleStageHardwareDesc: HardwareDesc<TomoSampleStageSchema>;
2020
2042
 
2021
2043
  declare function isTomoSampleStageHardware(entity: Hardware): entity is TomoSampleStageSchema;
2022
2044
  declare function useTomoSampleStageHardware(name: string | null): TomoSampleStageSchema | null;
@@ -2031,7 +2053,7 @@ type TomoConfigSchema = Hardware<{
2031
2053
  holotomo: string;
2032
2054
  latency_time: number;
2033
2055
  }>;
2034
- declare const Variants$2: HardwareVariant<TomoConfigSchema>;
2056
+ declare const TomoConfigHardwareDesc: HardwareDesc<TomoConfigSchema>;
2035
2057
 
2036
2058
  declare function isTomoConfigHardware(entity: Hardware): entity is TomoConfigSchema;
2037
2059
  declare function useTomoConfigHardware(name: string | null): TomoConfigSchema | null;
@@ -2053,7 +2075,7 @@ type TomoHoloSchema = Hardware<{
2053
2075
  nb_distances: number;
2054
2076
  distances: TomoHoloDistance[];
2055
2077
  }>;
2056
- declare const Variants$1: HardwareVariant<TomoHoloSchema>;
2078
+ declare const TomoHoloHardwareDesc: HardwareDesc<TomoHoloSchema>;
2057
2079
 
2058
2080
  declare function isTomoHoloHardware(entity: Hardware): entity is TomoHoloSchema;
2059
2081
  declare function useTomoHoloHardware(name: string | null): TomoHoloSchema | null;
@@ -2069,7 +2091,7 @@ type ValveSchema = Hardware<{
2069
2091
  state: string;
2070
2092
  status: string;
2071
2093
  }>;
2072
- declare const Variants: HardwareVariant<ValveSchema>;
2094
+ declare const ValveHardwareDesc: HardwareDesc<ValveSchema>;
2073
2095
 
2074
2096
  declare function Valve(props: HardwareWidgetProps<ValveSchema>): react_jsx_runtime.JSX.Element;
2075
2097
 
@@ -2380,7 +2402,11 @@ interface YamlComponent {
2380
2402
  [option: string]: unknown;
2381
2403
  }
2382
2404
 
2383
- declare function Yaml$1(props: YamlComponent): react_jsx_runtime.JSX.Element;
2405
+ interface YamlTodoOptions {
2406
+ /** Message to display, defaults to "TODO" */
2407
+ message?: string;
2408
+ }
2409
+ declare function Yaml$1(props: YamlComponent & YamlTodoOptions): react_jsx_runtime.JSX.Element;
2384
2410
 
2385
2411
  declare function Yaml(props: YamlComponent): react_jsx_runtime.JSX.Element;
2386
2412
 
@@ -2507,6 +2533,14 @@ declare function registerYamlComponent(name: string, component: ComponentType<an
2507
2533
  * Such components are wrapped inside a `Panel`.
2508
2534
  */
2509
2535
  declare function registerYamlComponents(map: Record<string, ComponentType<any>>): void;
2536
+ /**
2537
+ * Get the current mapping from Yaml `type` to registered component.
2538
+ */
2539
+ declare function getYamlComponents(): Record<string, ComponentType<any>>;
2540
+ /**
2541
+ * Get the current mapping from Yaml `type` to registered container.
2542
+ */
2543
+ declare function getYamlContainers(): Record<string, ComponentType<any>>;
2510
2544
 
2511
2545
  type Defined<T> = T extends undefined ? never : T;
2512
2546
  declare function assertKeyExpected<T>(yamlNode: YamlNode | undefined, key: string, value: T): asserts value is Defined<T>;
@@ -2583,6 +2617,112 @@ declare namespace asserts_d {
2583
2617
  export { type asserts_d_Schema as Schema, asserts_d_assertBoolean as assertBoolean, asserts_d_assertDataCollectionId as assertDataCollectionId, asserts_d_assertKeyExpected as assertKeyExpected, asserts_d_assertNoUnknownKeys as assertNoUnknownKeys, asserts_d_assertNumber as assertNumber, asserts_d_assertOptionalArgs as assertOptionalArgs, asserts_d_assertOptionalBackend as assertOptionalBackend, asserts_d_assertOptionalBoolean as assertOptionalBoolean, asserts_d_assertOptionalKwargs as assertOptionalKwargs, asserts_d_assertOptionalListOfType as assertOptionalListOfType, asserts_d_assertOptionalNumber as assertOptionalNumber, asserts_d_assertOptionalNumberList as assertOptionalNumberList, asserts_d_assertOptionalString as assertOptionalString, asserts_d_assertOptionalStringList as assertOptionalStringList, asserts_d_assertOptionalStringOrStringList as assertOptionalStringOrStringList, asserts_d_assertString as assertString, asserts_d_assertStringList as assertStringList, asserts_d_assertStringMappingRecord as assertStringMappingRecord };
2584
2618
  }
2585
2619
 
2620
+ interface YamlRowOptions {
2621
+ /** Inline CSS styles applied to the row */
2622
+ style?: Record<string, any>;
2623
+ }
2624
+
2625
+ interface YamlColOptions {
2626
+ /** Inline CSS styles applied to the column */
2627
+ style?: Record<string, any>;
2628
+ /** Bootstrap column width (1-12) */
2629
+ xs?: number;
2630
+ }
2631
+
2632
+ interface YamlContainerOptions {
2633
+ /** Options spread onto the underlying Container */
2634
+ options?: Record<string, any>;
2635
+ /** Inline CSS styles applied to the row */
2636
+ style?: Record<string, any>;
2637
+ }
2638
+
2639
+ interface YamlGridOptions {
2640
+ /** Grid panel title */
2641
+ title?: string;
2642
+ /** CSS grid-template-columns value */
2643
+ columns?: string;
2644
+ /** CSS grid-template-rows value */
2645
+ rows?: string;
2646
+ /** Inline CSS styles applied to the column */
2647
+ style?: Record<string, any>;
2648
+ }
2649
+ /** Options for an individual cell within a grid. */
2650
+ interface YamlGridCellOptions {
2651
+ /** Number of grid columns this cell spans */
2652
+ columnSpan?: number;
2653
+ /** Number of grid rows this cell spans */
2654
+ rowSpan?: number;
2655
+ }
2656
+
2657
+ interface YamlPanelOptions {
2658
+ /** Options spread onto the underlying Panel */
2659
+ options?: Record<string, any>;
2660
+ /** Panel title */
2661
+ title?: string;
2662
+ /** Center the panel's contents */
2663
+ centerContent?: boolean;
2664
+ /** Inline CSS styles applied to the underlying Panel */
2665
+ style?: Record<string, any>;
2666
+ }
2667
+
2668
+ /** Options for an individual tab within Tabs */
2669
+ interface YamlTabsRowOptions {
2670
+ /** Tab header */
2671
+ title?: string;
2672
+ /** Inline CSS styles applied to the tab's content pane */
2673
+ style?: Record<string, any>;
2674
+ }
2675
+ interface YamlTabsOptions {
2676
+ /** Options spread onto the underlying Panel */
2677
+ options?: Record<string, any>;
2678
+ /** Tabs panel title */
2679
+ title: string;
2680
+ /** Inline CSS styles applied to the underlying Panel */
2681
+ style?: Record<string, any>;
2682
+ }
2683
+
2684
+ /** A section header spanning both columns of the form grid. */
2685
+ interface YamlFormHeaderOptions {
2686
+ type: 'formheader';
2687
+ /** Header text */
2688
+ title?: string;
2689
+ /** Inline CSS styles applied to the form's content grid */
2690
+ style?: Record<string, any>;
2691
+ }
2692
+
2693
+ /** A single labelled row of the form, rendering its content in the second column. */
2694
+ interface YamlFormRowOptions {
2695
+ /** Type of the node rendered in the row's content column (e.g. 'hardware') */
2696
+ type: string;
2697
+ /** Row title shown in the first column; for hardware rows, defaults to the hardware id's name if unset */
2698
+ title: string;
2699
+ /** For hardware rows, show the hardware state under the title */
2700
+ stateinheader?: boolean;
2701
+ /** CSS align-self applied to the title cell */
2702
+ titlealign?: string;
2703
+ /** Hardware id, used for the default title and passed to the rendered content node */
2704
+ id?: string;
2705
+ /** Hardware variant passed to the rendered content node */
2706
+ variant?: string;
2707
+ /** Passed through to the rendered content node */
2708
+ options?: Record<string, any>;
2709
+ /** Passed through to the rendered content node */
2710
+ even: boolean;
2711
+ }
2712
+ interface YamlFormOptions {
2713
+ /** Form panel title */
2714
+ title?: string;
2715
+ /** Options spread onto the underlying Panel */
2716
+ options?: Record<string, any>;
2717
+ /** Inline CSS styles applied to the form's content grid */
2718
+ style?: Record<string, any>;
2719
+ }
2720
+
2721
+ interface YamlLabelOptions {
2722
+ /** Text to display */
2723
+ label: string;
2724
+ }
2725
+
2586
2726
  interface RuntimeHooks {
2587
2727
  useHardware?: (id: string | null) => AnyHardware | null;
2588
2728
  useHardwareChangeActions?: (name: string | null) => HardwareChangeActions;
@@ -2710,5 +2850,9 @@ declare function registerHardwareVariant(type: string, variant: string, componen
2710
2850
  * @param variant: Variant requested
2711
2851
  */
2712
2852
  declare function getHardwareVariantComponent(type: string, variant: string): HardwareComponentType | null;
2853
+ /**
2854
+ * Get the full list of hardware descriptions.
2855
+ */
2856
+ declare function getAllHardwareDesc(): Record<string, HardwareDesc<AnyHardware>>;
2713
2857
 
2714
- export { type ActuatorSchema, AirBearing, Mocks$o as AirBearingMocks, AirBearingProtected, type AirBearingSchema, AirBearingSimulator, AirBearingState, Variants$s as AirBearingVariants, type AnyHardware, type AnySchema, type BaseHardware, Info as BaseInfo, type BaseInfoWidgetOptions, Mocks$p as BaseMocks, Name as BaseName, type BaseNameWidgetOptions, Property as BaseProperty, type BasePropertyWidgetOptions, DefaultState as BaseState, Variants$t as BaseVariants, Beamviewer, Mocks$n as BeamviewerMocks, type BeamviewerSchema, BeamviewerSimulator, Variants$r as BeamviewerVariants, EnergyManagerDefault, Mocks$m as EnergyManagerMocks, type EnergyManagerSchema, EnergyManagerSimulator, EnergyManagerState, Variants$q as EnergyManagerVariants, ErrorObject, type ExceptionFromProcedure, formatting_d as Formatting, Frontend, Mocks$l as FrontendMocks, type FrontendSchema, Variants$p as FrontendVariants, FullSizer, Gauge$1 as Gauge, Gauge as GaugeIndicator, Mocks$k as GaugeMocks, type GaugeSchema, Variants$o as GaugeVariants, type GaugeWidgetOptions, type GenericSchema, type Hardware, type HardwareComponentType, type HardwareFromProcedure, HardwareInputNumber, HardwareNumericStep, type HardwareObjectProps, schema_d as HardwareSchema, HardwareState, HardwareTemplate, types_d as HardwareTypes, type HardwareVariant, InfiniteKnob360, KeyError, Laser, LaserHeating, Mocks$i as LaserHeatingMocks, type LaserHeatingSchema, Variants$m as LaserHeatingVariants, type LaserHeatingWidgetOptions, Mocks$j as LaserMocks, type LaserSchema, Variants$n as LaserVariants, type LaserWidgetOptions, Light, Mocks$h as LightMocks, type LightSchema, Variants$l as LightVariants, LimaBinning, LimaDefault, TomoDetectorSize$2 as LimaDescription, TomoDetectorSize$1 as LimaImageRoi, Mocks$g as LimaMocks, type LimaSchema, LimaRoiShape as LimaShape, LimaSimulator, TomoDetectorSize as LimaSize, LimaState, LimaTransformation, Variants$k as LimaVariants, LoadingObject, MeasurementGroup as MeasurementGroupDefault, Mocks$f as MeasurementGroupMocks, type MeasurementGroupSchema, MeasurementGroupSimulator, Variants$j as MeasurementGroupVariants, MissingComponentObject, MissingKeysError, MissingObject, type Monitor, MonitorHardware, MonitorHardwareProperty, MonitorPanel, MonitorPanelItem, type MonitorPanelProps, MotorDefault, type MotorDefaultOptions, Mocks$e as MotorMocks, MotorRotation, type MotorSchema, MotorSimulator, MotorState, MotorText, Variants$i as MotorVariants, MultiState, Multiposition$1 as Multiposition, Multiposition as MultipositionDefault2, type MultipositionDefault2Options, Mocks$d as MultipositionMocks, type MultipositionSchema, MultipositionSimulator, Variants$h as MultipositionVariants, NoObject$1 as NoObject, Yaml as None, NoObject as NullObject, NumericStep, Optic as OpticDefault, Mocks$c as OpticMocks, type OpticSchema, OpticSimulator, OpticState, Variants$g as OpticVariants, type OpticWidgetOptions, Panel, ProcedureExecution, ProcedureManage, Mocks$b as ProcedureMocks, type ProcedureSchema, ProcedureState, ProcedureValidate, Variants$f as ProcedureVariants, Pump as PumpDefault, Mocks$7 as PumpMocks, type PumpSchema, Variants$b as PumpVariants, Pusher as PusherDefault, Mocks$6 as PusherMocks, type PusherOptions, type PusherSchema, PusherSimulator, PusherState, Variants$a as PusherVariants, RegulationLoop as RegulationDefault, Mocks$a as RegulationMocks, type RegulationOptions, RegulationPlot, type RegulationSchema, RegulationSimulator, Variants$e as RegulationVariants, type ScanFromProcedure, ServiceDefault, Mocks$5 as ServiceMocks, ServiceProtected, type ServiceSchema, ServiceState, Variants$9 as ServiceVariants, ShutterDefault, Mocks$9 as ShutterMocks, ShutterProtected, type ShutterSchema, ShutterSimulator, ShutterState, Variants$d as ShutterVariants, SlitDefault, Mocks$8 as SlitMocks, type SlitSchema, SlitState, Variants$c as SlitVariants, State$1 as State, Synoptic, type SynopticElementType, type SynopticType, Yaml$1 as Todo, TomoConfigLatencyTime, type TomoConfigSchema, Variants$2 as TomoConfigVariants, TomoDetectorAcquisitionMode, type TomoDetectorFieldOfViewOptions, Mocks$3 as TomoDetectorMocks, TomoDetectorSamplePixelSize, type TomoDetectorSchema, TomoDetectorState, Variants$6 as TomoDetectorVariants, TomoDetectors as TomoDetectorsDefault, Mocks$2 as TomoDetectorsMocks, type TomoDetectorsSchema, TomoDetectorsState, Variants$5 as TomoDetectorsVariants, TomoFlatMotionDefault, Mocks$4 as TomoFlatMotionMocks, type TomoFlatMotionSchema, TomoFlatMotionSimulator, TomoFlatMotionSmall, TomoFlatMotionState, type TomoFlatMotionStep, Variants$8 as TomoFlatMotionVariants, type TomoHoloDistance, type TomoHoloSchema, TomoHoloState, Variants$1 as TomoHoloVariants, TomoImagingActions, TomoImagingDefault, TomoImagingExposureTime, Mocks$1 as TomoImagingMocks, type TomoImagingOptions, type TomoImagingSchema, TomoImagingSettleTime, TomoImagingSimulator, TomoImagingState, TomoImagingUpdateMode, Variants$4 as TomoImagingVariants, TomoReferencePositionDefault, type TomoReferencePositionSchema, Variants$7 as TomoReferencePositionVariants, type TomoSampleStageSchema, Variants$3 as TomoSampleStageVariants, TypeIcon, type Props$8 as TypeIconOptions, Valve as ValveDefault, Mocks as ValveMocks, type ValveSchema, Variants as ValveVariants, ErrorBoundary as YAMLErrorBoundary, Main as YAMLLayout, asserts_d as YamlAsserts, type YamlComponent, type YamlNode, createMotorMock, dynamicOp, getHardwareVariantComponent, isLimaHardware, isMotorClockWise, isMotorHardware, isOpticHardware, isProcedureHardware, isTomoConfigHardware, isTomoDetectorHardware, isTomoDetectorsHardware, isTomoFlatMotionHardware, isTomoHoloHardware, isTomoReferencePositionHardware, isTomoSampleStageHardware, limaGuessSubframes, motorLimits, registerHardwareVariant, registerMonitorComponent, registerRuntimeHook, registerYamlComponent, registerYamlComponents, registerYamlContainer, renderYamlNode, useHardware, useHardwareChangeActions, useHardwareSchema, useLimaHardware, useMotorHardware, useMotorStates, useOperator, useProcedureHardware, useScanRunning, useTomoConfigHardware, useTomoDetectorHardware, useTomoDetectorsHardware, useTomoFlatMotionHardware, useTomoHoloHardware, useTomoSampleStageHardware, yamlComponents, yamlContainers };
2858
+ export { type ActuatorSchema, AirBearing, AirBearingHardwareDesc, Mocks$o as AirBearingMocks, AirBearingProtected, type AirBearingSchema, AirBearingSimulator, AirBearingState, type AnyHardware, type AnySchema, type BaseHardware, BaseHardwareDesc, Info as BaseInfo, type BaseInfoWidgetOptions, Mocks$p as BaseMocks, Name as BaseName, type BaseNameWidgetOptions, Property as BaseProperty, type BasePropertyWidgetOptions, DefaultState as BaseState, Beamviewer, BeamviewerHardwareDesc, Mocks$n as BeamviewerMocks, type BeamviewerSchema, BeamviewerSimulator, EnergyManagerDefault, EnergyManagerHardwareDesc, Mocks$m as EnergyManagerMocks, type EnergyManagerSchema, EnergyManagerSimulator, EnergyManagerState, ErrorObject, type ExceptionFromProcedure, formatting_d as Formatting, Frontend, FrontendHardwareDesc, Mocks$l as FrontendMocks, type FrontendSchema, FullSizer, Gauge$1 as Gauge, GaugeHardwareDesc, Gauge as GaugeIndicator, Mocks$k as GaugeMocks, type GaugeSchema, type GaugeWidgetOptions, type GenericSchema, type Hardware, type HardwareComponentType, type HardwareDesc, type HardwareFromProcedure, HardwareInputNumber, HardwareNumericStep, type HardwareObjectProps, schema_d as HardwareSchema, HardwareState, HardwareTemplate, types_d as HardwareTypes, type HardwareVariant, InfiniteKnob360, KeyError, Laser, LaserHardwareDesc, LaserHeating, LaserHeatingHardwareDesc, Mocks$i as LaserHeatingMocks, type LaserHeatingSchema, type LaserHeatingWidgetOptions, Mocks$j as LaserMocks, type LaserSchema, type LaserWidgetOptions, Light, LightHardwareDesc, Mocks$h as LightMocks, type LightSchema, LimaBinning, LimaDefault, TomoDetectorSize$2 as LimaDescription, LimaHardwareDesc, TomoDetectorSize$1 as LimaImageRoi, Mocks$g as LimaMocks, type LimaSchema, LimaRoiShape as LimaShape, LimaSimulator, TomoDetectorSize as LimaSize, LimaState, LimaTransformation, LoadingObject, MeasurementGroup as MeasurementGroupDefault, MeasurementGroupHardwareDesc, Mocks$f as MeasurementGroupMocks, type MeasurementGroupSchema, MeasurementGroupSimulator, MissingComponentObject, MissingKeysError, MissingObject, type Monitor, MonitorHardware, MonitorHardwareProperty, MonitorPanel, MonitorPanelItem, type MonitorPanelProps, MotorDefault, type MotorDefaultOptions, MotorHardwareDesc, Mocks$e as MotorMocks, MotorRotation, type MotorSchema, MotorSimulator, MotorState, MotorText, MultiState, Multiposition$1 as Multiposition, Multiposition as MultipositionDefault2, type MultipositionDefault2Options, MultipositionHardwareDesc, Mocks$d as MultipositionMocks, type MultipositionSchema, MultipositionSimulator, NoObject$1 as NoObject, Yaml as None, NoObject as NullObject, NumericStep, Optic as OpticDefault, OpticHardwareDesc, Mocks$c as OpticMocks, type OpticSchema, OpticSimulator, OpticState, type OpticWidgetOptions, Panel, ProcedureExecution, ProcedureHardwareDesc, ProcedureManage, Mocks$b as ProcedureMocks, type ProcedureSchema, ProcedureState, ProcedureValidate, Pump as PumpDefault, PumpHardwareDesc, Mocks$7 as PumpMocks, type PumpSchema, Pusher as PusherDefault, PusherHardwareDesc, Mocks$6 as PusherMocks, type PusherOptions, type PusherSchema, PusherSimulator, PusherState, RegulationLoop as RegulationDefault, RegulationHardwareDesc, Mocks$a as RegulationMocks, type RegulationOptions, RegulationPlot, type RegulationSchema, RegulationSimulator, type ScanFromProcedure, ServiceDefault, ServiceHardwareDesc, Mocks$5 as ServiceMocks, ServiceProtected, type ServiceSchema, ServiceState, ShutterDefault, ShutterHardwareDesc, Mocks$9 as ShutterMocks, ShutterProtected, type ShutterSchema, ShutterSimulator, ShutterState, SlitDefault, SlitHardwareDesc, Mocks$8 as SlitMocks, type SlitSchema, SlitState, State$1 as State, Synoptic, type SynopticElementType, type SynopticType, Yaml$1 as Todo, TomoConfigHardwareDesc, TomoConfigLatencyTime, type TomoConfigSchema, TomoDetectorAcquisitionMode, type TomoDetectorFieldOfViewOptions, TomoDetectorHardwareDesc, Mocks$3 as TomoDetectorMocks, TomoDetectorSamplePixelSize, type TomoDetectorSchema, TomoDetectorState, TomoDetectors as TomoDetectorsDefault, TomoDetectorsHardwareDesc, Mocks$2 as TomoDetectorsMocks, type TomoDetectorsSchema, TomoDetectorsState, TomoFlatMotionDefault, TomoFlatMotionHardwareDesc, Mocks$4 as TomoFlatMotionMocks, type TomoFlatMotionSchema, TomoFlatMotionSimulator, TomoFlatMotionSmall, TomoFlatMotionState, type TomoFlatMotionStep, type TomoHoloDistance, TomoHoloHardwareDesc, type TomoHoloSchema, TomoHoloState, TomoImagingActions, TomoImagingDefault, TomoImagingExposureTime, TomoImagingHardwareDesc, Mocks$1 as TomoImagingMocks, type TomoImagingOptions, type TomoImagingSchema, TomoImagingSettleTime, TomoImagingSimulator, TomoImagingState, TomoImagingUpdateMode, TomoReferencePositionDefault, TomoReferencePositionHardwareDesc, type TomoReferencePositionSchema, TomoSampleStageHardwareDesc, type TomoSampleStageSchema, TypeIcon, type Props$8 as TypeIconOptions, Valve as ValveDefault, ValveHardwareDesc, Mocks as ValveMocks, type ValveSchema, ErrorBoundary as YAMLErrorBoundary, Main as YAMLLayout, asserts_d as YamlAsserts, type YamlColOptions, type YamlComponent, type YamlContainerOptions, type YamlFormHeaderOptions, type YamlFormOptions, type YamlFormRowOptions, type YamlGridCellOptions, type YamlGridOptions, type YamlLabelOptions, type YamlNode, type YamlPanelOptions, type YamlRowOptions, type YamlTabsOptions, type YamlTabsRowOptions, type YamlTodoOptions, createMotorMock, dynamicOp, getAllHardwareDesc, getHardwareVariantComponent, getYamlComponents, getYamlContainers, isLimaHardware, isMotorClockWise, isMotorHardware, isOpticHardware, isProcedureHardware, isTomoConfigHardware, isTomoDetectorHardware, isTomoDetectorsHardware, isTomoFlatMotionHardware, isTomoHoloHardware, isTomoReferencePositionHardware, isTomoSampleStageHardware, limaGuessSubframes, motorLimits, registerHardwareVariant, registerMonitorComponent, registerRuntimeHook, registerYamlComponent, registerYamlComponents, registerYamlContainer, renderYamlNode, useHardware, useHardwareChangeActions, useHardwareSchema, useLimaHardware, useMotorHardware, useMotorStates, useOperator, useProcedureHardware, useScanRunning, useTomoConfigHardware, useTomoDetectorHardware, useTomoDetectorsHardware, useTomoFlatMotionHardware, useTomoHoloHardware, useTomoSampleStageHardware, yamlComponents, yamlContainers };