---
title: EnvOpenParts
description: A type that the Authoring surface names.
---

# `EnvOpenParts`

Type, in `@jr2/orchestrator/src/effect.ts`. It is type plumbing: it computes a type from the types of a Machine or of its parts, and a workflow module does not write it. The signature of an export, or a type that it names, names this type, so its declaration is here. The [Authoring surface](../authoring-surface.md) page lists each export.

```ts
type EnvOpenParts<Opt> = Opt extends { readonly env: infer E }
  ? OpenSecretIn<E extends Readonly<Record<string, infer V>> ? V : never>
  : never;
```
