@xo-cash/types 0.0.1-development.13730885533 → 0.0.1-development.13987793009

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.mts CHANGED
@@ -185,417 +185,422 @@ type XOInvitation = {
185
185
  */
186
186
  type Satoshis = bigint;
187
187
  /**
188
- * View properties for template elements.
188
+ * A fungible token amount.
189
+ */
190
+ type FungibleTokenAmount = bigint;
191
+ /**
192
+ * The set of BCH VM versions that an XO template can declare support for.
193
+ */
194
+ type BchVmVersion = 'BCH_2020_05' | 'BCH_2021_05' | 'BCH_2022_05' | 'BCH_2023_05' | 'BCH_2024_05' | 'BCH_2025_05' | 'BCH_2026_05';
195
+ /**
196
+ * The capability of a non-fungible token.
197
+ * - `minting` — can create new NFTs of the same category.
198
+ * - `mutable` — can update its own commitment data.
199
+ * - `none` — commitment is immutable.
200
+ */
201
+ type XOTemplateNftCapability = 'minting' | 'mutable' | 'none';
202
+ /**
203
+ * The standard locking script types supported on BCH and by XO.
204
+ */
205
+ type XOTemplateLockingType = 'p2s' | 'p2pkh' | 'p2sh';
206
+ /**
207
+ * The primitive types that can be declared in an XO template.
208
+ * Used by constants, variables, and data fields.
209
+ */
210
+ type XOTemplatePrimitiveType = 'boolean' | 'bytes' | 'integer' | 'bigint' | 'string' | 'private_key' | 'public_key';
211
+ /** Identifies a role defined in the template's roles. */
212
+ type XOTemplateRoleIdentifier = string;
213
+ /** Identifies an action defined in the template's actions. */
214
+ type XOTemplateActionIdentifier = string;
215
+ /** Identifies an input defined in the template's inputs. */
216
+ type XOTemplateInputIdentifier = string;
217
+ /** Identifies an output defined in the template's outputs. */
218
+ type XOTemplateOutputIdentifier = string;
219
+ /** Identifies a locking script defined in the template's lockingScripts. */
220
+ type XOTemplateLockingScriptIdentifier = string;
221
+ /** Identifies a script defined in the template's scripts. */
222
+ type XOTemplateScriptIdentifier = string;
223
+ /** Identifies a transaction defined in the template's transactions. */
224
+ type XOTemplateTransactionIdentifier = string;
225
+ /** Identifies a variable defined in the template's variables. */
226
+ type XOTemplateVariableIdentifier = string;
227
+ /** Identifies a constant defined in the template's constants. */
228
+ type XOTemplateConstantIdentifier = string;
229
+ /** Identifies a data field defined in the template's data. */
230
+ type XOTemplateDataIdentifier = string;
231
+ /** Identifies a secret defined in a role or action's secrets list. */
232
+ type XOTemplateSecretIdentifier = string;
233
+ /**
234
+ * Human-readable display properties shared by most template elements.
189
235
  */
190
236
  type XOTemplateViewProperties = {
191
237
  /**
192
- * A name for this item.
238
+ * A short human-readable label for this element.
193
239
  */
194
240
  name: string;
195
241
  /**
196
- * A description for this item.
242
+ * A human-readable explanation of what this element does and when it is relevant.
197
243
  */
198
244
  description: string;
199
245
  /**
200
- * An icon for this item.
246
+ * An optional icon identifier.
201
247
  */
202
248
  icon?: string;
203
249
  };
204
250
  /**
205
- * Slot configuration for a role requirement.
251
+ * The base intent structure. Describes the common data parameters shared by all intent types
252
+ * regardless of what they target. An optional templateIdentifier allows the intent to reference
253
+ * a target defined in a different template.
206
254
  */
207
- type XOTemplateRoleSlots = {
255
+ type XOTemplateIntent = {
208
256
  /**
209
- * Minimum number of slots required for this role.
257
+ * Optional identifier for the template used in this intent. If not provided, uses the current template.
210
258
  */
211
- min: number;
259
+ templateIdentifier?: string;
212
260
  /**
213
- * Maximum number of slots allowed for this role (undefined means unlimited).
261
+ * Identifiers for items to generate when this intent is resolved (e.g. keys or secrets).
214
262
  */
215
- max: number | undefined;
216
- };
217
- /**
218
- * Generic data used in requirements, intents and state.
219
- */
220
- type XOTemplateVariablesAndSecrets = {
263
+ generate?: Array<string>;
221
264
  /**
222
- * List of identifiers and their data as public variables.
265
+ * Variable values to apply when this intent is resolved.
223
266
  */
224
- variables?: string[];
267
+ variables?: Array<Record<XOTemplateVariableIdentifier, unknown>>;
225
268
  /**
226
- * List of identifiers and their data as private secrets.
269
+ * Constant values to apply when this intent is resolved.
227
270
  */
228
- secrets?: string[];
229
- };
230
- /**
231
- * Specific data used to set up intents.
232
- */
233
- type XOTemplateIntentParameters = XOTemplateVariablesAndSecrets & {
271
+ constants?: Array<Record<XOTemplateConstantIdentifier, unknown>>;
272
+ /**
273
+ * Secret values to apply when this intent is resolved.
274
+ */
275
+ secrets?: Array<Record<XOTemplateSecretIdentifier, unknown>>;
234
276
  /**
235
- * List of identifiers to generate data for (e.g., keys, secrets).
277
+ * Optional identifier for the role used in this intent.
236
278
  */
237
- generate?: string[];
279
+ role?: XOTemplateRoleIdentifier;
238
280
  };
239
281
  /**
240
- * Parameters defining an intent to take an action.
282
+ * An intent that targets a specific action.
241
283
  */
242
- type XOTemplateActionIntent = XOTemplateIntentParameters & {
284
+ type XOTemplateActionIntent = XOTemplateIntent & {
243
285
  /**
244
286
  * The identifier for the intended action.
245
287
  */
246
- action: string;
247
- /**
248
- * The identifier for the intended role.
249
- */
250
- role: string;
288
+ action: XOTemplateActionIdentifier;
251
289
  };
252
290
  /**
253
- * Parameters defining an intent to take make an output.
291
+ * An intent that targets a specific output.
254
292
  */
255
- type XOTemplateOutputIntent = XOTemplateIntentParameters & {
293
+ type XOTemplateOutputIntent = XOTemplateIntent & {
256
294
  /**
257
295
  * The identifier for the intended output.
258
296
  */
259
- output: string;
297
+ output: XOTemplateOutputIdentifier;
298
+ };
299
+ /**
300
+ * An intent that targets a specific locking script.
301
+ */
302
+ type XOTemplateLockingScriptIntent = XOTemplateIntent & {
260
303
  /**
261
- * The identifier for the intended role.
304
+ * The identifier for the intended locking script.
262
305
  */
263
- role: string;
306
+ lockingScript: XOTemplateLockingScriptIdentifier;
264
307
  };
265
308
  /**
266
- * Requirements for a specific role within an action.
309
+ * Requirements for a specific role within an action. Describes what data or secrets
310
+ * the role must provide when participating.
267
311
  */
268
312
  type XOTemplateActionRoleRequirements = {
269
313
  /**
270
314
  * List of variable identifiers required for this role.
271
315
  */
272
- variables?: string[];
316
+ variables?: Array<XOTemplateVariableIdentifier>;
273
317
  /**
274
318
  * List of secret identifiers required for this role.
275
319
  */
276
- secrets?: string[];
277
- /**
278
- * List of state identifiers required for this role.
279
- */
280
- state?: string[];
281
- /**
282
- * Slot configuration for this role.
283
- */
284
- slots?: XOTemplateRoleSlots;
320
+ secrets?: Array<XOTemplateSecretIdentifier>;
285
321
  };
286
322
  /**
287
- * A role-specific definition within an action.
323
+ * A role specific definition within an action.
288
324
  */
289
325
  type XOTemplateActionRole = Partial<XOTemplateViewProperties> & {
290
326
  /**
291
- * The requirements for this role for this action.
327
+ * Identifiers for data items that should be generated for this role
328
+ * when participating in the action.
329
+ */
330
+ generate?: Array<string>;
331
+ /**
332
+ * The requirements for this role within this action.
292
333
  */
293
334
  requirements?: XOTemplateActionRoleRequirements;
294
335
  };
295
336
  /**
296
- * A role requirement entry in an action's requirements.
337
+ * Slot configuration for a role. Declares how many participants of a given
338
+ * role are needed to satisfy the action's requirements.
297
339
  */
298
- type XOTemplateActionRoleRequirement = {
340
+ type XOTemplateRoleSlotsRequirements = {
299
341
  /**
300
- * The role identifier that this requirement applies to.
342
+ * Minimum number of participants required for this role.
301
343
  */
302
- role: string;
303
- /**
304
- * Slot configuration for this role.
305
- */
306
- slots: XOTemplateRoleSlots;
307
- /**
308
- * Optional list of variable identifiers required for this role.
309
- */
310
- variables?: string[];
344
+ min: number;
311
345
  /**
312
- * Optional list of state identifiers required for this role.
346
+ * Maximum number of participants allowed for this role. Undefined means unlimited.
313
347
  */
314
- state?: string[];
348
+ max?: number;
315
349
  };
316
350
  /**
317
- * Balance configuration for a locking script role.
351
+ * A role entry in an action's requirements block.
352
+ * Declares which role must participate and how many slots are needed.
318
353
  */
319
- type XOTemplateBalance = {
354
+ type XOTemplateRoleSlot = {
320
355
  /**
321
- * Whether satoshis should be included in balance.
322
- * - `boolean`: Whether satoshis should be included in the balance.
323
- * - `Satoshis`: A specific amount of satoshis to include in the balance.
324
- * - `string`: A CashASM evaluation expression that resolves to a satoshi amount.
356
+ * The role identifier that this requirement applies to.
325
357
  */
326
- satoshis: boolean | Satoshis | string;
358
+ role: XOTemplateRoleIdentifier;
327
359
  /**
328
- * Whether fungible tokens should be included in balance (boolean or number).
360
+ * Slot configuration specifying how many participants of this role are required.
329
361
  */
330
- fungibleTokens: boolean | number;
362
+ slots: XOTemplateRoleSlotsRequirements;
331
363
  };
332
364
  /**
333
- * A constant value definition in the template.
365
+ * Requirements for an action. Declares which roles must participate and what secrets must be available.
334
366
  */
335
- type XOTemplateConstant = XOTemplateViewProperties & {
367
+ type XOTemplateActionRequirements = {
336
368
  /**
337
- * The type of this constant.
369
+ * The participants required for this action.
338
370
  */
339
- type: string;
371
+ participants?: Array<XOTemplateRoleSlot>;
340
372
  /**
341
- * The value of this constant.
373
+ * The secrets required for this action.
342
374
  */
343
- value?: unknown;
375
+ secrets?: Array<XOTemplateSecretIdentifier>;
344
376
  };
345
377
  /**
346
- * A data field definition in the template.
378
+ * An action within a template.
347
379
  */
348
- type XOTemplateData = {
380
+ type XOTemplateAction = XOTemplateViewProperties & {
349
381
  /**
350
- * The value for this data field.
382
+ * Specific context for each role participating in this action.
351
383
  */
352
- value: string;
384
+ roles?: Record<XOTemplateRoleIdentifier, XOTemplateActionRole>;
353
385
  /**
354
- * The type of this data field.
386
+ * The requirements for this action.
355
387
  */
356
- type: string;
388
+ requirements?: XOTemplateActionRequirements;
357
389
  /**
358
- * An optional hint to help apps and users understand this data field.
390
+ * Conditions that must be met for this action to be available.
391
+ *
392
+ * @todo More work needs to be done on this field.
359
393
  */
360
- hint?: string;
361
- };
362
- /**
363
- * An icon reference in the template.
364
- */
365
- type XOTemplateIcon = {
394
+ conditions?: Array<string>;
366
395
  /**
367
- * A name for this icon.
396
+ * The identifier of the transaction this action produces, referencing an entry
397
+ * in the template's transactions.
368
398
  */
369
- name: string;
399
+ transaction?: XOTemplateTransactionIdentifier;
370
400
  /**
371
- * The identifier of the icon resource.
401
+ * The identifier of the data field this action produces, referencing an entry
402
+ * in the template's data.
403
+ *
404
+ * @todo More work needs to be done on this field.
372
405
  */
373
- hash: string;
406
+ data?: XOTemplateDataIdentifier;
374
407
  };
375
408
  /**
376
- * Change automation configuration for inputs.
409
+ * Non-fungible token configuration within a token field.
377
410
  */
378
- type XOTemplateOmitChangeAmounts = {
379
- /**
380
- * The amount of satoshis to omit from the change.
381
- * - `Satoshis`: A specific amount of satoshis to omit.
382
- * - `string`: A CashASM evaluation expression that resolves to the amount of satoshis to omit.
383
- */
384
- satoshis?: Satoshis | string;
411
+ type XOTemplateNonFungibleTokenDetails = {
385
412
  /**
386
- * The amount of fungible tokens to omit from the change.
413
+ * The capability of the NFT. May be a known capability value or a CashASM expression resolving to a capability.
387
414
  */
388
- fungibleTokens?: number | string;
415
+ capability?: XOTemplateNftCapability | string;
389
416
  /**
390
- * The amount of non-fungible tokens to omit from the change.
417
+ * The commitment data for the NFT, as a string or CashASM expression resolving to a commitment.
391
418
  */
392
- nonfungibleTokens?: number | string;
419
+ commitment?: string;
393
420
  };
394
421
  /**
395
422
  * Token configuration for outputs and inputs.
396
423
  */
397
424
  type XOTemplateToken = {
398
425
  /**
399
- * The category of the token.
400
- */
401
- category: string;
402
- /**
403
- * The amount of fungible tokens.
404
- */
405
- amount?: string | number | null;
406
- /**
407
- * The configuration for the non-fungible token.
408
- */
409
- nft?: {
410
- /**
411
- * The capability of the NFT.
412
- */
413
- capability: string;
414
- /**
415
- * The commitment data for the NFT.
416
- */
417
- commitment: string;
418
- } | null;
419
- };
420
- /**
421
- * An input definition in the template.
422
- */
423
- type XOTemplateInput = XOTemplateViewProperties & {
424
- /**
425
- * The amount of satoshis for this input.
426
- * - `Satoshis`: A specific amount of satoshis.
427
- * - `string`: A CashASM evaluation expression that resolves to the satoshi amount.
428
- */
429
- valueSatoshis?: Satoshis | string;
430
- /**
431
- * Token configuration for this input.
432
- */
433
- token?: XOTemplateToken | null;
434
- /**
435
- * The outpoint index of this input in the transaction.
436
- */
437
- outpointIndex?: number;
438
- /**
439
- * The outpoint transaction hash of this input in the transaction.
440
- */
441
- outpointTransactionHash?: string;
442
- /**
443
- * The sequence number of this input.
426
+ * The category of the token, as a string or CashASM expression resolving to a category.
444
427
  */
445
- sequenceNumber?: number;
428
+ category?: string;
446
429
  /**
447
- * The unlocking script for this input.
430
+ * The amount of fungible tokens as a bigint, a CashASM expression resolving to a bigint, or null indicating no FT is present.
448
431
  */
449
- unlockingScript?: string;
432
+ amount?: bigint | string | null;
450
433
  /**
451
- * Omit amount change configuration for this input.
434
+ * Non-fungible token configuration. Null indicates no NFT is present.
452
435
  */
453
- omitChangeAmounts?: XOTemplateOmitChangeAmounts;
436
+ nft?: XOTemplateNonFungibleTokenDetails | null;
454
437
  };
455
438
  /**
456
- * An action reference within a role.
439
+ * Asset amounts configuration. Used for balance tracking on locking scripts and their roles, and for omitting change amounts.
440
+ * All fields are optional. Values may be literal amounts or CashASM expressions resolving to amounts.
457
441
  */
458
- type XOTemplateLockingScriptRoleAction = {
442
+ type XOTemplateAssetAmounts = {
459
443
  /**
460
- * The action.
444
+ * The satoshi amount.
445
+ * - `Satoshis`: A specific bigint amount.
446
+ * - `string`: A CashASM expression that resolves to the amount.
447
+ * - `true`: all, i.e. the entire amount
461
448
  */
462
- action: string;
449
+ satoshis?: Satoshis | string | true;
463
450
  /**
464
- * The role identifier for this action.
451
+ * The fungible token amount.
452
+ * - `FungibleTokenAmount`: A specific bigint amount.
453
+ * - `string`: A CashASM expression that resolves to the amount.
454
+ * - `true`: all, i.e. the entire amount
465
455
  */
466
- role: string;
456
+ fungibleTokens?: FungibleTokenAmount | string | true;
467
457
  /**
468
- * The secret identifier required for this action.
458
+ * Whether a non-fungible token is present (0 for absent, 1 for present),
459
+ * or a CashASM expression that evaluates to 0 or 1.
460
+ * - `true`: resolves to 1 if an NFT is present, or 0 if none is present. Use this when
461
+ * the NFT is optional, to express that the NFT is estimated to be part of the balance
462
+ * if present, or absent from it if not.
463
+ * - `0`: None, i.e. nothing is expected to be included
464
+ * - `1`: present and complete, as value > 1 does not make sense for non-fungible tokens
465
+ * - `string`: A CashASM expression that evaluates to 0 or 1.
469
466
  */
470
- secrets?: string | string[];
467
+ nonfungibleTokens?: true | 0 | 1 | string;
471
468
  };
472
469
  /**
473
- * State configuration for a locking script role.
470
+ * State configuration shared by a locking script and its individual roles.
471
+ * Declares which variables and secrets are tracked in the on-chain state for that participant.
474
472
  */
475
- type XOTemplateLockingScriptRoleState = {
473
+ type XOTemplateState = {
476
474
  /**
477
- * List of variable identifiers required for this role.
475
+ * List of variable identifiers to track in state.
478
476
  */
479
- variables?: string[];
477
+ variables?: Array<XOTemplateVariableIdentifier>;
480
478
  /**
481
- * List of secret identifiers required for this role.
479
+ * List of secret identifiers to track in state.
482
480
  */
483
- secrets?: string[];
481
+ secrets?: Array<XOTemplateSecretIdentifier>;
484
482
  };
485
483
  /**
486
484
  * A role definition within a locking script.
487
485
  */
488
- type XOTemplateLockingScriptRole = {
486
+ type XOTemplateLockingScriptRole = Partial<XOTemplateViewProperties> & {
489
487
  /**
490
- * State configuration for this role.
488
+ * List of items to track as state for this role.
491
489
  */
492
- state?: XOTemplateLockingScriptRoleState;
490
+ state?: XOTemplateState;
493
491
  /**
494
492
  * List of action references available to this role.
495
493
  */
496
- actions?: XOTemplateLockingScriptRoleAction[];
494
+ actions?: Array<XOTemplateActionIntent>;
497
495
  /**
498
- * Balance configuration for this role.
496
+ * Estimated ownership in the optional set of asset amounts specified.
499
497
  */
500
- balance?: XOTemplateBalance;
498
+ balance?: Partial<XOTemplateAssetAmounts>;
501
499
  /**
502
- * Whether outputs locked to this script should be selectable for coin selection.
500
+ * Whether outputs locked to this script should be available for coin selection.
503
501
  */
504
502
  selectable?: boolean;
505
503
  /**
506
- * Whether outputs locked to this script are considered private.
504
+ * Privacy level for outputs locked to this script.
505
+ * - `number`: A numeric privacy level.
506
+ * - `string`: A CashASM expression that evaluates to a privacy level.
507
507
  */
508
- privacy?: boolean;
508
+ privacy?: number | string;
509
509
  };
510
510
  /**
511
511
  * A locking script definition in the template.
512
512
  */
513
513
  type XOTemplateLockingScript = XOTemplateViewProperties & {
514
514
  /**
515
- * The type of locking mechanism.
515
+ * The type of locking mechanism. Defaults to 'p2s' if not specified.
516
516
  */
517
- lockingType?: string;
517
+ lockingType?: XOTemplateLockingType;
518
518
  /**
519
- * The locking script.
519
+ * The locking script bytecode.
520
520
  */
521
- lockingScript?: string;
521
+ lockingBytecode: string;
522
522
  /**
523
- * The unlocking script.
523
+ * Optional default unlocking bytecode when used in automatic coin selection.
524
524
  */
525
- unlockingScript?: string;
525
+ unlockingBytecode?: string;
526
526
  /**
527
527
  * The actions available for this locking script.
528
528
  */
529
- actions?: string[];
530
- /**
531
- * The state for this locking script.
532
- */
533
- state?: string[];
529
+ actions?: Array<XOTemplateActionIntent>;
534
530
  /**
535
- * The secrets for this locking script.
531
+ * List of items to track as state for all participants.
536
532
  */
537
- secrets?: string[];
533
+ state?: XOTemplateState;
538
534
  /**
539
- * Whether outputs locked to this script should be included in the balance.
535
+ * Estimated ownership in the optional set of asset amounts specified.
540
536
  */
541
- balance?: boolean;
537
+ balance?: Partial<XOTemplateAssetAmounts>;
542
538
  /**
543
- * Whether outputs locked to this script should be selectable.
539
+ * Whether outputs locked to this script should be available for coin selection.
544
540
  */
545
541
  selectable?: boolean;
546
542
  /**
547
- * Whether outputs locked to this script are considered private.
543
+ * Privacy level for outputs locked to this script.
544
+ * - `number`: A numeric privacy level.
545
+ * - `string`: A CashASM expression that evaluates to a privacy level.
548
546
  */
549
- privacy?: boolean;
547
+ privacy?: number | string;
550
548
  /**
551
- * A map of roles defined for this locking script.
549
+ * Specific context for each role participating in this locking script.
552
550
  */
553
- roles?: {
554
- [roleId: string]: XOTemplateLockingScriptRole;
555
- };
551
+ roles?: Record<XOTemplateRoleIdentifier, XOTemplateLockingScriptRole>;
556
552
  };
557
553
  /**
558
- * Role-specific view properties for an output.
559
- */
560
- type XOTemplateOutputRole = Partial<XOTemplateViewProperties>;
561
- /**
562
- * An output definition in the template.
554
+ * An input definition in the template.
563
555
  */
564
- type XOTemplateOutput = XOTemplateViewProperties & {
556
+ type XOTemplateInput = XOTemplateViewProperties & {
557
+ /**
558
+ * The amount of satoshis for this input.
559
+ * - `Satoshis`: A specific amount of satoshis.
560
+ * - `string`: A CashASM expression that resolves to the satoshi amount.
561
+ */
562
+ valueSatoshis?: Satoshis | string;
565
563
  /**
566
- * The outpoint index of this output in the transaction.
564
+ * Token configuration for this input.
567
565
  */
568
- outpointIndex?: number;
566
+ token?: XOTemplateToken | null;
569
567
  /**
570
- * The locking script for this output.
568
+ * The sequence number of this input.
569
+ * - `number`: A specific sequence number.
570
+ * - `string`: A CashASM expression that resolves to the sequence number.
571
571
  */
572
- lockscript?: string;
572
+ sequenceNumber?: number | string;
573
+ /**
574
+ * Identifier of the unlocking script to use for the UTXO provided for this input.
575
+ */
576
+ unlockingScript?: string;
577
+ /**
578
+ * Amount of change that should be omitted from the automatic change handling. WARNING: Setting this can result in loss of funds!
579
+ */
580
+ omitChangeAmounts?: XOTemplateAssetAmounts;
581
+ };
582
+ /**
583
+ * An output definition in the template. Inherits all fields from `XOTemplateLockingScript`
584
+ * except `lockingType`, `lockingBytecode` and `unlockingBytecode`: outputs reference a locking script by identifier
585
+ * rather than defining one inline, so repeating any of these fields here would create an ambiguity
586
+ * about which declaration takes precedence.
587
+ */
588
+ type XOTemplateOutput = Omit<XOTemplateLockingScript, 'lockingType' | 'lockingBytecode' | 'unlockingBytecode'> & {
589
+ /**
590
+ * Identifier of the locking script to use for this output.
591
+ */
592
+ lockingScript: XOTemplateLockingScriptIdentifier;
573
593
  /**
574
594
  * The amount of satoshis for this output.
575
595
  * - `Satoshis`: A specific amount of satoshis.
576
- * - `string`: A CashASM evaluation expression that resolves to the satoshi amount.
596
+ * - `string`: A CashASM expression that resolves to the satoshi amount.
577
597
  */
578
598
  valueSatoshis?: Satoshis | string;
579
599
  /**
580
600
  * Token configuration for this output.
581
601
  */
582
602
  token?: XOTemplateToken | null;
583
- /**
584
- * Role-specific view properties for this output. When a participant's role is known,
585
- * these override the generic name, description, and icon.
586
- */
587
- roles?: {
588
- [roleId: string]: XOTemplateOutputRole;
589
- };
590
603
  };
591
- /**
592
- * A role definition within a template.
593
- */
594
- type XOTemplateRoleDescription = XOTemplateViewProperties;
595
- /**
596
- * A list of starting actions defined in a template.
597
- */
598
- type XOTemplateStartingActionIntents = XOTemplateActionIntent[];
599
604
  /**
600
605
  * Reference to an input in a transaction definition in the template.
601
606
  */
@@ -603,11 +608,11 @@ type XOTemplateTransactionInput = {
603
608
  /**
604
609
  * The input definition identifier.
605
610
  */
606
- input: string;
611
+ input: XOTemplateInputIdentifier;
607
612
  /**
608
613
  * Optional index of this input in the transaction.
609
614
  */
610
- index?: number;
615
+ inputIndex?: number;
611
616
  };
612
617
  /**
613
618
  * Reference to an output in a transaction definition in the template.
@@ -616,11 +621,11 @@ type XOTemplateTransactionOutput = {
616
621
  /**
617
622
  * The output definition identifier.
618
623
  */
619
- output: string;
624
+ output: XOTemplateOutputIdentifier;
620
625
  /**
621
626
  * Optional index of this output in the transaction.
622
627
  */
623
- index?: number;
628
+ outputIndex?: number;
624
629
  };
625
630
  /**
626
631
  * Role-specific data for a transaction within a template.
@@ -629,11 +634,11 @@ type XOTemplateTransactionRoleData = Partial<XOTemplateViewProperties> & {
629
634
  /**
630
635
  * The inputs required for this role.
631
636
  */
632
- inputs?: string[];
637
+ inputs?: Array<XOTemplateTransactionInput>;
633
638
  /**
634
639
  * The outputs required for this role.
635
640
  */
636
- outputs?: string[];
641
+ outputs?: Array<XOTemplateTransactionOutput>;
637
642
  };
638
643
  /**
639
644
  * A transaction template definition.
@@ -648,22 +653,45 @@ type XOTemplateTransaction = XOTemplateViewProperties & {
648
653
  */
649
654
  locktime?: number;
650
655
  /**
651
- * The inputs for this transaction
656
+ * The inputs for this transaction.
652
657
  */
653
- inputs?: XOTemplateTransactionInput[];
658
+ inputs: Array<XOTemplateTransactionInput>;
654
659
  /**
655
- * The outputs for this transaction
660
+ * The outputs for this transaction.
656
661
  */
657
- outputs?: XOTemplateTransactionOutput[];
662
+ outputs: Array<XOTemplateTransactionOutput>;
658
663
  /**
659
- * The roles required for this transaction.
664
+ * Specific context for each role participating in this transaction.
660
665
  */
661
- roles?: Record<string, XOTemplateTransactionRoleData>;
666
+ roles?: Record<XOTemplateRoleIdentifier, XOTemplateTransactionRoleData>;
662
667
  /**
663
668
  * Whether this transaction can be composed with other transactions.
664
669
  */
665
670
  composable?: boolean;
666
671
  };
672
+ /**
673
+ * A constant value definition in the template.
674
+ */
675
+ type XOTemplateConstant = XOTemplateViewProperties & {
676
+ /**
677
+ * The data type of this constant.
678
+ */
679
+ type: XOTemplatePrimitiveType;
680
+ /**
681
+ * The value of this constant.
682
+ */
683
+ value: unknown;
684
+ /**
685
+ * An optional hint to help apps and users understand what this constant represents.
686
+ */
687
+ hint?: string;
688
+ };
689
+ /**
690
+ * An import default value intent. Extends the base intent with optional view
691
+ * properties that the engine evaluates at runtime to produce human-readable output.
692
+ * The engine overrides whatever values are set here when resolving the target for a participant.
693
+ */
694
+ type XOTemplateImportDefaultValue = XOTemplateIntent & Partial<XOTemplateViewProperties>;
667
695
  /**
668
696
  * A variable definition in the template.
669
697
  */
@@ -671,44 +699,68 @@ type XOTemplateVariable = XOTemplateViewProperties & {
671
699
  /**
672
700
  * The data type of this variable.
673
701
  */
674
- type?: string;
702
+ type?: XOTemplatePrimitiveType;
675
703
  /**
676
704
  * A hint to help users understand what value to provide.
677
705
  */
678
706
  hint?: string;
707
+ /**
708
+ * A neutral intent that the engine uses to populate the default value for this variable.
709
+ * View properties (name, description, icon) may contain CashASM expressions that the
710
+ * engine evaluates at runtime to produce human-readable output.
711
+ */
712
+ importDefaultValue?: XOTemplateImportDefaultValue;
679
713
  };
680
714
  /**
681
- * An action within a template.
715
+ * A data field definition in the template.
716
+ *
717
+ * @todo More work needs to be done on this type.
682
718
  */
683
- type XOTemplateAction = XOTemplateViewProperties & {
719
+ type XOTemplateData = {
684
720
  /**
685
- * The roles for this action.
721
+ * The data type of this data field.
686
722
  */
687
- roles?: {
688
- [roleId: string]: XOTemplateActionRole;
689
- };
723
+ type: XOTemplatePrimitiveType;
690
724
  /**
691
- * The requirements for this action.
725
+ * The value for this data field.
692
726
  */
693
- requirements?: {
694
- roles?: XOTemplateActionRoleRequirement[];
695
- variables?: string[];
696
- state?: string[];
697
- secrets?: string[];
698
- };
727
+ value: unknown;
728
+ /**
729
+ * An optional hint to help apps and users understand this data field.
730
+ */
731
+ hint?: string;
732
+ };
733
+ /**
734
+ * An icon reference in the template.
735
+ */
736
+ type XOTemplateIcon = {
737
+ /**
738
+ * A name for this icon.
739
+ */
740
+ name: string;
699
741
  /**
700
- * Optional condition script that must evaluate to true for this action
701
- * to be available.
742
+ * The identifier of the icon.
702
743
  */
703
- condition?: string;
744
+ hash: string;
745
+ };
746
+ /**
747
+ * A resource reference attached to a template. Extends view properties with a URL
748
+ * pointing to external documentation or tooling.
749
+ */
750
+ type XOTemplateResource = XOTemplateViewProperties & {
704
751
  /**
705
- * The transaction that this action may create.
752
+ * The URL for this resource.
706
753
  */
707
- transaction?: string;
754
+ url: string;
755
+ };
756
+ /**
757
+ * Default settings applied across the template when no explicit per-action overrides are given.
758
+ */
759
+ type XOTemplateDefaults = {
708
760
  /**
709
- * The data that this action may use or modify.
761
+ * Instructions for how to construct automated change output.
710
762
  */
711
- data?: string[];
763
+ change?: XOTemplateOutputIntent;
712
764
  };
713
765
  /**
714
766
  * The XO Template.
@@ -720,92 +772,75 @@ type XOTemplate = XOTemplateViewProperties & {
720
772
  */
721
773
  $schema: string;
722
774
  /**
723
- * A number identifying the format version of this template.
775
+ * A string identifying the version of this template.
724
776
  */
725
- version?: number;
777
+ version?: string;
726
778
  /**
727
- * The supported authentication virtual machine versions or network identifiers for this template.
779
+ * The BCH VM versions that this template supports. At least one version is required.
728
780
  */
729
- supported?: string[];
781
+ supported: Array<BchVmVersion>;
730
782
  /**
731
783
  * Optional default settings used in this template.
732
784
  */
733
- defaults?: {
734
- change?: XOTemplateOutputIntent;
735
- };
785
+ defaults?: XOTemplateDefaults;
736
786
  /**
737
787
  * The roles defined in this template.
738
788
  */
739
- roles?: {
740
- [roleId: string]: XOTemplateRoleDescription;
741
- };
789
+ roles: Record<XOTemplateRoleIdentifier, XOTemplateViewProperties>;
742
790
  /**
743
- * A list of entry points defining which actions are available to each role at the start.
791
+ * A list of entry points defining which actions are available at the start.
744
792
  */
745
- start: XOTemplateStartingActionIntents;
793
+ start: Array<XOTemplateActionIntent>;
746
794
  /**
747
795
  * The actions defined in this template.
748
796
  */
749
- actions: {
750
- [actionId: string]: XOTemplateAction;
751
- };
797
+ actions: Record<XOTemplateActionIdentifier, XOTemplateAction>;
752
798
  /**
753
799
  * The data fields defined in this template.
754
800
  */
755
- data?: {
756
- [dataId: string]: XOTemplateData;
757
- };
801
+ data?: Record<XOTemplateDataIdentifier, XOTemplateData>;
758
802
  /**
759
803
  * The transaction templates defined in this template.
760
804
  */
761
- transactions?: {
762
- [transactionId: string]: XOTemplateTransaction;
763
- };
805
+ transactions?: Record<XOTemplateTransactionIdentifier, XOTemplateTransaction>;
764
806
  /**
765
807
  * The inputs defined in this template.
766
808
  */
767
- inputs: {
768
- [inputId: string]: XOTemplateInput;
769
- };
809
+ inputs: Record<XOTemplateInputIdentifier, XOTemplateInput>;
770
810
  /**
771
811
  * The outputs defined in this template.
772
812
  */
773
- outputs: {
774
- [outputId: string]: XOTemplateOutput;
775
- };
813
+ outputs: Record<XOTemplateOutputIdentifier, XOTemplateOutput>;
776
814
  /**
777
815
  * The locking script templates defined in this template.
778
816
  */
779
- lockingScripts: {
780
- [scriptId: string]: XOTemplateLockingScript;
781
- };
817
+ lockingScripts: Record<XOTemplateLockingScriptIdentifier, XOTemplateLockingScript>;
782
818
  /**
783
- * The scripts used in this template.
819
+ * The scripts used in this template, The keys are identifiers of the scripts and
820
+ * the values are the bytecode or cashASM expressions.
784
821
  */
785
- scripts: {
786
- [scriptId: string]: string;
787
- };
822
+ scripts: Record<XOTemplateScriptIdentifier, string>;
788
823
  /**
789
824
  * The constants defined in this template.
790
825
  */
791
- constants?: {
792
- [constantId: string]: XOTemplateConstant;
793
- };
826
+ constants?: Record<XOTemplateConstantIdentifier, XOTemplateConstant>;
794
827
  /**
795
828
  * The variables that must be provided for use in the template's scripts.
796
829
  */
797
- variables?: {
798
- [variableId: string]: XOTemplateVariable;
799
- };
830
+ variables?: Record<XOTemplateVariableIdentifier, XOTemplateVariable>;
831
+ /**
832
+ * Resource references providing external documentation or tooling links.
833
+ */
834
+ resources?: Array<XOTemplateResource>;
800
835
  /**
801
836
  * The icons available for use throughout the template.
802
837
  */
803
- icons?: XOTemplateIcon[];
838
+ icons?: Array<XOTemplateIcon>;
804
839
  /**
805
840
  * The scenarios defined in this template.
806
841
  */
807
- scenarios: unknown;
842
+ scenarios?: unknown;
808
843
  };
809
844
  //#endregion
810
- export { Satoshis, XOInvitation, XOInvitationCommit, XOInvitationInput, XOInvitationOutput, XOInvitationRequirements, XOInvitationRoleRequirement, XOInvitationVariable, XOInvitationVariableValue, XOTemplate, XOTemplateAction, XOTemplateActionIntent, XOTemplateActionRole, XOTemplateActionRoleRequirement, XOTemplateActionRoleRequirements, XOTemplateBalance, XOTemplateConstant, XOTemplateData, XOTemplateIcon, XOTemplateInput, XOTemplateIntentParameters, XOTemplateLockingScript, XOTemplateLockingScriptRole, XOTemplateLockingScriptRoleAction, XOTemplateLockingScriptRoleState, XOTemplateOmitChangeAmounts, XOTemplateOutput, XOTemplateOutputIntent, XOTemplateOutputRole, XOTemplateRoleDescription, XOTemplateRoleSlots, XOTemplateStartingActionIntents, XOTemplateToken, XOTemplateTransaction, XOTemplateTransactionInput, XOTemplateTransactionOutput, XOTemplateTransactionRoleData, XOTemplateVariable, XOTemplateVariablesAndSecrets, XOTemplateViewProperties };
845
+ export { BchVmVersion, FungibleTokenAmount, Satoshis, XOInvitation, XOInvitationCommit, XOInvitationInput, XOInvitationOutput, XOInvitationRequirements, XOInvitationRoleRequirement, XOInvitationVariable, XOInvitationVariableValue, XOTemplate, XOTemplateAction, XOTemplateActionIdentifier, XOTemplateActionIntent, XOTemplateActionRequirements, XOTemplateActionRole, XOTemplateActionRoleRequirements, XOTemplateAssetAmounts, XOTemplateConstant, XOTemplateConstantIdentifier, XOTemplateData, XOTemplateDataIdentifier, XOTemplateDefaults, XOTemplateIcon, XOTemplateImportDefaultValue, XOTemplateInput, XOTemplateInputIdentifier, XOTemplateIntent, XOTemplateLockingScript, XOTemplateLockingScriptIdentifier, XOTemplateLockingScriptIntent, XOTemplateLockingScriptRole, XOTemplateLockingType, XOTemplateNftCapability, XOTemplateNonFungibleTokenDetails, XOTemplateOutput, XOTemplateOutputIdentifier, XOTemplateOutputIntent, XOTemplatePrimitiveType, XOTemplateResource, XOTemplateRoleIdentifier, XOTemplateRoleSlot, XOTemplateRoleSlotsRequirements, XOTemplateScriptIdentifier, XOTemplateSecretIdentifier, XOTemplateState, XOTemplateToken, XOTemplateTransaction, XOTemplateTransactionIdentifier, XOTemplateTransactionInput, XOTemplateTransactionOutput, XOTemplateTransactionRoleData, XOTemplateVariable, XOTemplateVariableIdentifier, XOTemplateViewProperties };
811
846
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../source/invitation.ts","../source/template.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../source/invitation.ts","../source/template.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xo-cash/types",
3
- "version": "0.0.1-development.13730885533",
3
+ "version": "0.0.1-development.13987793009",
4
4
  "description": "XO type definitions and interfaces",
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.mts",