@junobuild/config 0.1.8 → 0.2.1-next-2025-06-24

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/README.md CHANGED
@@ -51,8 +51,288 @@ Configuration options for [Juno] CLI.
51
51
 
52
52
  [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/config.ts#L10)
53
53
 
54
+ ### :wrench: Constants
55
+
56
+ - [EmulatorConfigSchema](#gear-emulatorconfigschema)
57
+ - [JunoConfigModeSchema](#gear-junoconfigmodeschema)
58
+ - [JunoConfigEnvSchema](#gear-junoconfigenvschema)
59
+ - [OrbiterIdSchema](#gear-orbiteridschema)
60
+ - [OrbiterIdsSchema](#gear-orbiteridsschema)
61
+ - [OrbiterConfigSchema](#gear-orbiterconfigschema)
62
+ - [ModuleLogVisibilitySchema](#gear-modulelogvisibilityschema)
63
+ - [ModuleSettingsSchema](#gear-modulesettingsschema)
64
+ - [MaxMemorySizeConfigSchema](#gear-maxmemorysizeconfigschema)
65
+ - [StorageConfigSourceGlobSchema](#gear-storageconfigsourceglobschema)
66
+ - [StorageConfigHeaderSchema](#gear-storageconfigheaderschema)
67
+ - [StorageConfigRewriteSchema](#gear-storageconfigrewriteschema)
68
+ - [StorageConfigRedirectSchema](#gear-storageconfigredirectschema)
69
+ - [StorageConfigSchema](#gear-storageconfigschema)
70
+ - [EncodingTypeSchema](#gear-encodingtypeschema)
71
+ - [CliConfigSchema](#gear-cliconfigschema)
72
+ - [SatelliteAssertionsSchema](#gear-satelliteassertionsschema)
73
+ - [AuthenticationConfigInternetIdentitySchema](#gear-authenticationconfiginternetidentityschema)
74
+ - [AuthenticationConfigSchema](#gear-authenticationconfigschema)
75
+ - [DatastoreConfigSchema](#gear-datastoreconfigschema)
76
+ - [SatelliteIdSchema](#gear-satelliteidschema)
77
+ - [SatelliteIdsSchema](#gear-satelliteidsschema)
78
+ - [SatelliteConfigOptionsSchema](#gear-satelliteconfigoptionsschema)
79
+ - [JunoConfigSchema](#gear-junoconfigschema)
80
+ - [SatelliteDevDataStoreCollectionSchema](#gear-satellitedevdatastorecollectionschema)
81
+ - [SatelliteDevStorageCollectionSchema](#gear-satellitedevstoragecollectionschema)
82
+ - [SatelliteDevCollectionsSchema](#gear-satellitedevcollectionsschema)
83
+ - [SatelliteDevControllerSchema](#gear-satellitedevcontrollerschema)
84
+ - [SatelliteDevConfigSchema](#gear-satellitedevconfigschema)
85
+ - [JunoDevConfigSchema](#gear-junodevconfigschema)
86
+
87
+ #### :gear: EmulatorConfigSchema
88
+
89
+ | Constant | Type |
90
+ | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
91
+ | `EmulatorConfigSchema` | `ZodUnion<readonly [ZodObject<{ runner: ZodObject<{ type: ZodEnum<{ docker: "docker"; }>; image: ZodOptional<ZodString>; name: ZodOptional<ZodString>; volume: ZodOptional<...>; target: ZodOptional<...>; }, $strict>; skylab: ZodObject<...>; }, $strict>, ZodObject<...>, ZodObject<...>]>` |
92
+
93
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/emulator.config.ts#L145)
94
+
95
+ #### :gear: JunoConfigModeSchema
96
+
97
+ | Constant | Type |
98
+ | ---------------------- | ---------------------------------------------------------- |
99
+ | `JunoConfigModeSchema` | `ZodUnion<readonly [ZodLiteral<"production">, ZodString]>` |
100
+
101
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/juno.env.ts#L6)
102
+
103
+ #### :gear: JunoConfigEnvSchema
104
+
105
+ | Constant | Type |
106
+ | --------------------- | ---------------------------------------------------------------------------------------- |
107
+ | `JunoConfigEnvSchema` | `ZodObject<{ mode: ZodUnion<readonly [ZodLiteral<"production">, ZodString]>; }, $strip>` |
108
+
109
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/juno.env.ts#L17)
110
+
111
+ #### :gear: OrbiterIdSchema
112
+
113
+ | Constant | Type |
114
+ | ----------------- | --------------------------------------- |
115
+ | `OrbiterIdSchema` | `ZodObject<{ id: ZodString; }, $strip>` |
116
+
117
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/orbiter.config.ts#L9)
118
+
119
+ #### :gear: OrbiterIdsSchema
120
+
121
+ | Constant | Type |
122
+ | ------------------ | ------------------------------------------------------------------------------------------------------------- |
123
+ | `OrbiterIdsSchema` | `ZodObject<{ ids: ZodRecord<ZodUnion<readonly [ZodLiteral<"production">, ZodString]>, ZodString>; }, $strip>` |
124
+
125
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/orbiter.config.ts#L28)
126
+
127
+ #### :gear: OrbiterConfigSchema
128
+
129
+ | Constant | Type |
130
+ | --------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
131
+ | `OrbiterConfigSchema` | `ZodUnion<readonly [ZodObject<{ id: ZodString; }, $strict>, ZodObject<{ ids: ZodRecord<ZodUnion<readonly [ZodLiteral<"production">, ZodString]>, ZodString>; }, $strict>]>` |
132
+
133
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/orbiter.config.ts#L55)
134
+
135
+ #### :gear: ModuleLogVisibilitySchema
136
+
137
+ | Constant | Type |
138
+ | --------------------------- | ------------------------------------------------------------ |
139
+ | `ModuleLogVisibilitySchema` | `ZodEnum<{ controllers: "controllers"; public: "public"; }>` |
140
+
141
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/module/module.settings.ts#L6)
142
+
143
+ #### :gear: ModuleSettingsSchema
144
+
145
+ | Constant | Type |
146
+ | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
147
+ | `ModuleSettingsSchema` | `ZodObject<{ freezingThreshold: ZodOptional<ZodBigInt>; reservedCyclesLimit: ZodOptional<ZodBigInt>; logVisibility: ZodOptional<ZodEnum<{ controllers: "controllers"; public: "public"; }>>; heapMemoryLimit: ZodOptional<...>; memoryAllocation: ZodOptional<...>; computeAllocation: ZodOptional<...>; }, $strict>` |
148
+
149
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/module/module.settings.ts#L21)
150
+
151
+ #### :gear: MaxMemorySizeConfigSchema
152
+
153
+ | Constant | Type |
154
+ | --------------------------- | --------------------------------------------------------------------------------------- |
155
+ | `MaxMemorySizeConfigSchema` | `ZodObject<{ heap: ZodOptional<ZodBigInt>; stable: ZodOptional<ZodBigInt>; }, $strict>` |
156
+
157
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/feature.config.ts#L6)
158
+
159
+ #### :gear: StorageConfigSourceGlobSchema
160
+
161
+ | Constant | Type |
162
+ | ------------------------------- | ----------- |
163
+ | `StorageConfigSourceGlobSchema` | `ZodString` |
164
+
165
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L7)
166
+
167
+ #### :gear: StorageConfigHeaderSchema
168
+
169
+ | Constant | Type |
170
+ | --------------------------- | ------------------------------------------------------------------------------------------------------- |
171
+ | `StorageConfigHeaderSchema` | `ZodObject<{ source: ZodString; headers: ZodArray<ZodTuple<[ZodString, ZodString], null>>; }, $strict>` |
172
+
173
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L18)
174
+
175
+ #### :gear: StorageConfigRewriteSchema
176
+
177
+ | Constant | Type |
178
+ | ---------------------------- | -------------------------------------------------------------------- |
179
+ | `StorageConfigRewriteSchema` | `ZodObject<{ source: ZodString; destination: ZodString; }, $strict>` |
180
+
181
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L49)
182
+
183
+ #### :gear: StorageConfigRedirectSchema
184
+
185
+ | Constant | Type |
186
+ | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
187
+ | `StorageConfigRedirectSchema` | `ZodObject<{ source: ZodString; location: ZodString; code: ZodUnion<readonly [ZodLiteral<301>, ZodLiteral<302>]>; }, $strict>` |
188
+
189
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L79)
190
+
191
+ #### :gear: StorageConfigSchema
192
+
193
+ | Constant | Type |
194
+ | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
195
+ | `StorageConfigSchema` | `ZodObject<{ headers: ZodOptional<ZodArray<ZodObject<{ source: ZodString; headers: ZodArray<ZodTuple<[ZodString, ZodString], null>>; }, $strict>>>; ... 4 more ...; maxMemorySize: ZodOptional<...>; }, $strip>` |
196
+
197
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L114)
198
+
199
+ #### :gear: EncodingTypeSchema
200
+
201
+ see EncodingType
202
+
203
+ | Constant | Type |
204
+ | -------------------- | ------------------------------------------------------------------------------------------------------ |
205
+ | `EncodingTypeSchema` | `ZodEnum<{ identity: "identity"; gzip: "gzip"; compress: "compress"; deflate: "deflate"; br: "br"; }>` |
206
+
207
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/encoding.ts#L6)
208
+
209
+ #### :gear: CliConfigSchema
210
+
211
+ | Constant | Type |
212
+ | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
213
+ | `CliConfigSchema` | `ZodObject<{ source: ZodOptional<ZodString>; ignore: ZodOptional<ZodArray<ZodString>>; gzip: ZodOptional<ZodUnion<readonly [ZodString, ZodLiteral<...>]>>; encoding: ZodOptional<...>; predeploy: ZodOptional<...>; postdeploy: ZodOptional<...>; }, $strict>` |
214
+
215
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/cli.config.ts#L7)
216
+
217
+ #### :gear: SatelliteAssertionsSchema
218
+
219
+ | Constant | Type |
220
+ | --------------------------- | ---------------------------------------------------------------------------------------------- |
221
+ | `SatelliteAssertionsSchema` | `ZodObject<{ heapMemory: ZodOptional<ZodUnion<readonly [ZodNumber, ZodBoolean]>>; }, $strict>` |
222
+
223
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/assertions.config.ts#L6)
224
+
225
+ #### :gear: AuthenticationConfigInternetIdentitySchema
226
+
227
+ | Constant | Type |
228
+ | -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
229
+ | `AuthenticationConfigInternetIdentitySchema` | `ZodObject<{ derivationOrigin: ZodOptional<ZodURL>; externalAlternativeOrigins: ZodOptional<ZodArray<ZodURL>>; }, $strict>` |
230
+
231
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/authentication.config.ts#L6)
232
+
233
+ #### :gear: AuthenticationConfigSchema
234
+
235
+ | Constant | Type |
236
+ | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
237
+ | `AuthenticationConfigSchema` | `ZodObject<{ internetIdentity: ZodOptional<ZodObject<{ derivationOrigin: ZodOptional<ZodURL>; externalAlternativeOrigins: ZodOptional<ZodArray<ZodURL>>; }, $strict>>; }, $strict>` |
238
+
239
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/authentication.config.ts#L35)
240
+
241
+ #### :gear: DatastoreConfigSchema
242
+
243
+ | Constant | Type |
244
+ | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
245
+ | `DatastoreConfigSchema` | `ZodObject<{ maxMemorySize: ZodOptional<ZodObject<{ heap: ZodOptional<ZodBigInt>; stable: ZodOptional<ZodBigInt>; }, $strict>>; }, $strict>` |
246
+
247
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/datastore.config.ts#L7)
248
+
249
+ #### :gear: SatelliteIdSchema
250
+
251
+ | Constant | Type |
252
+ | ------------------- | --------------------------------------- |
253
+ | `SatelliteIdSchema` | `ZodObject<{ id: ZodString; }, $strip>` |
254
+
255
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/satellite.config.ts#L15)
256
+
257
+ #### :gear: SatelliteIdsSchema
258
+
259
+ | Constant | Type |
260
+ | -------------------- | ------------------------------------------------------------------------------------------------------------- |
261
+ | `SatelliteIdsSchema` | `ZodObject<{ ids: ZodRecord<ZodUnion<readonly [ZodLiteral<"production">, ZodString]>, ZodString>; }, $strip>` |
262
+
263
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/satellite.config.ts#L34)
264
+
265
+ #### :gear: SatelliteConfigOptionsSchema
266
+
267
+ | Constant | Type |
268
+ | ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
269
+ | `SatelliteConfigOptionsSchema` | `ZodUnion<readonly [ZodObject<{ storage: ZodOptional<ZodObject<{ headers: ZodOptional<ZodArray<ZodObject<{ source: ZodString; headers: ZodArray<ZodTuple<[ZodString, ZodString], null>>; }, $strict>>>; ... 4 more ...; maxMemorySize: ZodOptional<...>; }, $strip>>; ... 4 more ...; id: ZodString; }, $strict>, ZodObject<.....` |
270
+
271
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/satellite.config.ts#L69)
272
+
273
+ #### :gear: JunoConfigSchema
274
+
275
+ | Constant | Type |
276
+ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
277
+ | `JunoConfigSchema` | `ZodObject<{ satellite: ZodUnion<readonly [ZodObject<{ storage: ZodOptional<ZodObject<{ headers: ZodOptional<ZodArray<ZodObject<{ source: ZodString; headers: ZodArray<ZodTuple<[ZodString, ZodString], null>>; }, $strict>>>; ... 4 more ...; maxMemorySize: ZodOptional<...>; }, $strip>>; ... 4 more ...; id: ZodString; },...` |
278
+
279
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/juno.config.ts#L9)
280
+
281
+ #### :gear: SatelliteDevDataStoreCollectionSchema
282
+
283
+ | Constant | Type |
284
+ | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
285
+ | `SatelliteDevDataStoreCollectionSchema` | `ZodObject<{ collection: ZodString; read: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; write: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; ... 4 more ...; maxTokens: ZodOptional<...>; }, $strict>` |
286
+
287
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L8)
288
+
289
+ #### :gear: SatelliteDevStorageCollectionSchema
290
+
291
+ | Constant | Type |
292
+ | ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
293
+ | `SatelliteDevStorageCollectionSchema` | `ZodObject<{ collection: ZodString; read: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; write: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; ... 4 more ...; maxTokens: ZodOptional<...>; }, $strict>` |
294
+
295
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L27)
296
+
297
+ #### :gear: SatelliteDevCollectionsSchema
298
+
299
+ | Constant | Type |
300
+ | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
301
+ | `SatelliteDevCollectionsSchema` | `ZodObject<{ datastore: ZodOptional<ZodArray<ZodObject<{ collection: ZodString; read: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; write: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; ... 4 more ...; maxTokens...` |
302
+
303
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L46)
304
+
305
+ #### :gear: SatelliteDevControllerSchema
306
+
307
+ | Constant | Type |
308
+ | ------------------------------ | --------------------------------------------------------------------------------------------------------------- |
309
+ | `SatelliteDevControllerSchema` | `ZodObject<{ id: ZodString; scope: ZodEnum<{ admin: "admin"; write: "write"; submit: "submit"; }>; }, $strict>` |
310
+
311
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L74)
312
+
313
+ #### :gear: SatelliteDevConfigSchema
314
+
315
+ | Constant | Type |
316
+ | -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
317
+ | `SatelliteDevConfigSchema` | `ZodObject<{ collections: ZodObject<{ datastore: ZodOptional<ZodArray<ZodObject<{ collection: ZodString; read: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; ... 5 more ...; maxTokens: ZodOptional<...>; }, $strict>>>; storage: ZodOptional<...>; }, $strict>; control...` |
318
+
319
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L100)
320
+
321
+ #### :gear: JunoDevConfigSchema
322
+
323
+ | Constant | Type |
324
+ | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
325
+ | `JunoDevConfigSchema` | `ZodObject<{ satellite: ZodObject<{ collections: ZodObject<{ datastore: ZodOptional<ZodArray<ZodObject<{ collection: ZodString; read: ZodEnum<{ controllers: "controllers"; public: "public"; private: "private"; managed: "managed"; }>; ... 5 more ...; maxTokens: ZodOptional<...>; }, $strict>>>; storage: ZodOptional<......` |
326
+
327
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L127)
328
+
54
329
  ### :tropical_drink: Interfaces
55
330
 
331
+ - [EmulatorPorts](#gear-emulatorports)
332
+ - [EmulatorSkylab](#gear-emulatorskylab)
333
+ - [EmulatorConsole](#gear-emulatorconsole)
334
+ - [EmulatorSatellite](#gear-emulatorsatellite)
335
+ - [EmulatorRunner](#gear-emulatorrunner)
56
336
  - [JunoConfigEnv](#gear-junoconfigenv)
57
337
  - [OrbiterId](#gear-orbiterid)
58
338
  - [OrbiterIds](#gear-orbiterids)
@@ -76,6 +356,51 @@ Configuration options for [Juno] CLI.
76
356
  - [SatelliteDevConfig](#gear-satellitedevconfig)
77
357
  - [JunoDevConfig](#gear-junodevconfig)
78
358
 
359
+ #### :gear: EmulatorPorts
360
+
361
+ Represents the ports exposed by an emulator container.
362
+
363
+ | Property | Type | Description |
364
+ | -------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
365
+ | `server` | `number or undefined` | The port of the server used to simulate execution. This is the port your app connects to. Also known as the "local Internet Computer replica" or the "Pocket-IC port". default: 5987 |
366
+ | `admin` | `number or undefined` | The port of the admin server used for tasks like transferring ICP from the ledger. default: 5999 |
367
+
368
+ #### :gear: EmulatorSkylab
369
+
370
+ Configuration for the Skylab emulator.
371
+
372
+ | Property | Type | Description |
373
+ | -------- | ------------------------------------------------------- | -------------------------------------- |
374
+ | `ports` | `(EmulatorPorts and { console: number; }) or undefined` | Ports exposed by the Skylab container. |
375
+
376
+ #### :gear: EmulatorConsole
377
+
378
+ Configuration for the Console emulator.
379
+
380
+ | Property | Type | Description |
381
+ | -------- | ---------------------------- | --------------------------------------- |
382
+ | `ports` | `EmulatorPorts or undefined` | Ports exposed by the Console container. |
383
+
384
+ #### :gear: EmulatorSatellite
385
+
386
+ Configuration for the Satellite emulator.
387
+
388
+ | Property | Type | Description |
389
+ | -------- | ---------------------------- | ----------------------------------------- |
390
+ | `ports` | `EmulatorPorts or undefined` | Ports exposed by the Satellite container. |
391
+
392
+ #### :gear: EmulatorRunner
393
+
394
+ Shared options for all runner variants.
395
+
396
+ | Property | Type | Description |
397
+ | -------- | --------------------- | ----------------------------------------------------------------------------------------------------- |
398
+ | `type` | `"docker"` | The containerization tool to run the emulator. |
399
+ | `image` | `string or undefined` | Image reference. default: depends on emulator type, e.g. "junobuild/skylab:latest" |
400
+ | `name` | `string or undefined` | Optional container name to use for the emulator. Useful for reusing or managing a specific container. |
401
+ | `volume` | `string or undefined` | Persistent volume to store internal state. default: "juno" |
402
+ | `target` | `string or undefined` | Shared folder for deploying and hot-reloading serverless functions. |
403
+
79
404
  #### :gear: JunoConfigEnv
80
405
 
81
406
  Represents the environment configuration for Juno.
@@ -88,10 +413,9 @@ Represents the environment configuration for Juno.
88
413
 
89
414
  Represents the configuration for an orbiter.
90
415
 
91
- | Property | Type | Description |
92
- | ----------- | --------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
93
- | `id` | `string` | The identifier of the orbiter used in the dApp. type: {string} |
94
- | `orbiterId` | `string or undefined` | The deprecated identifier of the orbiter. deprecated: `orbiterId` will be removed in the future. Use `id` instead.type: {string} |
416
+ | Property | Type | Description |
417
+ | -------- | -------- | -------------------------------------------------------------- |
418
+ | `id` | `string` | The identifier of the orbiter used in the dApp. type: {string} |
95
419
 
96
420
  #### :gear: OrbiterIds
97
421
 
@@ -172,14 +496,14 @@ Configures the hosting behavior of the Storage.
172
496
 
173
497
  #### :gear: CliConfig
174
498
 
175
- | Property | Type | Description |
176
- | ------------ | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
177
- | `source` | `string or undefined` | Specifies the directory from which to deploy to Storage. For instance, if `npm run build` outputs files to a `dist` folder, use `source: 'dist'`. default: 'build'type: {string} |
178
- | `ignore` | `string[] or undefined` | Specifies files or patterns to ignore during deployment, using glob patterns similar to those in .gitignore. type: {string[]}optional |
179
- | `gzip` | `string or false or undefined` | Controls the Gzip compression optimization for files in the source folder. By default, it targets JavaScript (js), ES Module (mjs), and CSS (css) files. You can disable this by setting it to `false` or customize it with a different file matching pattern using glob syntax. type: {string or false}optional |
180
- | `encoding` | `[string, ENCODING_TYPE][] or undefined` | Customizes file encoding mapping for HTTP response headers `Content-Encoding` based on file extension: - `.Z` for compress, - `.gz` for gzip, - `.br` for brotli, - `.zlib` for deflate, - anything else defaults to `identity`. The "encoding" attribute allows overriding default mappings with an array of glob patterns and encoding types. type: {Array<[string, ENCODING_TYPE]>}optional |
181
- | `predeploy` | `string[] or undefined` | Defines a list of scripts or commands to be run before the deployment process begins. This can be useful for tasks such as compiling assets, running tests, or building production-ready files. Example: `json { "predeploy": ["npm run build", "npm run lint"] } ` type: {string[]}optional |
182
- | `postdeploy` | `string[] or undefined` | Defines a list of scripts or commands to be run after the deployment process completes. This can be used for tasks such as notifications, cleanup, or sending confirmation messages to services or team members. Example: `json { "postdeploy": ["./scripts/notify-admins.sh", "echo 'Deployment complete'"] } ` type: {string[]}optional |
499
+ | Property | Type | Description |
500
+ | ------------ | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
501
+ | `source` | `string or undefined` | Specifies the directory from which to deploy to Storage. For instance, if `npm run build` outputs files to a `dist` folder, use `source: 'dist'`. default: 'build'type: {string} |
502
+ | `ignore` | `string[] or undefined` | Specifies files or patterns to ignore during deployment, using glob patterns similar to those in .gitignore. type: {string[]}optional |
503
+ | `gzip` | `string or false or undefined` | Controls the Gzip compression optimization for files in the source folder. By default, it targets JavaScript (js), ES Module (mjs), and CSS (css) files. You can disable this by setting it to `false` or customize it with a different file matching pattern using glob syntax. type: {string or false}optional |
504
+ | `encoding` | `[string, EncodingType][] or undefined` | Customizes file encoding mapping for HTTP response headers `Content-Encoding` based on file extension: - `.Z` for compress, - `.gz` for gzip, - `.br` for brotli, - `.zlib` for deflate, - anything else defaults to `identity`. The "encoding" attribute allows overriding default mappings with an array of glob patterns and encoding types. type: {Array<[string, EncodingType]>}optional |
505
+ | `predeploy` | `string[] or undefined` | Defines a list of scripts or commands to be run before the deployment process begins. This can be useful for tasks such as compiling assets, running tests, or building production-ready files. Example: `json { "predeploy": ["npm run build", "npm run lint"] } ` type: {string[]}optional |
506
+ | `postdeploy` | `string[] or undefined` | Defines a list of scripts or commands to be run after the deployment process completes. This can be used for tasks such as notifications, cleanup, or sending confirmation messages to services or team members. Example: `json { "postdeploy": ["./scripts/notify-admins.sh", "echo 'Deployment complete'"] } ` type: {string[]}optional |
183
507
 
184
508
  #### :gear: SatelliteAssertions
185
509
 
@@ -218,10 +542,9 @@ Configures the behavior of the Datastore.
218
542
 
219
543
  Represents the unique identifier for a satellite.
220
544
 
221
- | Property | Type | Description |
222
- | ------------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
223
- | `id` | `string` | The unique identifier (ID) of the satellite for this application. type: {string} |
224
- | `satelliteId` | `string or undefined` | The deprecated unique identifier (ID) of the satellite. deprecated: `satelliteId` will be removed in the future. Use `id` instead.type: {string} |
545
+ | Property | Type | Description |
546
+ | -------- | -------- | -------------------------------------------------------------------------------- |
547
+ | `id` | `string` | The unique identifier (ID) of the satellite for this application. type: {string} |
225
548
 
226
549
  #### :gear: SatelliteIds
227
550
 
@@ -252,29 +575,29 @@ changes, typically through CLI commands (e.g., `juno config`).
252
575
 
253
576
  Represents the overall configuration for Juno.
254
577
 
255
- | Property | Type | Description |
256
- | ----------- | ----------------- | ------------------------------------------------------------------------- |
257
- | `satellite` | `SatelliteConfig` | The configuration for the satellite. type: {SatelliteConfig} |
258
- | `orbiter` | `undefined` | The optional configuration for the orbiter. type: {OrbiterConfig}optional |
578
+ | Property | Type | Description |
579
+ | ----------- | ----------------------------- | ------------------------------------------------------------------------- |
580
+ | `satellite` | `SatelliteConfig` | The configuration for the satellite. type: {SatelliteConfig} |
581
+ | `orbiter` | `OrbiterConfig or undefined` | The optional configuration for the orbiter. type: {OrbiterConfig}optional |
582
+ | `emulator` | `EmulatorConfig or undefined` | Your options for the emulator. |
259
583
 
260
584
  #### :gear: SatelliteDevCollections
261
585
 
262
586
  Represents the collections configuration for a satellite in a development environment.
263
587
 
264
- | Property | Type | Description |
265
- | ----------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
266
- | `datastore` | `SatelliteDevDataStoreCollection[] or undefined` | The Datastore collections configuration. type: {SatelliteDevDataStoreCollection[]}optional |
267
- | `db` | `SatelliteDevDataStoreCollection[] or undefined` | The Datastore collections configuration. This property is deprecated. Use {@link datastore} instead. deprecatedtype: {SatelliteDevDbCollection[]} |
268
- | `storage` | `SatelliteDevStorageCollection[] or undefined` | The Storage collections configuration. type: {SatelliteDevStorageCollection[]}optional |
588
+ | Property | Type | Description |
589
+ | ----------- | ------------------------------------------------ | ------------------------------------------------------------------------------------------ |
590
+ | `datastore` | `SatelliteDevDataStoreCollection[] or undefined` | The Datastore collections configuration. type: {SatelliteDevDataStoreCollection[]}optional |
591
+ | `storage` | `SatelliteDevStorageCollection[] or undefined` | The Storage collections configuration. type: {SatelliteDevStorageCollection[]}optional |
269
592
 
270
593
  #### :gear: SatelliteDevController
271
594
 
272
595
  Represents a controller configuration for a satellite in a development environment.
273
596
 
274
- | Property | Type | Description |
275
- | -------- | -------------------- | --------------------------------------------------------------------- |
276
- | `id` | `string` | The unique identifier of the controller. type: {string} |
277
- | `scope` | `"write" or "admin"` | The scope of the controller's permissions. type: {'write' or 'admin'} |
597
+ | Property | Type | Description |
598
+ | -------- | -------------------------------- | --------------------------------------------------------------------- |
599
+ | `id` | `string` | The unique identifier of the controller. type: {string} |
600
+ | `scope` | `"admin" or "write" or "submit"` | The scope of the controller's permissions. type: {'write' or 'admin'} |
278
601
 
279
602
  #### :gear: SatelliteDevConfig
280
603
 
@@ -295,33 +618,43 @@ Represents the development configuration for Juno.
295
618
 
296
619
  ### :cocktail: Types
297
620
 
621
+ - [EmulatorConfig](#gear-emulatorconfig)
298
622
  - [JunoConfigMode](#gear-junoconfigmode)
299
623
  - [OrbiterConfig](#gear-orbiterconfig)
300
624
  - [ModuleLogVisibility](#gear-modulelogvisibility)
301
625
  - [StorageConfigSourceGlob](#gear-storageconfigsourceglob)
302
- - [ENCODING_TYPE](#gear-encoding_type)
626
+ - [EncodingType](#gear-encodingtype)
303
627
  - [SatelliteConfig](#gear-satelliteconfig)
304
628
  - [SatelliteDevDataStoreCollection](#gear-satellitedevdatastorecollection)
305
- - [SatelliteDevDbCollection](#gear-satellitedevdbcollection)
306
629
  - [SatelliteDevStorageCollection](#gear-satellitedevstoragecollection)
307
630
  - [JunoDevConfigFn](#gear-junodevconfigfn)
308
631
  - [JunoDevConfigFnOrObject](#gear-junodevconfigfnorobject)
309
632
 
633
+ #### :gear: EmulatorConfig
634
+
635
+ The configuration for running the Juno emulator.
636
+
637
+ | Type | Type |
638
+ | ---------------- | ---- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
639
+ | `EmulatorConfig` | ` | {runner: EmulatorRunner; skylab: EmulatorSkylab} or {runner: EmulatorRunner; console: EmulatorConsole} or {runner: EmulatorRunner; satellite: EmulatorSatellite}` |
640
+
641
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/emulator.config.ts#L163)
642
+
310
643
  #### :gear: JunoConfigMode
311
644
 
312
645
  | Type | Type |
313
646
  | ---------------- | ------------------------ |
314
647
  | `JunoConfigMode` | `'production' or string` |
315
648
 
316
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/juno.env.ts#L5)
649
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/juno.env.ts#L12)
317
650
 
318
651
  #### :gear: OrbiterConfig
319
652
 
320
- | Type | Type |
321
- | --------------- | ------------------------------ |
322
- | `OrbiterConfig` | `Either<OrbiterId, OrbiterId>` |
653
+ | Type | Type |
654
+ | --------------- | ------------------------------- |
655
+ | `OrbiterConfig` | `Either<OrbiterId, OrbiterIds>` |
323
656
 
324
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/orbiter.config.ts#L49)
657
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/orbiter.config.ts#L63)
325
658
 
326
659
  #### :gear: ModuleLogVisibility
327
660
 
@@ -329,7 +662,7 @@ Represents the development configuration for Juno.
329
662
  | --------------------- | --------------------------- |
330
663
  | `ModuleLogVisibility` | `'controllers' or 'public'` |
331
664
 
332
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/module/module.settings.ts#L9)
665
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/module/module.settings.ts#L16)
333
666
 
334
667
  #### :gear: StorageConfigSourceGlob
335
668
 
@@ -337,15 +670,15 @@ Represents the development configuration for Juno.
337
670
  | ------------------------- | ---- |
338
671
  | `StorageConfigSourceGlob` | |
339
672
 
340
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L7)
673
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/shared/storage.config.ts#L13)
341
674
 
342
- #### :gear: ENCODING_TYPE
675
+ #### :gear: EncodingType
343
676
 
344
- | Type | Type |
345
- | --------------- | --------------------------------------------------------- |
346
- | `ENCODING_TYPE` | `'identity' or 'gzip' or 'compress' or 'deflate' or 'br'` |
677
+ | Type | Type |
678
+ | -------------- | --------------------------------------------------------- |
679
+ | `EncodingType` | `'identity' or 'gzip' or 'compress' or 'deflate' or 'br'` |
347
680
 
348
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/encoding.ts#L5)
681
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/types/encoding.ts#L12)
349
682
 
350
683
  #### :gear: SatelliteConfig
351
684
 
@@ -353,7 +686,7 @@ Represents the development configuration for Juno.
353
686
  | ----------------- | ---------------------------------------------------------------------------- |
354
687
  | `SatelliteConfig` | `Either<SatelliteId, SatelliteIds> and CliConfig and SatelliteConfigOptions` |
355
688
 
356
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/satellite.config.ts#L114)
689
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/mainnet/configs/satellite.config.ts#L149)
357
690
 
358
691
  #### :gear: SatelliteDevDataStoreCollection
359
692
 
@@ -361,14 +694,6 @@ Represents the development configuration for Juno.
361
694
  | --------------------------------- | -------------------------------------------------------------------- |
362
695
  | `SatelliteDevDataStoreCollection` | `Omit< Rule, 'createdAt' or 'updatedAt' or 'maxSize' or 'version' >` |
363
696
 
364
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L7)
365
-
366
- #### :gear: SatelliteDevDbCollection
367
-
368
- | Type | Type |
369
- | -------------------------- | --------------------------------- |
370
- | `SatelliteDevDbCollection` | `SatelliteDevDataStoreCollection` |
371
-
372
697
  [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L19)
373
698
 
374
699
  #### :gear: SatelliteDevStorageCollection
@@ -377,7 +702,7 @@ Represents the development configuration for Juno.
377
702
  | ------------------------------- | ------------------------------------------------------------------------ |
378
703
  | `SatelliteDevStorageCollection` | `Omit< Rule, 'createdAt' or 'updatedAt' or 'maxCapacity' or 'version' >` |
379
704
 
380
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L25)
705
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/config/src/satellite/dev/juno.dev.config.ts#L38)
381
706
 
382
707
  #### :gear: JunoDevConfigFn
383
708
 
@@ -1,2 +1,2 @@
1
- var t="@junobuild/satellite",i="@junobuild/sputnik",f="@junobuild/mission-control",r="@junobuild/orbiter";import*as o from"zod";var e=o.record(o.string()),p=o.object({name:o.string(),version:o.string(),dependencies:e.optional()});function C(n){return n}function s(n){return n}function J(n){return n}export{f as JUNO_PACKAGE_MISSION_CONTROL_ID,r as JUNO_PACKAGE_ORBITER_ID,t as JUNO_PACKAGE_SATELLITE_ID,i as JUNO_PACKAGE_SPUTNIK_ID,e as JunoPackageDependenciesSchema,p as JunoPackageSchema,J as defineConfig,C as defineConsoleConfig,s as defineDevConfig};
1
+ function po(u){return u}import{PrincipalTextSchema as v}from"@dfinity/zod-schemas";import*as r from"zod/v4";import*as o from"zod/v4";import*as C from"zod/v4";var x=C.object({heap:C.bigint().optional(),stable:C.bigint().optional()}).strict();var d=o.string(),G=o.object({source:d,headers:o.array(o.tuple([o.string(),o.string()]))}).strict(),N=o.object({source:d,destination:o.string()}).strict(),U=o.object({source:d,location:o.string(),code:o.union([o.literal(301),o.literal(302)])}).strict(),S=o.object({headers:o.array(G).optional(),rewrites:o.array(N).optional(),redirects:o.array(U).optional(),iframe:o.enum(["deny","same-origin","allow-any"]).optional(),rawAccess:o.boolean().optional(),maxMemorySize:x.optional()});import*as t from"zod/v4";import*as h from"zod/v4";var O=h.enum(["identity","gzip","compress","deflate","br"]);var J=t.object({source:t.string().optional(),ignore:t.array(t.string()).optional(),gzip:t.union([t.string(),t.literal(!1)]).optional(),encoding:t.array(t.tuple([t.string(),O])).optional(),predeploy:t.array(t.string()).optional(),postdeploy:t.array(t.string()).optional()}).strict();import*as p from"zod/v4";var g=p.union([p.literal("production"),p.string()]),So=p.object({mode:g});var K=r.object({id:v}),V=r.object({ids:r.record(g,v)}),j=r.object({...J.shape,storage:S.optional()}),Jo=r.union([r.object({...K.shape,...j.shape}).strict(),r.object({...V.shape,...j.shape}).strict()]);import*as a from"zod/v4";var B=a.enum(["controllers","public"]),D=a.strictObject({freezingThreshold:a.bigint().optional(),reservedCyclesLimit:a.bigint().optional(),logVisibility:B.optional(),heapMemoryLimit:a.bigint().optional(),memoryAllocation:a.bigint().optional(),computeAllocation:a.bigint().optional()});import*as s from"zod/v4";var H=s.record(s.string(),s.string()),Do=s.object({name:s.string(),version:s.string(),dependencies:H.optional()});var Mo="@junobuild/satellite",Ao="@junobuild/sputnik",To="@junobuild/mission-control",Po="@junobuild/orbiter";function Fo(u){return u}import{PrincipalTextSchema as Q}from"@dfinity/zod-schemas";import*as i from"zod/v4";import*as n from"zod/v4";var E=n.enum(["public","private","managed","controllers"]),q=n.enum(["heap","stable"]),wo=n.enum(["db","storage"]),z=n.strictObject({collection:n.string(),read:E,write:E,memory:q,createdAt:n.bigint().optional(),updatedAt:n.bigint().optional(),version:n.bigint().optional(),maxSize:n.number().optional(),maxChangesPerUser:n.number().optional(),maxCapacity:n.number().optional(),mutablePermissions:n.boolean(),maxTokens:n.number().optional()});var W=z.omit({createdAt:!0,updatedAt:!0,maxSize:!0,version:!0}),X=z.omit({createdAt:!0,updatedAt:!0,maxCapacity:!0,version:!0}),Y=i.strictObject({datastore:i.array(W).optional(),storage:i.array(X).optional()}),Z=i.strictObject({id:Q,scope:i.enum(["write","admin","submit"])}),$=i.strictObject({collections:Y,controllers:i.array(Z).optional()}),Go=i.strictObject({satellite:$});function Uo(u){return u}import*as l from"zod/v4";var M=l.strictObject({heapMemory:l.union([l.number(),l.boolean()]).optional()});import*as m from"zod/v4";var oo=m.strictObject({derivationOrigin:m.url().optional(),externalAlternativeOrigins:m.array(m.url()).optional()}),A=m.strictObject({internetIdentity:oo.optional()});import*as T from"zod/v4";var P=T.strictObject({maxMemorySize:x.optional()});import*as e from"zod/v4";var y=e.strictObject({server:e.number().optional(),admin:e.number().optional()}),eo=e.strictObject({console:e.number().optional()}),to=e.strictObject({ports:y.extend(eo.shape).optional()}),no=e.strictObject({ports:y.optional()}),io=e.strictObject({ports:y.optional()}),b=e.strictObject({type:e.enum(["docker"]),image:e.string().optional(),name:e.string().optional(),volume:e.string().optional(),target:e.string().optional()}),I=e.union([e.strictObject({runner:b,skylab:to}),e.strictObject({runner:b,console:no}),e.strictObject({runner:b,satellite:io})]);import{PrincipalTextSchema as F}from"@dfinity/zod-schemas";import*as f from"zod/v4";var ro=f.object({id:F}),ao=f.object({ids:f.record(g,F)}),R=f.union([ro.strict(),ao.strict()]);import{PrincipalTextSchema as _}from"@dfinity/zod-schemas";import*as c from"zod/v4";var co=c.object({id:_}),so=c.object({ids:c.record(g,_)}),w=c.object({storage:S.optional(),datastore:P.optional(),authentication:A.optional(),assertions:M.optional(),settings:D.optional()}),k=c.union([c.object({...co.shape,...w.shape}).strict(),c.object({...so.shape,...w.shape}).strict()]);import*as L from"zod/v4";var pe=L.strictObject({satellite:k,orbiter:R.optional(),emulator:I.optional()});export{oo as AuthenticationConfigInternetIdentitySchema,A as AuthenticationConfigSchema,J as CliConfigSchema,K as ConsoleIdSchema,V as ConsoleIdsSchema,P as DatastoreConfigSchema,I as EmulatorConfigSchema,O as EncodingTypeSchema,To as JUNO_PACKAGE_MISSION_CONTROL_ID,Po as JUNO_PACKAGE_ORBITER_ID,Mo as JUNO_PACKAGE_SATELLITE_ID,Ao as JUNO_PACKAGE_SPUTNIK_ID,So as JunoConfigEnvSchema,g as JunoConfigModeSchema,pe as JunoConfigSchema,Jo as JunoConsoleConfigSchema,Go as JunoDevConfigSchema,H as JunoPackageDependenciesSchema,Do as JunoPackageSchema,x as MaxMemorySizeConfigSchema,q as MemoryTextSchema,B as ModuleLogVisibilitySchema,D as ModuleSettingsSchema,R as OrbiterConfigSchema,ro as OrbiterIdSchema,ao as OrbiterIdsSchema,E as PermissionTextSchema,z as RuleSchema,wo as RulesTypeSchema,M as SatelliteAssertionsSchema,k as SatelliteConfigOptionsSchema,Y as SatelliteDevCollectionsSchema,$ as SatelliteDevConfigSchema,Z as SatelliteDevControllerSchema,W as SatelliteDevDataStoreCollectionSchema,X as SatelliteDevStorageCollectionSchema,co as SatelliteIdSchema,so as SatelliteIdsSchema,G as StorageConfigHeaderSchema,U as StorageConfigRedirectSchema,N as StorageConfigRewriteSchema,S as StorageConfigSchema,d as StorageConfigSourceGlobSchema,Uo as defineConfig,po as defineConsoleConfig,Fo as defineDevConfig};
2
2
  //# sourceMappingURL=index.js.map