# `IMagneticPlaneConfig`

> Contract 2.0.0 · package sha256 `a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e` · generated from `configurator-runtime.d.ts` by `services/onsite-scripter/scripts/build-contract-docs.mjs`; edit the source, not this file.

Interface · `import type { IMagneticPlaneConfig } from '@holostep-configurators/runtime-client/contract';` · stable · since 2.0.0 · section 21. Stored data (vendored; replaces @holo/interfaces)

A stored connector-plane config, matched to a connector plane by [`meshName`](IMagneticPlaneConfig.meshName.md). It lies over the GLB's
`extras.holostep.connector` (spec section 6.12): [`connector`](IMagneticPlaneConfig.connector.md) is the side
([`Connector.meta.connector`](Connector.meta.md)), [`allowedTypes`](IMagneticPlaneConfig.allowedTypes.md) is [`Connector.accepts`](Connector.accepts.md). Other keys (`align`,
`frontDir`, `multi`, your own) pass through to [`Connector.meta`](Connector.meta.md).

## Members

| Member | Kind | Summary |
| --- | --- | --- |
| <a id="meshname"></a>[`meshName`](IMagneticPlaneConfig.meshName.md) | property | The plane node's cleaned name (spec section 6.9, ID1), as 1.x read it off the plane mesh; never the glTF `meshes[].name`. |
| <a id="label"></a>[`label?`](IMagneticPlaneConfig.label.md) | property | A name for editors. |
| <a id="connector"></a>[`connector?`](IMagneticPlaneConfig.connector.md) | property | The side, e.g. 'left' (not the plane id). |
| <a id="enabled"></a>[`enabled?`](IMagneticPlaneConfig.enabled.md) | property |  |
| <a id="priority"></a>[`priority?`](IMagneticPlaneConfig.priority.md) | property |  |
| <a id="allowedtypes"></a>[`allowedTypes?`](IMagneticPlaneConfig.allowedTypes.md) | property | An array, or a comma list as older documents store it; read through [`Connector.accepts`](Connector.accepts.md) (always an array). |
| <a id="allowrotatedsnap"></a>[`allowRotatedSnap?`](IMagneticPlaneConfig.allowRotatedSnap.md) | property | Measure the alignment along the target's `frontDir` after a rotation (1.4's rotated-mate path). |

## Declaration

```ts
export interface IMagneticPlaneConfig {
  meshName: string;
  label?: string;
  connector?: string;
  enabled?: boolean;
  priority?: number;
  allowedTypes?: string[] | string;
  allowRotatedSnap?: boolean;
  [key: string]: string | number | boolean | string[] | undefined;
}
```

## Generic-API test (spec 3.1)

| Rule | Result |
| --- | --- |
| 1. Neutral name | pass: `IMagneticPlaneConfig` names no product |
| 2. A precedent | not recorded: no ledger row (coverage.json) names this member or its owner |
| 3. Two apps, or labs | not recorded: no ledger row names this member or its owner |
| 4. The cheaper fix first | not recorded per member (Appendix B decides it per need) |
