@xo-cash/utils 0.0.2-development.15512051893 → 0.0.3-development.15744988955

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
@@ -1,4 +1,5 @@
1
- import { XOTemplate } from "@xo-cash/types";
1
+ import { CompilerBch } from "@bitauth/libauth";
2
+ import { XOInvitationVariableValue, XOTemplate } from "@xo-cash/types";
2
3
  import { z } from "zod";
3
4
  import { $ZodIssue } from "zod/v4/core";
4
5
 
@@ -367,17 +368,34 @@ declare const xoTemplateLockingTypeSchema: z.ZodEnum<{
367
368
  readonly P2SH: "p2sh";
368
369
  }>;
369
370
  /**
370
- * Validation schema for a primitive type identifier. Defines the set of primitive types
371
- * that can be declared in an XO template. Used by constants, variables, and data fields.
371
+ * Validation schema for a base type identifier.
372
+ * Accepts values from XOTemplateBaseTypes for the `type` field on constants, variables, and data.
372
373
  */
373
- declare const xoTemplatePrimitiveTypeSchema: z.ZodEnum<{
374
+ declare const xoTemplateBaseTypeSchema: z.ZodEnum<{
374
375
  readonly BOOLEAN: "boolean";
375
376
  readonly BYTES: "bytes";
376
377
  readonly INTEGER: "integer";
377
378
  readonly BIGINT: "bigint";
378
379
  readonly STRING: "string";
380
+ }>;
381
+ /**
382
+ * Validation schema for a primitive type identifier.
383
+ * Accepts values from XOTemplatePrimitiveTypes for the `hint` field on constants, variables, and data.
384
+ */
385
+ declare const xoTemplatePrimitiveTypeSchema: z.ZodEnum<{
379
386
  readonly PRIVATE_KEY: "private_key";
380
387
  readonly PUBLIC_KEY: "public_key";
388
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
389
+ readonly SATOSHIS: "satoshis";
390
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
391
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
392
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
393
+ readonly TIMESTAMP: "timestamp";
394
+ readonly TOKEN_CATEGORY: "token_category";
395
+ readonly NFT_COMMITMENT: "nft_commitment";
396
+ readonly TRANSACTION_HASH: "transaction_hash";
397
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
398
+ readonly SCHNORR_SIGNATURE: "signature";
381
399
  }>;
382
400
  /**
383
401
  * Validation schema for byte array fields i.e. Uint8Array instance.
@@ -1078,11 +1096,23 @@ declare const xoTemplateConstantSchema: z.ZodObject<{
1078
1096
  readonly INTEGER: "integer";
1079
1097
  readonly BIGINT: "bigint";
1080
1098
  readonly STRING: "string";
1081
- readonly PRIVATE_KEY: "private_key";
1082
- readonly PUBLIC_KEY: "public_key";
1083
1099
  }>;
1084
1100
  value: z.ZodUnknown;
1085
- hint: z.ZodOptional<z.ZodString>;
1101
+ hint: z.ZodOptional<z.ZodEnum<{
1102
+ readonly PRIVATE_KEY: "private_key";
1103
+ readonly PUBLIC_KEY: "public_key";
1104
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1105
+ readonly SATOSHIS: "satoshis";
1106
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1107
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1108
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1109
+ readonly TIMESTAMP: "timestamp";
1110
+ readonly TOKEN_CATEGORY: "token_category";
1111
+ readonly NFT_COMMITMENT: "nft_commitment";
1112
+ readonly TRANSACTION_HASH: "transaction_hash";
1113
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1114
+ readonly SCHNORR_SIGNATURE: "signature";
1115
+ }>>;
1086
1116
  }, z.core.$strict>;
1087
1117
  /**
1088
1118
  * Validation schema for a data field definition.
@@ -1102,11 +1132,23 @@ declare const xoTemplateDataSchema: z.ZodObject<{
1102
1132
  readonly INTEGER: "integer";
1103
1133
  readonly BIGINT: "bigint";
1104
1134
  readonly STRING: "string";
1105
- readonly PRIVATE_KEY: "private_key";
1106
- readonly PUBLIC_KEY: "public_key";
1107
1135
  }>;
1108
1136
  value: z.ZodUnknown;
1109
- hint: z.ZodOptional<z.ZodString>;
1137
+ hint: z.ZodOptional<z.ZodEnum<{
1138
+ readonly PRIVATE_KEY: "private_key";
1139
+ readonly PUBLIC_KEY: "public_key";
1140
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1141
+ readonly SATOSHIS: "satoshis";
1142
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1143
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1144
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1145
+ readonly TIMESTAMP: "timestamp";
1146
+ readonly TOKEN_CATEGORY: "token_category";
1147
+ readonly NFT_COMMITMENT: "nft_commitment";
1148
+ readonly TRANSACTION_HASH: "transaction_hash";
1149
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1150
+ readonly SCHNORR_SIGNATURE: "signature";
1151
+ }>>;
1110
1152
  }, z.core.$strict>;
1111
1153
  /**
1112
1154
  * Validation schema for an import default value intent. Extends the base intent with optional
@@ -1154,10 +1196,22 @@ declare const xoTemplateVariableSchema: z.ZodObject<{
1154
1196
  readonly INTEGER: "integer";
1155
1197
  readonly BIGINT: "bigint";
1156
1198
  readonly STRING: "string";
1199
+ }>>;
1200
+ hint: z.ZodOptional<z.ZodEnum<{
1157
1201
  readonly PRIVATE_KEY: "private_key";
1158
1202
  readonly PUBLIC_KEY: "public_key";
1203
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1204
+ readonly SATOSHIS: "satoshis";
1205
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1206
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1207
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1208
+ readonly TIMESTAMP: "timestamp";
1209
+ readonly TOKEN_CATEGORY: "token_category";
1210
+ readonly NFT_COMMITMENT: "nft_commitment";
1211
+ readonly TRANSACTION_HASH: "transaction_hash";
1212
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1213
+ readonly SCHNORR_SIGNATURE: "signature";
1159
1214
  }>>;
1160
- hint: z.ZodOptional<z.ZodString>;
1161
1215
  importDefaultValue: z.ZodOptional<z.ZodObject<{
1162
1216
  templateIdentifier: z.ZodOptional<z.ZodString>;
1163
1217
  role: z.ZodOptional<z.ZodString>;
@@ -1302,11 +1356,23 @@ declare const xoTemplateSchema: z.ZodObject<{
1302
1356
  readonly INTEGER: "integer";
1303
1357
  readonly BIGINT: "bigint";
1304
1358
  readonly STRING: "string";
1305
- readonly PRIVATE_KEY: "private_key";
1306
- readonly PUBLIC_KEY: "public_key";
1307
1359
  }>;
1308
1360
  value: z.ZodUnknown;
1309
- hint: z.ZodOptional<z.ZodString>;
1361
+ hint: z.ZodOptional<z.ZodEnum<{
1362
+ readonly PRIVATE_KEY: "private_key";
1363
+ readonly PUBLIC_KEY: "public_key";
1364
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1365
+ readonly SATOSHIS: "satoshis";
1366
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1367
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1368
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1369
+ readonly TIMESTAMP: "timestamp";
1370
+ readonly TOKEN_CATEGORY: "token_category";
1371
+ readonly NFT_COMMITMENT: "nft_commitment";
1372
+ readonly TRANSACTION_HASH: "transaction_hash";
1373
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1374
+ readonly SCHNORR_SIGNATURE: "signature";
1375
+ }>>;
1310
1376
  }, z.core.$strict>>>;
1311
1377
  transactions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1312
1378
  name: z.ZodString;
@@ -1494,11 +1560,23 @@ declare const xoTemplateSchema: z.ZodObject<{
1494
1560
  readonly INTEGER: "integer";
1495
1561
  readonly BIGINT: "bigint";
1496
1562
  readonly STRING: "string";
1497
- readonly PRIVATE_KEY: "private_key";
1498
- readonly PUBLIC_KEY: "public_key";
1499
1563
  }>;
1500
1564
  value: z.ZodUnknown;
1501
- hint: z.ZodOptional<z.ZodString>;
1565
+ hint: z.ZodOptional<z.ZodEnum<{
1566
+ readonly PRIVATE_KEY: "private_key";
1567
+ readonly PUBLIC_KEY: "public_key";
1568
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1569
+ readonly SATOSHIS: "satoshis";
1570
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1571
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1572
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1573
+ readonly TIMESTAMP: "timestamp";
1574
+ readonly TOKEN_CATEGORY: "token_category";
1575
+ readonly NFT_COMMITMENT: "nft_commitment";
1576
+ readonly TRANSACTION_HASH: "transaction_hash";
1577
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1578
+ readonly SCHNORR_SIGNATURE: "signature";
1579
+ }>>;
1502
1580
  }, z.core.$strict>>>;
1503
1581
  variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1504
1582
  name: z.ZodString;
@@ -1510,10 +1588,22 @@ declare const xoTemplateSchema: z.ZodObject<{
1510
1588
  readonly INTEGER: "integer";
1511
1589
  readonly BIGINT: "bigint";
1512
1590
  readonly STRING: "string";
1591
+ }>>;
1592
+ hint: z.ZodOptional<z.ZodEnum<{
1513
1593
  readonly PRIVATE_KEY: "private_key";
1514
1594
  readonly PUBLIC_KEY: "public_key";
1595
+ readonly EXTENDED_PUBLIC_KEY: "extended_public_key";
1596
+ readonly SATOSHIS: "satoshis";
1597
+ readonly FUNGIBLE_TOKEN_AMOUNT: "token_amount";
1598
+ readonly NON_FUNGIBLE_TOKEN_CAPABILITY: "token_capability";
1599
+ readonly NON_FUNGIBLE_TOKEN_COMMITMENT: "token_commitment";
1600
+ readonly TIMESTAMP: "timestamp";
1601
+ readonly TOKEN_CATEGORY: "token_category";
1602
+ readonly NFT_COMMITMENT: "nft_commitment";
1603
+ readonly TRANSACTION_HASH: "transaction_hash";
1604
+ readonly TEMPLATE_IDENTIFIER: "template_identifier";
1605
+ readonly SCHNORR_SIGNATURE: "signature";
1515
1606
  }>>;
1516
- hint: z.ZodOptional<z.ZodString>;
1517
1607
  importDefaultValue: z.ZodOptional<z.ZodObject<{
1518
1608
  templateIdentifier: z.ZodOptional<z.ZodString>;
1519
1609
  role: z.ZodOptional<z.ZodString>;
@@ -1539,6 +1629,274 @@ declare const xoTemplateSchema: z.ZodObject<{
1539
1629
  scenarios: z.ZodOptional<z.ZodUnknown>;
1540
1630
  }, z.core.$strict>;
1541
1631
  //#endregion
1632
+ //#region source/cash-assembly/evaluations.d.ts
1633
+ /**
1634
+ * Supported decode modes for compiled CashAssembly evaluation bytes.
1635
+ */
1636
+ type CompiledCashAssemblyDecodeMode = 'utf8' | 'hex' | 'boolean' | 'bigint' | 'uint8array';
1637
+ /**
1638
+ * Parameters for compiling CashAssembly string.
1639
+ */
1640
+ type CompileCashAssemblyStringParameters = {
1641
+ /**
1642
+ * Text that may embed CashAssembly evaluations such as `$(<fee>)` or `$(<expiry.toIso8601>)`.
1643
+ */
1644
+ cashAssemblyText: string;
1645
+ /**
1646
+ * Used for both primitive method evaluations and normal CashAssembly compilation.
1647
+ */
1648
+ variables: Record<string, XOInvitationVariableValue | Uint8Array>;
1649
+ /**
1650
+ * The mode to decode compiled evaluation bytes into a string.
1651
+ */
1652
+ evaluationDecodeMode?: CompiledCashAssemblyDecodeMode;
1653
+ /**
1654
+ * Optional template variable definitions. When provided, each `<name.method>` push whose `hint`
1655
+ * maps to a supported primitive class is resolved to bytes before CashAssembly compilation.
1656
+ */
1657
+ templateVariables?: XOTemplate['variables'];
1658
+ };
1659
+ /**
1660
+ * Checks if the expression is a CashAssembly expression.
1661
+ *
1662
+ * @param {unknown} expression - The expression to check.
1663
+ * @returns {boolean} True if the expression is a CashAssembly expression, false otherwise.
1664
+ */
1665
+ declare const isCashAssemblyExpression: (expression: unknown) => boolean;
1666
+ /**
1667
+ * Extracts all CashAssembly evaluations (i.e., substrings like $(...)) from the input text.
1668
+ *
1669
+ * @param {string} text - The input string to scan for CashAssembly evaluations.
1670
+ * @returns {string[]} An array of evaluation strings found in the input.
1671
+ *
1672
+ * @example
1673
+ * extractCashAssemblyEvaluations("OP_DUP <$(<foo>)> OP_HASH160 $(<bar>)");
1674
+ * // returns ['$(<foo>)', '$(<bar>)']
1675
+ */
1676
+ declare const extractCashAssemblyEvaluations: (text: string) => string[];
1677
+ /**
1678
+ * Extracts unique variable identifiers enclosed in angle brackets from each evaluation string.
1679
+ *
1680
+ * CashAssembly literal tokens such as hex bytes, numbers, and quoted strings are excluded via
1681
+ * {@link CASHASSEMBLY_LITERAL_TOKEN_PATTERN}. For example, `<0x02>` and `<"minting">` are not returned.
1682
+ *
1683
+ * @param {string[]} evaluations - An array of evaluation strings from which to extract variable names.
1684
+ * @returns {string[]} An array of variable names.
1685
+ */
1686
+ declare const extractVariablesFromEvaluations: (evaluations: string[]) => string[];
1687
+ /**
1688
+ * Decodes compiled CashAssembly evaluation bytes into a string representation.
1689
+ *
1690
+ * 'evaluationDecodeMode' determines how the evaluation bytes are interpreted and presented.
1691
+ * Use `bigint` for numeric values like satoshis, `utf8` for text labels, `hex` for binary data
1692
+ * such as hashes, and `boolean` to represent boolean values.
1693
+ *
1694
+ * @param {Uint8Array} compiledResult - The compiled evaluation bytecode.
1695
+ * @param {CompiledCashAssemblyDecodeMode} [evaluationDecodeMode='utf8'] - The decode mode used to convert
1696
+ * bytes to text.
1697
+ * @returns {string} The decoded value as a string suitable for inline replacement.
1698
+ * @throws {@link CashAssemblyVmNumberDecodeError} When `evaluationDecodeMode` is `bigint` and the bytes are not a VM number.
1699
+ */
1700
+ declare const decodeCompiledCashAssemblyEvaluation: (compiledResult: Uint8Array, evaluationDecodeMode?: CompiledCashAssemblyDecodeMode) => string;
1701
+ /**
1702
+ * Generates bytecode for a specific CashAssembly evaluation using given variable values and a prepared compiler.
1703
+ *
1704
+ * @param {CompilerBch} compiler - The libauth compiler from {@link compileCashAssemblyEvaluations}.
1705
+ * @param {string} evaluation - The specific evaluation string to compile.
1706
+ * @param {Record<string, Uint8Array>} variables - A record mapping variable names to their values.
1707
+ * @returns {Uint8Array} The compiled bytecode.
1708
+ * @throws {@link CashAssemblyRequiredVariableMissingError} If a required variable is not present.
1709
+ * @throws {@link CashAssemblyVariableTypeMismatchError} If a variable value is not a Uint8Array.
1710
+ * @throws {@link CashAssemblyCompilationFailedError} If libauth compilation fails.
1711
+ */
1712
+ declare const generateCashAssemblyBytecode: (compiler: CompilerBch, evaluation: string, variables: Record<string, Uint8Array>) => Uint8Array;
1713
+ /**
1714
+ * Prepares a compiler for the provided CashAssembly evaluations, setting required variables as 'WalletData'.
1715
+ *
1716
+ * @param {string[]} evaluations - Array of evaluation strings (e.g., ['$(<var1>)', '$(<var2> <var3>)']).
1717
+ * @returns {CompilerBch} A Libauth compiler instance for use with these evaluations.
1718
+ */
1719
+ declare const compileCashAssemblyEvaluations: (evaluations: string[]) => CompilerBch;
1720
+ /**
1721
+ * Compiles all CashAssembly evaluations in a text string and replaces each evaluation
1722
+ * with a decoded string representation.
1723
+ *
1724
+ * @param {CompileCashAssemblyStringParameters} parameters - Parameters for compiling the CashAssembly string.
1725
+ * @param {string} parameters.cashAssemblyText - The string with CashAssembly evaluations.
1726
+ * @param {Record<string, XOInvitationVariableValue | Uint8Array>} parameters.variables - Object mapping
1727
+ * variable names to values for compilation.
1728
+ * @param {CompiledCashAssemblyDecodeMode} [parameters.evaluationDecodeMode='utf8'] - The decode mode used
1729
+ * after each evaluation is compiled. See {@link decodeCompiledCashAssemblyEvaluation}.
1730
+ * @param {XOTemplate['variables']} [parameters.templateVariables] - Optional template variable definitions
1731
+ * used to resolve supported `<name.method>` pushes via each variable's `hint`.
1732
+ * @returns {string} Compiled text with all evaluations replaced by decoded string values.
1733
+ * @throws {@link CashAssemblyRequiredVariableMissingError} When a required variable is not present in the variables map.
1734
+ * @throws {@link CashAssemblyPrimitiveMethodMissingError} When a supported primitive hint has an unknown method.
1735
+ * @throws {@link CashAssemblyPrimitiveVariableMissingError} When a supported primitive method is missing its runtime value.
1736
+ * @throws {@link CashAssemblyUnsupportedValueTypeError} When a primitive method return type cannot be embedded as bytes.
1737
+ * @throws {@link CashAssemblyNumberNotSafeIntegerError} When a number variable is not a safe integer.
1738
+ * @throws {@link CashAssemblyVmNumberDecodeError} When `evaluationDecodeMode` is `bigint` and an evaluation is not a VM number.
1739
+ */
1740
+ declare const compileCashAssemblyString: (parameters: CompileCashAssemblyStringParameters) => string;
1741
+ //#endregion
1742
+ //#region source/cash-assembly/primitive-evaluations.d.ts
1743
+ /**
1744
+ * Inputs needed to resolve primitive method pushes from extracted CashAssembly identifiers.
1745
+ */
1746
+ type ResolvePrimitiveMethodBytesParameters = {
1747
+ /**
1748
+ * Variable identifiers from {@link extractVariablesFromEvaluations}, for example
1749
+ * `['amount.toSatoshis', 'fee.toSatoshis']`.
1750
+ */
1751
+ identifiers: string[];
1752
+ /**
1753
+ * Variable names and values object.
1754
+ */
1755
+ variables: Record<string, unknown>;
1756
+ /**
1757
+ * Template variable definitions. When omitted, no primitive methods are resolved.
1758
+ * The `hint` on each entry selects the primitive class.
1759
+ */
1760
+ templateVariables?: XOTemplate['variables'];
1761
+ };
1762
+ /**
1763
+ * Resolves supported `base.method` identifiers to CashAssembly variable bytes.
1764
+ *
1765
+ * Each single dot identifier whose `hint` maps to a supported primitive is resolved and stored under
1766
+ * the full identifier (`base.method`). Unsupported or multi dot identifiers are left for CashAssembly.
1767
+ *
1768
+ * When `templateVariables` is omitted, returns an empty map.
1769
+ *
1770
+ * @param {ResolvePrimitiveMethodBytesParameters} parameters - Identifiers, values, and optional template metadata.
1771
+ * @returns {Record<string, Uint8Array>} Resolved method identifiers mapped to bytes for CashAssembly pushes.
1772
+ * @throws {@link CashAssemblyPrimitiveMethodMissingError} When the hint is a supported primitive but the method is missing.
1773
+ * @throws {@link CashAssemblyPrimitiveVariableMissingError} When the runtime value is missing from the variables map.
1774
+ * @throws {@link CashAssemblyUnsupportedValueTypeError} When the method return type cannot be embedded.
1775
+ * @throws {@link CashAssemblyNumberNotSafeIntegerError} When a method return value is a number that is not a safe integer.
1776
+ */
1777
+ declare const resolvePrimitiveMethodBytes: (parameters: ResolvePrimitiveMethodBytesParameters) => Record<string, Uint8Array>;
1778
+ //#endregion
1779
+ //#region source/cash-assembly/bytes.d.ts
1780
+ /**
1781
+ * Converts a value into bytes representation.
1782
+ *
1783
+ * @param {unknown} value - Value to encode, should be one of: Uint8Array, bigint, boolean, string, or a safe integer number.
1784
+ * @param {string} valueIdentifier - Identifier used in error messages.
1785
+ * @returns {Uint8Array} Bytes representation of the value.
1786
+ * @throws {@link CashAssemblyNumberNotSafeIntegerError} When a number is not a safe integer.
1787
+ * @throws {@link CashAssemblyUnsupportedValueTypeError} When the value type cannot be resolved.
1788
+ */
1789
+ declare const convertValueToBytes: (value: unknown, valueIdentifier: string) => Uint8Array;
1790
+ //#endregion
1791
+ //#region source/cash-assembly/defaults.d.ts
1792
+ /**
1793
+ * Detects whether a string is a pure CashAssembly expression.
1794
+ *
1795
+ * CashAssembly expressions look like `$(<variable>)` or `$(<a> <b>)`. This pattern checks
1796
+ * that the entire string is one such expression and nothing else. It will not match if
1797
+ * there is other text surrounding the expression.
1798
+ *
1799
+ * For example:
1800
+ * `$(<fee>)` matches (a full expression)
1801
+ * `OP_DUP $(<fee>)` does not match (extra text before it)
1802
+ * `$()` does not match (empty expression)
1803
+ */
1804
+ declare const CASHASSEMBLY_EXPRESSION_PATTERN: RegExp;
1805
+ /**
1806
+ * Finds all CashAssembly evaluations embedded in a larger string.
1807
+ *
1808
+ * An evaluation looks like `$(...)`, for example `$(<fee>)` or `$(<a> <b>)`. This pattern
1809
+ * locates every occurrence in the input and returns them all (global flag `g`).
1810
+ * Empty evaluations `$()` are intentionally excluded because they reference no variables.
1811
+ *
1812
+ * For example, scanning `"OP_DUP <$(<pubkeyHash>)> OP_HASH160 $(<fee>)"` would return
1813
+ * `['$(<pubkeyHash>)', '$(<fee>)']`.
1814
+ */
1815
+ declare const CASHASSEMBLY_EVALUATION_PATTERN: RegExp;
1816
+ /**
1817
+ * Extracts variable names from angle-bracket references inside a CashAssembly evaluation.
1818
+ *
1819
+ * Inside an evaluation like `$(<pubkeyHash> <fee>)`, variables are referenced as `<name>`.
1820
+ * This pattern captures the name between the brackets. The global flag `g` allows iterating
1821
+ * over every variable reference in a single evaluation string.
1822
+ *
1823
+ * For example, running this against `$(<pubkeyHash> <fee>)` would return the variable names
1824
+ * `["pubkeyHash", "fee"]`.
1825
+ */
1826
+ declare const CASHASSEMBLY_VARIABLE_PATTERN: RegExp;
1827
+ /**
1828
+ * Identifies CashAssembly literal tokens that appear inside angle-bracket push statements.
1829
+ *
1830
+ * Inside an evaluation, not everything between `<` and `>` is a variable name. Literals are
1831
+ * also valid push contents: numeric literals (e.g. `<0>`, `<32>`), hex literals (`<0x02>`),
1832
+ * binary literals (`<0b1010>`), and string literals (`<"minting">`, `<'hello'>`). This pattern
1833
+ * matches any captured token that starts with a digit or a quote character.
1834
+ */
1835
+ declare const CASHASSEMBLY_LITERAL_TOKEN_PATTERN: RegExp;
1836
+ /**
1837
+ * Matches a single dot variable method reference inside an angle-bracket identifier.
1838
+ *
1839
+ * Used to detect primitive method references such as `expiry.toIso8601`.
1840
+ *
1841
+ * For example:
1842
+ * `expiry.toIso8601` matches (base `expiry`, method `toIso8601`)
1843
+ * `requestedSatoshis` does not match (no method)
1844
+ * `key.schnorr_signature.all_outputs` does not match (more than one dot)
1845
+ * `key.public_key` matches the pattern shape but it is only resolved
1846
+ * when `hint` maps to a primitive
1847
+ */
1848
+ declare const CASHASSEMBLY_VARIABLE_METHOD_REFERENCE_PATTERN: RegExp;
1849
+ //#endregion
1850
+ //#region source/cash-assembly/errors.d.ts
1851
+ /**
1852
+ * Error thrown when a required variable is missing.
1853
+ */
1854
+ declare class CashAssemblyRequiredVariableMissingError extends Error {
1855
+ constructor(variableNames?: string[]);
1856
+ }
1857
+ /**
1858
+ * Error thrown when cash assembly compilation fails.
1859
+ */
1860
+ declare class CashAssemblyCompilationFailedError extends Error {
1861
+ constructor(message?: string);
1862
+ }
1863
+ /**
1864
+ * Error thrown when a variable's runtime type does not match the type required for compilation.
1865
+ */
1866
+ declare class CashAssemblyVariableTypeMismatchError extends Error {
1867
+ constructor(variableKey: string, expectedType: string, actualType: string);
1868
+ }
1869
+ /**
1870
+ * Error thrown when a supported primitive hint does not expose the requested method.
1871
+ */
1872
+ declare class CashAssemblyPrimitiveMethodMissingError extends Error {
1873
+ constructor(identifier: string, methodName: string, hint: string);
1874
+ }
1875
+ /**
1876
+ * Error thrown when a value cannot be resolved as bytes.
1877
+ */
1878
+ declare class CashAssemblyUnsupportedValueTypeError extends Error {
1879
+ constructor(identifier: string, returnedType: string);
1880
+ }
1881
+ /**
1882
+ * Error thrown when a number cannot be safely encoded as a CashAssembly VM number.
1883
+ */
1884
+ declare class CashAssemblyNumberNotSafeIntegerError extends Error {
1885
+ constructor(identifier: string, value: number);
1886
+ }
1887
+ /**
1888
+ * Error thrown when a supported primitive is selected but its value is missing when provided in the variables map.
1889
+ */
1890
+ declare class CashAssemblyPrimitiveVariableMissingError extends Error {
1891
+ constructor(identifier: string, variableName: string);
1892
+ }
1893
+ /**
1894
+ * Error thrown when compiled evaluation bytes cannot be decoded as a VM number.
1895
+ */
1896
+ declare class CashAssemblyVmNumberDecodeError extends Error {
1897
+ constructor(reason: string);
1898
+ }
1899
+ //#endregion
1542
1900
  //#region source/template/serialization.d.ts
1543
1901
  /**
1544
1902
  * Serializes an XOTemplate to a JSON string. Encodes `bigint` and `Uint8Array` fields in
@@ -1550,5 +1908,5 @@ declare const xoTemplateSchema: z.ZodObject<{
1550
1908
  */
1551
1909
  declare const serializeTemplate: (template: XOTemplate) => string;
1552
1910
  //#endregion
1553
- export { AsyncPushIterator, SSEEventParser, SSEEventParserOptions, TemplateInvalidError, TemplateJsonMalformedError, TemplateSerializationFailedError, VIEW_PROPERTIES_DESCRIPTION_MAX_LENGTH, VIEW_PROPERTIES_ICON_MAX_LENGTH, VIEW_PROPERTIES_NAME_MAX_LENGTH, bchVmVersionSchema, buildErrorDescription, extendedJsonReplacer, extendedJsonReviver, fromExtendedJson, generateTemplateIdentifier, parseTemplate, satoshisSchema, scriptToScriptHash, serializeTemplate, toExtendedJson, uint8ArraySchema, xoTemplateActionIntentSchema, xoTemplateActionRequirementsSchema, xoTemplateActionRoleRequirementsSchema, xoTemplateActionRoleSchema, xoTemplateActionSchema, xoTemplateAssetAmountsSchema, xoTemplateConstantSchema, xoTemplateDataSchema, xoTemplateDefaultsSchema, xoTemplateIconSchema, xoTemplateImportDefaultValueSchema, xoTemplateInputSchema, xoTemplateIntentSchema, xoTemplateLockingScriptIntentSchema, xoTemplateLockingScriptRoleSchema, xoTemplateLockingScriptSchema, xoTemplateLockingTypeSchema, xoTemplateNftCapabilitySchema, xoTemplateNonFungibleTokenDetailsSchema, xoTemplateOutputIntentSchema, xoTemplateOutputSchema, xoTemplatePrimitiveTypeSchema, xoTemplateResourceSchema, xoTemplateRoleSlotSchema, xoTemplateRoleSlotsRequirementsSchema, xoTemplateSchema, xoTemplateStateSchema, xoTemplateTokenSchema, xoTemplateTransactionInputSchema, xoTemplateTransactionOutputSchema, xoTemplateTransactionRoleDataSchema, xoTemplateTransactionSchema, xoTemplateVariableSchema, xoTemplateViewPropertiesSchema };
1911
+ export { AsyncPushIterator, CASHASSEMBLY_EVALUATION_PATTERN, CASHASSEMBLY_EXPRESSION_PATTERN, CASHASSEMBLY_LITERAL_TOKEN_PATTERN, CASHASSEMBLY_VARIABLE_METHOD_REFERENCE_PATTERN, CASHASSEMBLY_VARIABLE_PATTERN, CashAssemblyCompilationFailedError, CashAssemblyNumberNotSafeIntegerError, CashAssemblyPrimitiveMethodMissingError, CashAssemblyPrimitiveVariableMissingError, CashAssemblyRequiredVariableMissingError, CashAssemblyUnsupportedValueTypeError, CashAssemblyVariableTypeMismatchError, CashAssemblyVmNumberDecodeError, CompileCashAssemblyStringParameters, CompiledCashAssemblyDecodeMode, ResolvePrimitiveMethodBytesParameters, SSEEventParser, SSEEventParserOptions, TemplateInvalidError, TemplateJsonMalformedError, TemplateSerializationFailedError, VIEW_PROPERTIES_DESCRIPTION_MAX_LENGTH, VIEW_PROPERTIES_ICON_MAX_LENGTH, VIEW_PROPERTIES_NAME_MAX_LENGTH, bchVmVersionSchema, buildErrorDescription, compileCashAssemblyEvaluations, compileCashAssemblyString, convertValueToBytes, decodeCompiledCashAssemblyEvaluation, extendedJsonReplacer, extendedJsonReviver, extractCashAssemblyEvaluations, extractVariablesFromEvaluations, fromExtendedJson, generateCashAssemblyBytecode, generateTemplateIdentifier, isCashAssemblyExpression, parseTemplate, resolvePrimitiveMethodBytes, satoshisSchema, scriptToScriptHash, serializeTemplate, toExtendedJson, uint8ArraySchema, xoTemplateActionIntentSchema, xoTemplateActionRequirementsSchema, xoTemplateActionRoleRequirementsSchema, xoTemplateActionRoleSchema, xoTemplateActionSchema, xoTemplateAssetAmountsSchema, xoTemplateBaseTypeSchema, xoTemplateConstantSchema, xoTemplateDataSchema, xoTemplateDefaultsSchema, xoTemplateIconSchema, xoTemplateImportDefaultValueSchema, xoTemplateInputSchema, xoTemplateIntentSchema, xoTemplateLockingScriptIntentSchema, xoTemplateLockingScriptRoleSchema, xoTemplateLockingScriptSchema, xoTemplateLockingTypeSchema, xoTemplateNftCapabilitySchema, xoTemplateNonFungibleTokenDetailsSchema, xoTemplateOutputIntentSchema, xoTemplateOutputSchema, xoTemplatePrimitiveTypeSchema, xoTemplateResourceSchema, xoTemplateRoleSlotSchema, xoTemplateRoleSlotsRequirementsSchema, xoTemplateSchema, xoTemplateStateSchema, xoTemplateTokenSchema, xoTemplateTransactionInputSchema, xoTemplateTransactionOutputSchema, xoTemplateTransactionRoleDataSchema, xoTemplateTransactionSchema, xoTemplateVariableSchema, xoTemplateViewPropertiesSchema };
1554
1912
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../source/extended-json.ts","../source/script.ts","../source/sse-session/async-push-iterator.ts","../source/sse-session/types.ts","../source/sse-session/sse-event-parser.ts","../source/template/errors.ts","../source/template/identifier.ts","../source/template/parser.ts","../source/template/schemas.ts","../source/template/serialization.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../source/extended-json.ts","../source/script.ts","../source/sse-session/async-push-iterator.ts","../source/sse-session/types.ts","../source/sse-session/sse-event-parser.ts","../source/template/errors.ts","../source/template/identifier.ts","../source/template/parser.ts","../source/template/schemas.ts","../source/cash-assembly/evaluations.ts","../source/cash-assembly/primitive-evaluations.ts","../source/cash-assembly/bytes.ts","../source/cash-assembly/defaults.ts","../source/cash-assembly/errors.ts","../source/template/serialization.ts"],"mappings":"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"}