@xo-cash/utils 0.0.1-development.13987669945
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/LICENSE +21 -0
- package/README.md +70 -0
- package/dist/index.d.mts +1346 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +840 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +71 -0
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,1346 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { $ZodIssue } from "zod/v4/core";
|
|
3
|
+
import { XOTemplate } from "@xo-cash/types";
|
|
4
|
+
|
|
5
|
+
//#region source/extended-json.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* The JSON replacer that encodes `bigint` and `Uint8Array` values in Extended JSON format,
|
|
8
|
+
* compatible with the format expected by `extendedJsonReviver`.
|
|
9
|
+
*
|
|
10
|
+
* - BigInts are encoded as `<bigint: 123n>`.
|
|
11
|
+
* - Uint8Arrays are encoded as `<uint8array: abcd>`.
|
|
12
|
+
* All other values pass through unchanged and if any incompatible type is encountered, an error is thrown.
|
|
13
|
+
*
|
|
14
|
+
* Note: To use this function, pass it as the second argument to `JSON.stringify` when serializing data.
|
|
15
|
+
*
|
|
16
|
+
* Note to developers: Libauth's `stringify` is the replacer. It also serializes functions and symbols,
|
|
17
|
+
* which we do not support. Passing it would let templates include those values, but revival would then fail.
|
|
18
|
+
* This module provides a dedicated replacer and reviver so serialization and deserialization stay aligned.
|
|
19
|
+
*
|
|
20
|
+
* @param _propertyKey The property key being serialized, required by the `JSON.stringify` replacer but not used here.
|
|
21
|
+
* @param value The value to encode or pass through unchanged.
|
|
22
|
+
* @returns The encoded string
|
|
23
|
+
*/
|
|
24
|
+
declare const extendedJsonReplacer: (_propertyKey: string, value: unknown) => unknown;
|
|
25
|
+
/**
|
|
26
|
+
* The JSON reviver that reconstructs `bigint` and `Uint8Array` values encoded by `extendedJsonReplacer`.
|
|
27
|
+
*
|
|
28
|
+
* Note: To use this function, pass it as the second argument to `JSON.parse` when deserializing data.
|
|
29
|
+
*
|
|
30
|
+
* @param _propertyKey The property key being deserialized, required by the `JSON.parse` reviver but not used here.
|
|
31
|
+
* @param value The value to reconstruct or pass through unchanged.
|
|
32
|
+
* @returns The reconstructed value
|
|
33
|
+
*/
|
|
34
|
+
declare const extendedJsonReviver: (_propertyKey: string, value: unknown) => unknown;
|
|
35
|
+
//#endregion
|
|
36
|
+
//#region source/script.d.ts
|
|
37
|
+
/**
|
|
38
|
+
* Converts a script to a scriptHash.
|
|
39
|
+
* @param {Uint8Array} script - The script to convert.
|
|
40
|
+
* @returns {string} The scriptHash as a reversed hex string.
|
|
41
|
+
*/
|
|
42
|
+
declare const scriptToScriptHash: (script: Uint8Array) => string;
|
|
43
|
+
//#endregion
|
|
44
|
+
//#region source/template/errors.d.ts
|
|
45
|
+
/**
|
|
46
|
+
* Formats the Zod validation failures into a single string with one line each: "- <field>: <message>" and top level failures
|
|
47
|
+
* with no field path show as "(root)" for better readability.
|
|
48
|
+
*
|
|
49
|
+
* @param issues The Zod validation failures to format.
|
|
50
|
+
* @returns A human readable error string for better debugging.
|
|
51
|
+
*/
|
|
52
|
+
declare const buildErrorDescription: (issues: $ZodIssue[]) => string;
|
|
53
|
+
/**
|
|
54
|
+
* Thrown when the provided template does not satisfy the XOTemplate schema.
|
|
55
|
+
*/
|
|
56
|
+
declare class TemplateInvalidError extends Error {
|
|
57
|
+
constructor(details: string);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Thrown when a string passed to `deserializeTemplate` cannot be parsed as JSON.
|
|
61
|
+
*/
|
|
62
|
+
declare class TemplateJsonMalformedError extends Error {
|
|
63
|
+
constructor(reason: string);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Thrown when `serializeTemplate` fails to produce a JSON string from the template.
|
|
67
|
+
*/
|
|
68
|
+
declare class TemplateSerializationFailedError extends Error {
|
|
69
|
+
constructor(reason: string);
|
|
70
|
+
}
|
|
71
|
+
//#endregion
|
|
72
|
+
//#region source/template/identifier.d.ts
|
|
73
|
+
/**
|
|
74
|
+
* Generates a deterministic template identifier by hashing the template.
|
|
75
|
+
*
|
|
76
|
+
* Note: This expects a template that has been validated by `parseTemplate`.
|
|
77
|
+
*
|
|
78
|
+
* @param template - The template to generate an identifier for.
|
|
79
|
+
* @returns The sha256 hex identifier for the template.
|
|
80
|
+
*/
|
|
81
|
+
declare const generateTemplateIdentifier: (template: XOTemplate) => string;
|
|
82
|
+
//#endregion
|
|
83
|
+
//#region source/template/parser.d.ts
|
|
84
|
+
/**
|
|
85
|
+
* Accepts a template value and returns a validated XOTemplate object. The input may be
|
|
86
|
+
* either an Extended JSON string or a pre-parsed object. Both are validated
|
|
87
|
+
* against the XOTemplate schema.
|
|
88
|
+
*
|
|
89
|
+
* @param inputTemplate - The value to validate. May be an Extended JSON string or a pre-parsed object.
|
|
90
|
+
* @returns The validated template object
|
|
91
|
+
* @throws {TemplateSerializationFailedError} If a pre-parsed object input cannot be serialized to JSON for normalization.
|
|
92
|
+
* @throws {TemplateJsonMalformedError} If the string input is not valid JSON.
|
|
93
|
+
* @throws {TemplateInvalidError} If the value does not conform to the XOTemplate schema.
|
|
94
|
+
*/
|
|
95
|
+
declare const parseTemplate: (inputTemplate: string | XOTemplate) => XOTemplate;
|
|
96
|
+
//#endregion
|
|
97
|
+
//#region source/template/schemas.d.ts
|
|
98
|
+
/**
|
|
99
|
+
* Validation schema for a BCH VM version identifier. Defines the set of known BCH VM versions
|
|
100
|
+
* that XO templates declare support for.
|
|
101
|
+
*
|
|
102
|
+
* Zod's `z.enum` requires the exact values to be defined inline because it needs to know each
|
|
103
|
+
* specific value at compile time to validate against them. Defining the versions here directly
|
|
104
|
+
* satisfies that requirement and allows `z.array(bchVmVersionSchema)` to be used elsewhere
|
|
105
|
+
*
|
|
106
|
+
* ```
|
|
107
|
+
* {
|
|
108
|
+
* "supported": [ "BCH_2025_05" ] ← each value
|
|
109
|
+
* }
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
declare const bchVmVersionSchema: z.ZodEnum<{
|
|
113
|
+
BCH_2020_05: "BCH_2020_05";
|
|
114
|
+
BCH_2021_05: "BCH_2021_05";
|
|
115
|
+
BCH_2022_05: "BCH_2022_05";
|
|
116
|
+
BCH_2023_05: "BCH_2023_05";
|
|
117
|
+
BCH_2024_05: "BCH_2024_05";
|
|
118
|
+
BCH_2025_05: "BCH_2025_05";
|
|
119
|
+
BCH_2026_05: "BCH_2026_05";
|
|
120
|
+
}>;
|
|
121
|
+
/**
|
|
122
|
+
* Validation schema for the capability of a non-fungible token. Defines the three capability
|
|
123
|
+
* types supported on BCH: minting tokens can create new NFTs, mutable tokens can update their
|
|
124
|
+
* commitment, and none tokens cannot be changed after creation.
|
|
125
|
+
*
|
|
126
|
+
* ```
|
|
127
|
+
* {
|
|
128
|
+
* "inputs|outputs": {
|
|
129
|
+
* "[id]": {
|
|
130
|
+
* "token": {
|
|
131
|
+
* "nft": {
|
|
132
|
+
* "capability": "minting" ← this schema
|
|
133
|
+
* }
|
|
134
|
+
* }
|
|
135
|
+
* }
|
|
136
|
+
* }
|
|
137
|
+
* }
|
|
138
|
+
* ```
|
|
139
|
+
*/
|
|
140
|
+
declare const xoTemplateNftCapabilitySchema: z.ZodEnum<{
|
|
141
|
+
minting: "minting";
|
|
142
|
+
mutable: "mutable";
|
|
143
|
+
none: "none";
|
|
144
|
+
}>;
|
|
145
|
+
/**
|
|
146
|
+
* Validation schema for a BCH locking script type. Defines the standard locking script types
|
|
147
|
+
* supported on BCH.
|
|
148
|
+
*
|
|
149
|
+
* ```
|
|
150
|
+
* {
|
|
151
|
+
* "lockingScripts": {
|
|
152
|
+
* "[id]": {
|
|
153
|
+
* "lockingType": "p2pkh" ← this schema
|
|
154
|
+
* }
|
|
155
|
+
* }
|
|
156
|
+
* }
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
declare const xoTemplateLockingTypeSchema: z.ZodEnum<{
|
|
160
|
+
p2s: "p2s";
|
|
161
|
+
p2pkh: "p2pkh";
|
|
162
|
+
p2sh: "p2sh";
|
|
163
|
+
}>;
|
|
164
|
+
/**
|
|
165
|
+
* Validation schema for a primitive type identifier. Defines the set of primitive types
|
|
166
|
+
* that can be declared in an XO template. Used by constants, variables, and data fields.
|
|
167
|
+
*/
|
|
168
|
+
declare const xoTemplatePrimitiveTypeSchema: z.ZodEnum<{
|
|
169
|
+
string: "string";
|
|
170
|
+
bigint: "bigint";
|
|
171
|
+
boolean: "boolean";
|
|
172
|
+
bytes: "bytes";
|
|
173
|
+
integer: "integer";
|
|
174
|
+
private_key: "private_key";
|
|
175
|
+
public_key: "public_key";
|
|
176
|
+
}>;
|
|
177
|
+
/**
|
|
178
|
+
* Validation schema for byte array fields i.e. Uint8Array instance.
|
|
179
|
+
*/
|
|
180
|
+
declare const uint8ArraySchema: z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>;
|
|
181
|
+
/**
|
|
182
|
+
* Validation schema for the Satoshis type i.e. bigint.
|
|
183
|
+
*/
|
|
184
|
+
declare const satoshisSchema: z.ZodBigInt;
|
|
185
|
+
/** Maximum character length for name fields on view properties. */
|
|
186
|
+
declare const VIEW_PROPERTIES_NAME_MAX_LENGTH = 200;
|
|
187
|
+
/** Maximum character length for description fields on view properties. */
|
|
188
|
+
declare const VIEW_PROPERTIES_DESCRIPTION_MAX_LENGTH = 5000;
|
|
189
|
+
/** Maximum character length for icon fields on view properties. */
|
|
190
|
+
declare const VIEW_PROPERTIES_ICON_MAX_LENGTH = 50;
|
|
191
|
+
/**
|
|
192
|
+
* Validation schema for view properties shared across many template elements i.e. name, description, icon.
|
|
193
|
+
* Extended by most other schemas in this file.
|
|
194
|
+
*/
|
|
195
|
+
declare const xoTemplateViewPropertiesSchema: z.ZodObject<{
|
|
196
|
+
name: z.ZodString;
|
|
197
|
+
description: z.ZodString;
|
|
198
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
199
|
+
}, z.core.$strict>;
|
|
200
|
+
/**
|
|
201
|
+
* Validation schema for the base intent structure. Describes the common data parameters shared
|
|
202
|
+
* by all intent types regardless of what they target.
|
|
203
|
+
*
|
|
204
|
+
* An optional templateIdentifier allows the intent to reference a target defined in a different
|
|
205
|
+
* template, enabling cross-template interaction.
|
|
206
|
+
*
|
|
207
|
+
* Extended by: xoTemplateActionIntentSchema, xoTemplateOutputIntentSchema,
|
|
208
|
+
* xoTemplateLockingScriptIntentSchema.
|
|
209
|
+
*/
|
|
210
|
+
declare const xoTemplateIntentSchema: z.ZodObject<{
|
|
211
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
212
|
+
role: z.ZodOptional<z.ZodString>;
|
|
213
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
214
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
215
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
216
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
217
|
+
}, z.core.$strict>;
|
|
218
|
+
/**
|
|
219
|
+
* Validation schema for an action intent. Extends the base intent structure with an action
|
|
220
|
+
* identifier. Used in locking script action lists and in the template's start array.
|
|
221
|
+
*
|
|
222
|
+
* ```
|
|
223
|
+
* {
|
|
224
|
+
* "start": [
|
|
225
|
+
* { "action": "..." } ← this schema
|
|
226
|
+
* ],
|
|
227
|
+
* "lockingScripts": {
|
|
228
|
+
* "[id]": {
|
|
229
|
+
* "actions": [
|
|
230
|
+
* { "action": "..." } ← this schema
|
|
231
|
+
* ],
|
|
232
|
+
* "roles": {
|
|
233
|
+
* "[roleId]": {
|
|
234
|
+
* "actions": [
|
|
235
|
+
* { "action": "..." } ← this schema
|
|
236
|
+
* ]
|
|
237
|
+
* }
|
|
238
|
+
* }
|
|
239
|
+
* }
|
|
240
|
+
* }
|
|
241
|
+
* }
|
|
242
|
+
* ```
|
|
243
|
+
*/
|
|
244
|
+
declare const xoTemplateActionIntentSchema: z.ZodObject<{
|
|
245
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
246
|
+
role: z.ZodOptional<z.ZodString>;
|
|
247
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
248
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
249
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
250
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
251
|
+
action: z.ZodString;
|
|
252
|
+
}, z.core.$strict>;
|
|
253
|
+
/**
|
|
254
|
+
* Validation schema for an output intent. Extends the base intent structure with an output
|
|
255
|
+
* identifier. Used in the template's defaults block.
|
|
256
|
+
*
|
|
257
|
+
* ```
|
|
258
|
+
* {
|
|
259
|
+
* "defaults": {
|
|
260
|
+
* "change": { "output": "..." } ← this schema
|
|
261
|
+
* }
|
|
262
|
+
* }
|
|
263
|
+
* ```
|
|
264
|
+
*/
|
|
265
|
+
declare const xoTemplateOutputIntentSchema: z.ZodObject<{
|
|
266
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
267
|
+
role: z.ZodOptional<z.ZodString>;
|
|
268
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
269
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
270
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
271
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
272
|
+
output: z.ZodString;
|
|
273
|
+
}, z.core.$strict>;
|
|
274
|
+
/**
|
|
275
|
+
* Validation schema for a locking script intent. Extends the base intent structure with
|
|
276
|
+
* a locking script identifier.
|
|
277
|
+
*
|
|
278
|
+
* @todo The location of this schema in the template JSON is not yet determined.
|
|
279
|
+
*/
|
|
280
|
+
declare const xoTemplateLockingScriptIntentSchema: z.ZodObject<{
|
|
281
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
282
|
+
role: z.ZodOptional<z.ZodString>;
|
|
283
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
284
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
285
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
286
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
287
|
+
lockingScript: z.ZodString;
|
|
288
|
+
}, z.core.$strict>;
|
|
289
|
+
/**
|
|
290
|
+
* Validation schema for the slot count configuration on a role requirement. Declares how many
|
|
291
|
+
* participants of a given role are needed. min sets the lower bound and max sets the upper bound.
|
|
292
|
+
* When max is absent, there is no upper limit.
|
|
293
|
+
*
|
|
294
|
+
* ```
|
|
295
|
+
* {
|
|
296
|
+
* "actions": {
|
|
297
|
+
* "[id]": {
|
|
298
|
+
* "requirements": {
|
|
299
|
+
* "participants": [
|
|
300
|
+
* { "slots": { "min": 1, "max": 1 } } ← this schema
|
|
301
|
+
* ]
|
|
302
|
+
* }
|
|
303
|
+
* }
|
|
304
|
+
* }
|
|
305
|
+
* }
|
|
306
|
+
* ```
|
|
307
|
+
*/
|
|
308
|
+
declare const xoTemplateRoleSlotsRequirementsSchema: z.ZodObject<{
|
|
309
|
+
min: z.ZodNumber;
|
|
310
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
311
|
+
}, z.core.$strict>;
|
|
312
|
+
/**
|
|
313
|
+
* Validation schema for the capability requirements declared on a role within an action.
|
|
314
|
+
* Describes what data, secrets, or state the role is responsible for providing when participating in an action.
|
|
315
|
+
*
|
|
316
|
+
* ```
|
|
317
|
+
* {
|
|
318
|
+
* "actions": {
|
|
319
|
+
* "[id]": {
|
|
320
|
+
* "roles": {
|
|
321
|
+
* "[roleId]": {
|
|
322
|
+
* "requirements": { "variables": [], "secrets": [] } ← this schema
|
|
323
|
+
* }
|
|
324
|
+
* }
|
|
325
|
+
* }
|
|
326
|
+
* }
|
|
327
|
+
* }
|
|
328
|
+
* ```
|
|
329
|
+
*/
|
|
330
|
+
declare const xoTemplateActionRoleRequirementsSchema: z.ZodObject<{
|
|
331
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
332
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
333
|
+
}, z.core.$strict>;
|
|
334
|
+
/**
|
|
335
|
+
* Validation schema for a role-specific definition within an action.
|
|
336
|
+
* All view properties are optional.
|
|
337
|
+
*
|
|
338
|
+
* ```
|
|
339
|
+
* {
|
|
340
|
+
* "actions": {
|
|
341
|
+
* "[id]": {
|
|
342
|
+
* "roles": {
|
|
343
|
+
* "[roleId]": { } ← this schema
|
|
344
|
+
* }
|
|
345
|
+
* }
|
|
346
|
+
* }
|
|
347
|
+
* }
|
|
348
|
+
* ```
|
|
349
|
+
*/
|
|
350
|
+
declare const xoTemplateActionRoleSchema: z.ZodObject<{
|
|
351
|
+
name: z.ZodOptional<z.ZodString>;
|
|
352
|
+
description: z.ZodOptional<z.ZodString>;
|
|
353
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
354
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
355
|
+
requirements: z.ZodOptional<z.ZodObject<{
|
|
356
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
357
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
358
|
+
}, z.core.$strict>>;
|
|
359
|
+
}, z.core.$strict>;
|
|
360
|
+
/**
|
|
361
|
+
* Validation schema for a role participation requirement in an action's requirements block.
|
|
362
|
+
*
|
|
363
|
+
* ```
|
|
364
|
+
* {
|
|
365
|
+
* "actions": {
|
|
366
|
+
* "[id]": {
|
|
367
|
+
* "requirements": {
|
|
368
|
+
* "participants": [
|
|
369
|
+
* { "role": "...", "slots": { } } ← this schema
|
|
370
|
+
* ]
|
|
371
|
+
* }
|
|
372
|
+
* }
|
|
373
|
+
* }
|
|
374
|
+
* }
|
|
375
|
+
* ```
|
|
376
|
+
*/
|
|
377
|
+
declare const xoTemplateRoleSlotSchema: z.ZodObject<{
|
|
378
|
+
role: z.ZodString;
|
|
379
|
+
slots: z.ZodObject<{
|
|
380
|
+
min: z.ZodNumber;
|
|
381
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
382
|
+
}, z.core.$strict>;
|
|
383
|
+
}, z.core.$strict>;
|
|
384
|
+
/**
|
|
385
|
+
* Validation schema for the requirements of an action.
|
|
386
|
+
*
|
|
387
|
+
* ```
|
|
388
|
+
* {
|
|
389
|
+
* "actions": {
|
|
390
|
+
* "[id]": {
|
|
391
|
+
* "requirements": { "participants": [], "secrets": [] } ← this schema
|
|
392
|
+
* }
|
|
393
|
+
* }
|
|
394
|
+
* }
|
|
395
|
+
* ```
|
|
396
|
+
*/
|
|
397
|
+
declare const xoTemplateActionRequirementsSchema: z.ZodObject<{
|
|
398
|
+
participants: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
399
|
+
role: z.ZodString;
|
|
400
|
+
slots: z.ZodObject<{
|
|
401
|
+
min: z.ZodNumber;
|
|
402
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
403
|
+
}, z.core.$strict>;
|
|
404
|
+
}, z.core.$strict>>>;
|
|
405
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
406
|
+
}, z.core.$strict>;
|
|
407
|
+
/**
|
|
408
|
+
* Validation schema for an action definition.
|
|
409
|
+
*
|
|
410
|
+
* ```
|
|
411
|
+
* {
|
|
412
|
+
* "actions": {
|
|
413
|
+
* "[id]": { } ← this schema
|
|
414
|
+
* }
|
|
415
|
+
* }
|
|
416
|
+
* ```
|
|
417
|
+
*/
|
|
418
|
+
declare const xoTemplateActionSchema: z.ZodObject<{
|
|
419
|
+
name: z.ZodString;
|
|
420
|
+
description: z.ZodString;
|
|
421
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
422
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
423
|
+
name: z.ZodOptional<z.ZodString>;
|
|
424
|
+
description: z.ZodOptional<z.ZodString>;
|
|
425
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
426
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
427
|
+
requirements: z.ZodOptional<z.ZodObject<{
|
|
428
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
429
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
430
|
+
}, z.core.$strict>>;
|
|
431
|
+
}, z.core.$strict>>>;
|
|
432
|
+
requirements: z.ZodOptional<z.ZodObject<{
|
|
433
|
+
participants: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
434
|
+
role: z.ZodString;
|
|
435
|
+
slots: z.ZodObject<{
|
|
436
|
+
min: z.ZodNumber;
|
|
437
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
438
|
+
}, z.core.$strict>;
|
|
439
|
+
}, z.core.$strict>>>;
|
|
440
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
441
|
+
}, z.core.$strict>>;
|
|
442
|
+
conditions: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
443
|
+
transaction: z.ZodOptional<z.ZodString>;
|
|
444
|
+
data: z.ZodOptional<z.ZodString>;
|
|
445
|
+
}, z.core.$strict>;
|
|
446
|
+
/**
|
|
447
|
+
* Validation schema for the non-fungible token configuration within a token field.
|
|
448
|
+
*
|
|
449
|
+
* ```
|
|
450
|
+
* {
|
|
451
|
+
* "inputs|outputs": {
|
|
452
|
+
* "[id]": {
|
|
453
|
+
* "token": {
|
|
454
|
+
* "nft": { } ← this schema
|
|
455
|
+
* }
|
|
456
|
+
* }
|
|
457
|
+
* }
|
|
458
|
+
* }
|
|
459
|
+
* ```
|
|
460
|
+
*/
|
|
461
|
+
declare const xoTemplateNonFungibleTokenDetailsSchema: z.ZodObject<{
|
|
462
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
463
|
+
minting: "minting";
|
|
464
|
+
mutable: "mutable";
|
|
465
|
+
none: "none";
|
|
466
|
+
}>, z.ZodString]>>;
|
|
467
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
468
|
+
}, z.core.$strict>;
|
|
469
|
+
/**
|
|
470
|
+
* Validation schema for the token configuration on inputs and outputs.
|
|
471
|
+
*
|
|
472
|
+
* ```
|
|
473
|
+
* {
|
|
474
|
+
* "inputs|outputs": {
|
|
475
|
+
* "[id]": {
|
|
476
|
+
* "token": { } ← this schema
|
|
477
|
+
* }
|
|
478
|
+
* }
|
|
479
|
+
* }
|
|
480
|
+
* ```
|
|
481
|
+
*/
|
|
482
|
+
declare const xoTemplateTokenSchema: z.ZodObject<{
|
|
483
|
+
category: z.ZodOptional<z.ZodString>;
|
|
484
|
+
amount: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodNull]>>;
|
|
485
|
+
nft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
486
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
487
|
+
minting: "minting";
|
|
488
|
+
mutable: "mutable";
|
|
489
|
+
none: "none";
|
|
490
|
+
}>, z.ZodString]>>;
|
|
491
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
492
|
+
}, z.core.$strict>>>;
|
|
493
|
+
}, z.core.$strict>;
|
|
494
|
+
/**
|
|
495
|
+
* Validation schema for the asset amounts configuration. Used by omitChangeAmounts on inputs
|
|
496
|
+
* and by balance on locking scripts, outputs, and their roles.
|
|
497
|
+
*/
|
|
498
|
+
declare const xoTemplateAssetAmountsSchema: z.ZodObject<{
|
|
499
|
+
satoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
500
|
+
fungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
501
|
+
nonfungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>;
|
|
502
|
+
}, z.core.$strict>;
|
|
503
|
+
/**
|
|
504
|
+
* Validation schema for the state configuration shared by a locking script and its individual roles.
|
|
505
|
+
* Declares which variables and secrets are tracked in the on-chain state for a given participant.
|
|
506
|
+
*
|
|
507
|
+
* ```
|
|
508
|
+
* {
|
|
509
|
+
* "lockingScripts": {
|
|
510
|
+
* "[id]": {
|
|
511
|
+
* "state": { "variables": [], "secrets": [] } ← this schema
|
|
512
|
+
* "roles": {
|
|
513
|
+
* "[roleId]": {
|
|
514
|
+
* "state": { "variables": [], "secrets": [] } ← this schema
|
|
515
|
+
* }
|
|
516
|
+
* }
|
|
517
|
+
* }
|
|
518
|
+
* }
|
|
519
|
+
* }
|
|
520
|
+
* ```
|
|
521
|
+
*/
|
|
522
|
+
declare const xoTemplateStateSchema: z.ZodObject<{
|
|
523
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
524
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
525
|
+
}, z.core.$strict>;
|
|
526
|
+
/**
|
|
527
|
+
* Validation schema for a role definition for a locking script.
|
|
528
|
+
*
|
|
529
|
+
* ```
|
|
530
|
+
* {
|
|
531
|
+
* "lockingScripts": {
|
|
532
|
+
* "[id]": {
|
|
533
|
+
* "roles": {
|
|
534
|
+
* "[roleId]": { } ← this schema
|
|
535
|
+
* }
|
|
536
|
+
* }
|
|
537
|
+
* }
|
|
538
|
+
* }
|
|
539
|
+
* ```
|
|
540
|
+
*/
|
|
541
|
+
declare const xoTemplateLockingScriptRoleSchema: z.ZodObject<{
|
|
542
|
+
name: z.ZodOptional<z.ZodString>;
|
|
543
|
+
description: z.ZodOptional<z.ZodString>;
|
|
544
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
545
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
546
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
547
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
548
|
+
}, z.core.$strict>>;
|
|
549
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
550
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
551
|
+
role: z.ZodOptional<z.ZodString>;
|
|
552
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
553
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
554
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
555
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
556
|
+
action: z.ZodString;
|
|
557
|
+
}, z.core.$strict>>>;
|
|
558
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
559
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
560
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
561
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
562
|
+
}, z.core.$strict>>;
|
|
563
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
564
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
565
|
+
}, z.core.$strict>;
|
|
566
|
+
/**
|
|
567
|
+
* Validation schema for a locking script definition.
|
|
568
|
+
*
|
|
569
|
+
* ```
|
|
570
|
+
* {
|
|
571
|
+
* "lockingScripts": {
|
|
572
|
+
* "[id]": { } ← this schema
|
|
573
|
+
* }
|
|
574
|
+
* }
|
|
575
|
+
* ```
|
|
576
|
+
*/
|
|
577
|
+
declare const xoTemplateLockingScriptSchema: z.ZodObject<{
|
|
578
|
+
name: z.ZodString;
|
|
579
|
+
description: z.ZodString;
|
|
580
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
581
|
+
lockingType: z.ZodOptional<z.ZodEnum<{
|
|
582
|
+
p2s: "p2s";
|
|
583
|
+
p2pkh: "p2pkh";
|
|
584
|
+
p2sh: "p2sh";
|
|
585
|
+
}>>;
|
|
586
|
+
lockingBytecode: z.ZodString;
|
|
587
|
+
unlockingBytecode: z.ZodOptional<z.ZodString>;
|
|
588
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
589
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
590
|
+
role: z.ZodOptional<z.ZodString>;
|
|
591
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
592
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
593
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
594
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
595
|
+
action: z.ZodString;
|
|
596
|
+
}, z.core.$strict>>>;
|
|
597
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
598
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
599
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
600
|
+
}, z.core.$strict>>;
|
|
601
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
602
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
603
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
604
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
605
|
+
}, z.core.$strict>>;
|
|
606
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
607
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
608
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
609
|
+
name: z.ZodOptional<z.ZodString>;
|
|
610
|
+
description: z.ZodOptional<z.ZodString>;
|
|
611
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
612
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
613
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
614
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
615
|
+
}, z.core.$strict>>;
|
|
616
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
617
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
618
|
+
role: z.ZodOptional<z.ZodString>;
|
|
619
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
620
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
621
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
622
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
623
|
+
action: z.ZodString;
|
|
624
|
+
}, z.core.$strict>>>;
|
|
625
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
626
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
627
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
628
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
629
|
+
}, z.core.$strict>>;
|
|
630
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
631
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
632
|
+
}, z.core.$strict>>>;
|
|
633
|
+
}, z.core.$strict>;
|
|
634
|
+
/**
|
|
635
|
+
* Validation schema for an input definition in the template. Extends view properties with optional
|
|
636
|
+
* satoshi value, token configuration, and other transaction level fields.
|
|
637
|
+
*
|
|
638
|
+
* ```
|
|
639
|
+
* {
|
|
640
|
+
* "inputs": {
|
|
641
|
+
* "[id]": { } ← this schema
|
|
642
|
+
* }
|
|
643
|
+
* }
|
|
644
|
+
* ```
|
|
645
|
+
*/
|
|
646
|
+
declare const xoTemplateInputSchema: z.ZodObject<{
|
|
647
|
+
name: z.ZodString;
|
|
648
|
+
description: z.ZodString;
|
|
649
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
650
|
+
valueSatoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString]>>;
|
|
651
|
+
token: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
652
|
+
category: z.ZodOptional<z.ZodString>;
|
|
653
|
+
amount: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodNull]>>;
|
|
654
|
+
nft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
655
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
656
|
+
minting: "minting";
|
|
657
|
+
mutable: "mutable";
|
|
658
|
+
none: "none";
|
|
659
|
+
}>, z.ZodString]>>;
|
|
660
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
661
|
+
}, z.core.$strict>>>;
|
|
662
|
+
}, z.core.$strict>>>;
|
|
663
|
+
sequenceNumber: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
664
|
+
unlockingScript: z.ZodOptional<z.ZodString>;
|
|
665
|
+
omitChangeAmounts: z.ZodOptional<z.ZodObject<{
|
|
666
|
+
satoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
667
|
+
fungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
668
|
+
nonfungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>;
|
|
669
|
+
}, z.core.$strict>>;
|
|
670
|
+
}, z.core.$strict>;
|
|
671
|
+
/**
|
|
672
|
+
* Validation schema for an output definition. Extends the locking script schema so that
|
|
673
|
+
* every output inherits the same locking script fields and adds output-specific fields.
|
|
674
|
+
*
|
|
675
|
+
* ```
|
|
676
|
+
* {
|
|
677
|
+
* "outputs": {
|
|
678
|
+
* "[id]": { } ← this schema
|
|
679
|
+
* }
|
|
680
|
+
* }
|
|
681
|
+
* ```
|
|
682
|
+
*/
|
|
683
|
+
declare const xoTemplateOutputSchema: z.ZodObject<{
|
|
684
|
+
name: z.ZodString;
|
|
685
|
+
description: z.ZodString;
|
|
686
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
687
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
688
|
+
name: z.ZodOptional<z.ZodString>;
|
|
689
|
+
description: z.ZodOptional<z.ZodString>;
|
|
690
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
691
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
692
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
693
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
694
|
+
}, z.core.$strict>>;
|
|
695
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
696
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
697
|
+
role: z.ZodOptional<z.ZodString>;
|
|
698
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
699
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
700
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
701
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
702
|
+
action: z.ZodString;
|
|
703
|
+
}, z.core.$strict>>>;
|
|
704
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
705
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
706
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
707
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
708
|
+
}, z.core.$strict>>;
|
|
709
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
710
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
711
|
+
}, z.core.$strict>>>;
|
|
712
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
713
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
714
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
715
|
+
}, z.core.$strict>>;
|
|
716
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
717
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
718
|
+
role: z.ZodOptional<z.ZodString>;
|
|
719
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
720
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
721
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
722
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
723
|
+
action: z.ZodString;
|
|
724
|
+
}, z.core.$strict>>>;
|
|
725
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
726
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
727
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
728
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
729
|
+
}, z.core.$strict>>;
|
|
730
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
731
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
732
|
+
lockingScript: z.ZodString;
|
|
733
|
+
valueSatoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString]>>;
|
|
734
|
+
token: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
735
|
+
category: z.ZodOptional<z.ZodString>;
|
|
736
|
+
amount: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodNull]>>;
|
|
737
|
+
nft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
738
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
739
|
+
minting: "minting";
|
|
740
|
+
mutable: "mutable";
|
|
741
|
+
none: "none";
|
|
742
|
+
}>, z.ZodString]>>;
|
|
743
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
744
|
+
}, z.core.$strict>>>;
|
|
745
|
+
}, z.core.$strict>>>;
|
|
746
|
+
}, z.core.$strict>;
|
|
747
|
+
/**
|
|
748
|
+
* Validation schema for a transaction input reference for a transaction definition.
|
|
749
|
+
*
|
|
750
|
+
* ```
|
|
751
|
+
* {
|
|
752
|
+
* "transactions": {
|
|
753
|
+
* "[id]": {
|
|
754
|
+
* "inputs": [
|
|
755
|
+
* { "input": "..." } ← this schema
|
|
756
|
+
* ]
|
|
757
|
+
* }
|
|
758
|
+
* }
|
|
759
|
+
* }
|
|
760
|
+
* ```
|
|
761
|
+
*/
|
|
762
|
+
declare const xoTemplateTransactionInputSchema: z.ZodObject<{
|
|
763
|
+
input: z.ZodString;
|
|
764
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
765
|
+
}, z.core.$strict>;
|
|
766
|
+
/**
|
|
767
|
+
* Validation schema for a transaction output reference for a transaction definition.
|
|
768
|
+
*
|
|
769
|
+
* ```
|
|
770
|
+
* {
|
|
771
|
+
* "transactions": {
|
|
772
|
+
* "[id]": {
|
|
773
|
+
* "outputs": [
|
|
774
|
+
* { "output": "..." } ← this schema
|
|
775
|
+
* ]
|
|
776
|
+
* }
|
|
777
|
+
* }
|
|
778
|
+
* }
|
|
779
|
+
* ```
|
|
780
|
+
*/
|
|
781
|
+
declare const xoTemplateTransactionOutputSchema: z.ZodObject<{
|
|
782
|
+
output: z.ZodString;
|
|
783
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
784
|
+
}, z.core.$strict>;
|
|
785
|
+
/**
|
|
786
|
+
* Validation schema for role-specific data for a transaction definition.
|
|
787
|
+
*
|
|
788
|
+
* ```
|
|
789
|
+
* {
|
|
790
|
+
* "transactions": {
|
|
791
|
+
* "[id]": {
|
|
792
|
+
* "roles": {
|
|
793
|
+
* "[roleId]": { } ← this schema
|
|
794
|
+
* }
|
|
795
|
+
* }
|
|
796
|
+
* }
|
|
797
|
+
* }
|
|
798
|
+
* ```
|
|
799
|
+
*/
|
|
800
|
+
declare const xoTemplateTransactionRoleDataSchema: z.ZodObject<{
|
|
801
|
+
name: z.ZodOptional<z.ZodString>;
|
|
802
|
+
description: z.ZodOptional<z.ZodString>;
|
|
803
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
804
|
+
inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
805
|
+
input: z.ZodString;
|
|
806
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
807
|
+
}, z.core.$strict>>>;
|
|
808
|
+
outputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
809
|
+
output: z.ZodString;
|
|
810
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
811
|
+
}, z.core.$strict>>>;
|
|
812
|
+
}, z.core.$strict>;
|
|
813
|
+
/**
|
|
814
|
+
* Validation schema for a transaction template definition.
|
|
815
|
+
*
|
|
816
|
+
* ```
|
|
817
|
+
* {
|
|
818
|
+
* "transactions": {
|
|
819
|
+
* "[id]": { } ← this schema
|
|
820
|
+
* }
|
|
821
|
+
* }
|
|
822
|
+
* ```
|
|
823
|
+
*/
|
|
824
|
+
declare const xoTemplateTransactionSchema: z.ZodObject<{
|
|
825
|
+
name: z.ZodString;
|
|
826
|
+
description: z.ZodString;
|
|
827
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
828
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
829
|
+
locktime: z.ZodOptional<z.ZodNumber>;
|
|
830
|
+
inputs: z.ZodArray<z.ZodObject<{
|
|
831
|
+
input: z.ZodString;
|
|
832
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
833
|
+
}, z.core.$strict>>;
|
|
834
|
+
outputs: z.ZodArray<z.ZodObject<{
|
|
835
|
+
output: z.ZodString;
|
|
836
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
837
|
+
}, z.core.$strict>>;
|
|
838
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
839
|
+
name: z.ZodOptional<z.ZodString>;
|
|
840
|
+
description: z.ZodOptional<z.ZodString>;
|
|
841
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
842
|
+
inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
843
|
+
input: z.ZodString;
|
|
844
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
845
|
+
}, z.core.$strict>>>;
|
|
846
|
+
outputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
847
|
+
output: z.ZodString;
|
|
848
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
849
|
+
}, z.core.$strict>>>;
|
|
850
|
+
}, z.core.$strict>>>;
|
|
851
|
+
composable: z.ZodOptional<z.ZodBoolean>;
|
|
852
|
+
}, z.core.$strict>;
|
|
853
|
+
/**
|
|
854
|
+
* Validation schema for a constant value definition.
|
|
855
|
+
*
|
|
856
|
+
* ```
|
|
857
|
+
* {
|
|
858
|
+
* "constants": {
|
|
859
|
+
* "[id]": { } ← this schema
|
|
860
|
+
* }
|
|
861
|
+
* }
|
|
862
|
+
* ```
|
|
863
|
+
*/
|
|
864
|
+
declare const xoTemplateConstantSchema: z.ZodObject<{
|
|
865
|
+
name: z.ZodString;
|
|
866
|
+
description: z.ZodString;
|
|
867
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
868
|
+
type: z.ZodEnum<{
|
|
869
|
+
string: "string";
|
|
870
|
+
bigint: "bigint";
|
|
871
|
+
boolean: "boolean";
|
|
872
|
+
bytes: "bytes";
|
|
873
|
+
integer: "integer";
|
|
874
|
+
private_key: "private_key";
|
|
875
|
+
public_key: "public_key";
|
|
876
|
+
}>;
|
|
877
|
+
value: z.ZodUnknown;
|
|
878
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
879
|
+
}, z.core.$strict>;
|
|
880
|
+
/**
|
|
881
|
+
* Validation schema for a data field definition.
|
|
882
|
+
*
|
|
883
|
+
* ```
|
|
884
|
+
* {
|
|
885
|
+
* "data": {
|
|
886
|
+
* "[id]": { } ← this schema
|
|
887
|
+
* }
|
|
888
|
+
* }
|
|
889
|
+
* ```
|
|
890
|
+
*/
|
|
891
|
+
declare const xoTemplateDataSchema: z.ZodObject<{
|
|
892
|
+
type: z.ZodEnum<{
|
|
893
|
+
string: "string";
|
|
894
|
+
bigint: "bigint";
|
|
895
|
+
boolean: "boolean";
|
|
896
|
+
bytes: "bytes";
|
|
897
|
+
integer: "integer";
|
|
898
|
+
private_key: "private_key";
|
|
899
|
+
public_key: "public_key";
|
|
900
|
+
}>;
|
|
901
|
+
value: z.ZodUnknown;
|
|
902
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
903
|
+
}, z.core.$strict>;
|
|
904
|
+
/**
|
|
905
|
+
* Validation schema for an import default value intent. Extends the base intent with optional
|
|
906
|
+
* view properties that the engine evaluates at runtime to produce human-readable output.
|
|
907
|
+
*
|
|
908
|
+
* ```
|
|
909
|
+
* {
|
|
910
|
+
* "variables": {
|
|
911
|
+
* "[id]": {
|
|
912
|
+
* "importDefaultValue": { } ← this schema
|
|
913
|
+
* }
|
|
914
|
+
* }
|
|
915
|
+
* }
|
|
916
|
+
* ```
|
|
917
|
+
*/
|
|
918
|
+
declare const xoTemplateImportDefaultValueSchema: z.ZodObject<{
|
|
919
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
920
|
+
role: z.ZodOptional<z.ZodString>;
|
|
921
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
922
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
923
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
924
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
925
|
+
name: z.ZodOptional<z.ZodString>;
|
|
926
|
+
description: z.ZodOptional<z.ZodString>;
|
|
927
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
928
|
+
}, z.core.$strict>;
|
|
929
|
+
/**
|
|
930
|
+
* Validation schema for a variable definition.
|
|
931
|
+
*
|
|
932
|
+
* ```
|
|
933
|
+
* {
|
|
934
|
+
* "variables": {
|
|
935
|
+
* "[id]": { } ← this schema
|
|
936
|
+
* }
|
|
937
|
+
* }
|
|
938
|
+
* ```
|
|
939
|
+
*/
|
|
940
|
+
declare const xoTemplateVariableSchema: z.ZodObject<{
|
|
941
|
+
name: z.ZodString;
|
|
942
|
+
description: z.ZodString;
|
|
943
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
944
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
945
|
+
string: "string";
|
|
946
|
+
bigint: "bigint";
|
|
947
|
+
boolean: "boolean";
|
|
948
|
+
bytes: "bytes";
|
|
949
|
+
integer: "integer";
|
|
950
|
+
private_key: "private_key";
|
|
951
|
+
public_key: "public_key";
|
|
952
|
+
}>>;
|
|
953
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
954
|
+
importDefaultValue: z.ZodOptional<z.ZodObject<{
|
|
955
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
956
|
+
role: z.ZodOptional<z.ZodString>;
|
|
957
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
958
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
959
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
960
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
961
|
+
name: z.ZodOptional<z.ZodString>;
|
|
962
|
+
description: z.ZodOptional<z.ZodString>;
|
|
963
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
964
|
+
}, z.core.$strict>>;
|
|
965
|
+
}, z.core.$strict>;
|
|
966
|
+
/**
|
|
967
|
+
* Validation schema for a resource reference attached to a template element. Extends view
|
|
968
|
+
* properties with a URL pointing to external documentation or tooling.
|
|
969
|
+
*
|
|
970
|
+
* ```
|
|
971
|
+
* {
|
|
972
|
+
* "resources": [
|
|
973
|
+
* { "name": "...", "description": "...", "url": "..." } ← this schema
|
|
974
|
+
* ]
|
|
975
|
+
* }
|
|
976
|
+
* ```
|
|
977
|
+
*/
|
|
978
|
+
declare const xoTemplateResourceSchema: z.ZodObject<{
|
|
979
|
+
name: z.ZodString;
|
|
980
|
+
description: z.ZodString;
|
|
981
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
982
|
+
url: z.ZodString;
|
|
983
|
+
}, z.core.$strict>;
|
|
984
|
+
/**
|
|
985
|
+
* Validation schema for an icon reference.
|
|
986
|
+
*
|
|
987
|
+
* ```
|
|
988
|
+
* {
|
|
989
|
+
* "icons": [
|
|
990
|
+
* { "name": "...", "hash": "..." } ← this schema
|
|
991
|
+
* ]
|
|
992
|
+
* }
|
|
993
|
+
* ```
|
|
994
|
+
*/
|
|
995
|
+
declare const xoTemplateIconSchema: z.ZodObject<{
|
|
996
|
+
name: z.ZodString;
|
|
997
|
+
hash: z.ZodString;
|
|
998
|
+
}, z.core.$strict>;
|
|
999
|
+
/**
|
|
1000
|
+
* Validation schema for the defaults block of a template.
|
|
1001
|
+
*
|
|
1002
|
+
* ```
|
|
1003
|
+
* {
|
|
1004
|
+
* "defaults": { } ← this schema
|
|
1005
|
+
* }
|
|
1006
|
+
* ```
|
|
1007
|
+
*/
|
|
1008
|
+
declare const xoTemplateDefaultsSchema: z.ZodObject<{
|
|
1009
|
+
change: z.ZodOptional<z.ZodObject<{
|
|
1010
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1011
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1012
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1013
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1014
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1015
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1016
|
+
output: z.ZodString;
|
|
1017
|
+
}, z.core.$strict>>;
|
|
1018
|
+
}, z.core.$strict>;
|
|
1019
|
+
/**
|
|
1020
|
+
* Validation schema for the full XOTemplate type.
|
|
1021
|
+
*/
|
|
1022
|
+
declare const xoTemplateSchema: z.ZodObject<{
|
|
1023
|
+
name: z.ZodString;
|
|
1024
|
+
description: z.ZodString;
|
|
1025
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1026
|
+
$schema: z.ZodString;
|
|
1027
|
+
version: z.ZodOptional<z.ZodString>;
|
|
1028
|
+
supported: z.ZodArray<z.ZodEnum<{
|
|
1029
|
+
BCH_2020_05: "BCH_2020_05";
|
|
1030
|
+
BCH_2021_05: "BCH_2021_05";
|
|
1031
|
+
BCH_2022_05: "BCH_2022_05";
|
|
1032
|
+
BCH_2023_05: "BCH_2023_05";
|
|
1033
|
+
BCH_2024_05: "BCH_2024_05";
|
|
1034
|
+
BCH_2025_05: "BCH_2025_05";
|
|
1035
|
+
BCH_2026_05: "BCH_2026_05";
|
|
1036
|
+
}>>;
|
|
1037
|
+
defaults: z.ZodOptional<z.ZodObject<{
|
|
1038
|
+
change: z.ZodOptional<z.ZodObject<{
|
|
1039
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1040
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1041
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1042
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1043
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1044
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1045
|
+
output: z.ZodString;
|
|
1046
|
+
}, z.core.$strict>>;
|
|
1047
|
+
}, z.core.$strict>>;
|
|
1048
|
+
roles: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1049
|
+
name: z.ZodString;
|
|
1050
|
+
description: z.ZodString;
|
|
1051
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1052
|
+
}, z.core.$strict>>;
|
|
1053
|
+
start: z.ZodArray<z.ZodObject<{
|
|
1054
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1055
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1056
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1057
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1058
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1059
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1060
|
+
action: z.ZodString;
|
|
1061
|
+
}, z.core.$strict>>;
|
|
1062
|
+
actions: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1063
|
+
name: z.ZodString;
|
|
1064
|
+
description: z.ZodString;
|
|
1065
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1066
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1067
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1068
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1069
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1070
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1071
|
+
requirements: z.ZodOptional<z.ZodObject<{
|
|
1072
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1073
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1074
|
+
}, z.core.$strict>>;
|
|
1075
|
+
}, z.core.$strict>>>;
|
|
1076
|
+
requirements: z.ZodOptional<z.ZodObject<{
|
|
1077
|
+
participants: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1078
|
+
role: z.ZodString;
|
|
1079
|
+
slots: z.ZodObject<{
|
|
1080
|
+
min: z.ZodNumber;
|
|
1081
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
1082
|
+
}, z.core.$strict>;
|
|
1083
|
+
}, z.core.$strict>>>;
|
|
1084
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1085
|
+
}, z.core.$strict>>;
|
|
1086
|
+
conditions: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1087
|
+
transaction: z.ZodOptional<z.ZodString>;
|
|
1088
|
+
data: z.ZodOptional<z.ZodString>;
|
|
1089
|
+
}, z.core.$strict>>;
|
|
1090
|
+
data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1091
|
+
type: z.ZodEnum<{
|
|
1092
|
+
string: "string";
|
|
1093
|
+
bigint: "bigint";
|
|
1094
|
+
boolean: "boolean";
|
|
1095
|
+
bytes: "bytes";
|
|
1096
|
+
integer: "integer";
|
|
1097
|
+
private_key: "private_key";
|
|
1098
|
+
public_key: "public_key";
|
|
1099
|
+
}>;
|
|
1100
|
+
value: z.ZodUnknown;
|
|
1101
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
1102
|
+
}, z.core.$strict>>>;
|
|
1103
|
+
transactions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1104
|
+
name: z.ZodString;
|
|
1105
|
+
description: z.ZodString;
|
|
1106
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1107
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
1108
|
+
locktime: z.ZodOptional<z.ZodNumber>;
|
|
1109
|
+
inputs: z.ZodArray<z.ZodObject<{
|
|
1110
|
+
input: z.ZodString;
|
|
1111
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
1112
|
+
}, z.core.$strict>>;
|
|
1113
|
+
outputs: z.ZodArray<z.ZodObject<{
|
|
1114
|
+
output: z.ZodString;
|
|
1115
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
1116
|
+
}, z.core.$strict>>;
|
|
1117
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1118
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1119
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1120
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1121
|
+
inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1122
|
+
input: z.ZodString;
|
|
1123
|
+
inputIndex: z.ZodOptional<z.ZodNumber>;
|
|
1124
|
+
}, z.core.$strict>>>;
|
|
1125
|
+
outputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1126
|
+
output: z.ZodString;
|
|
1127
|
+
outputIndex: z.ZodOptional<z.ZodNumber>;
|
|
1128
|
+
}, z.core.$strict>>>;
|
|
1129
|
+
}, z.core.$strict>>>;
|
|
1130
|
+
composable: z.ZodOptional<z.ZodBoolean>;
|
|
1131
|
+
}, z.core.$strict>>>;
|
|
1132
|
+
inputs: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1133
|
+
name: z.ZodString;
|
|
1134
|
+
description: z.ZodString;
|
|
1135
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1136
|
+
valueSatoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString]>>;
|
|
1137
|
+
token: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1138
|
+
category: z.ZodOptional<z.ZodString>;
|
|
1139
|
+
amount: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodNull]>>;
|
|
1140
|
+
nft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1141
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
1142
|
+
minting: "minting";
|
|
1143
|
+
mutable: "mutable";
|
|
1144
|
+
none: "none";
|
|
1145
|
+
}>, z.ZodString]>>;
|
|
1146
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
1147
|
+
}, z.core.$strict>>>;
|
|
1148
|
+
}, z.core.$strict>>>;
|
|
1149
|
+
sequenceNumber: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
1150
|
+
unlockingScript: z.ZodOptional<z.ZodString>;
|
|
1151
|
+
omitChangeAmounts: z.ZodOptional<z.ZodObject<{
|
|
1152
|
+
satoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
1153
|
+
fungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>;
|
|
1154
|
+
nonfungibleTokens: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>;
|
|
1155
|
+
}, z.core.$strict>>;
|
|
1156
|
+
}, z.core.$strict>>;
|
|
1157
|
+
outputs: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1158
|
+
name: z.ZodString;
|
|
1159
|
+
description: z.ZodString;
|
|
1160
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1161
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1162
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1163
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1164
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1165
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
1166
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1167
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1168
|
+
}, z.core.$strict>>;
|
|
1169
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1170
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1171
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1172
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1173
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1174
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1175
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1176
|
+
action: z.ZodString;
|
|
1177
|
+
}, z.core.$strict>>>;
|
|
1178
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
1179
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1180
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1181
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1182
|
+
}, z.core.$strict>>;
|
|
1183
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
1184
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
1185
|
+
}, z.core.$strict>>>;
|
|
1186
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
1187
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1188
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1189
|
+
}, z.core.$strict>>;
|
|
1190
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1191
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1192
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1193
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1194
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1195
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1196
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1197
|
+
action: z.ZodString;
|
|
1198
|
+
}, z.core.$strict>>>;
|
|
1199
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
1200
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1201
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1202
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1203
|
+
}, z.core.$strict>>;
|
|
1204
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
1205
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
1206
|
+
lockingScript: z.ZodString;
|
|
1207
|
+
valueSatoshis: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString]>>;
|
|
1208
|
+
token: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1209
|
+
category: z.ZodOptional<z.ZodString>;
|
|
1210
|
+
amount: z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodNull]>>;
|
|
1211
|
+
nft: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1212
|
+
capability: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
1213
|
+
minting: "minting";
|
|
1214
|
+
mutable: "mutable";
|
|
1215
|
+
none: "none";
|
|
1216
|
+
}>, z.ZodString]>>;
|
|
1217
|
+
commitment: z.ZodOptional<z.ZodString>;
|
|
1218
|
+
}, z.core.$strict>>>;
|
|
1219
|
+
}, z.core.$strict>>>;
|
|
1220
|
+
}, z.core.$strict>>;
|
|
1221
|
+
lockingScripts: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1222
|
+
name: z.ZodString;
|
|
1223
|
+
description: z.ZodString;
|
|
1224
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1225
|
+
lockingType: z.ZodOptional<z.ZodEnum<{
|
|
1226
|
+
p2s: "p2s";
|
|
1227
|
+
p2pkh: "p2pkh";
|
|
1228
|
+
p2sh: "p2sh";
|
|
1229
|
+
}>>;
|
|
1230
|
+
lockingBytecode: z.ZodString;
|
|
1231
|
+
unlockingBytecode: z.ZodOptional<z.ZodString>;
|
|
1232
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1233
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1234
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1235
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1236
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1237
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1238
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1239
|
+
action: z.ZodString;
|
|
1240
|
+
}, z.core.$strict>>>;
|
|
1241
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
1242
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1243
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1244
|
+
}, z.core.$strict>>;
|
|
1245
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
1246
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1247
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1248
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1249
|
+
}, z.core.$strict>>;
|
|
1250
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
1251
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
1252
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1253
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1254
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1255
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1256
|
+
state: z.ZodOptional<z.ZodObject<{
|
|
1257
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1258
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1259
|
+
}, z.core.$strict>>;
|
|
1260
|
+
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1261
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1262
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1263
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1264
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1265
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1266
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1267
|
+
action: z.ZodString;
|
|
1268
|
+
}, z.core.$strict>>>;
|
|
1269
|
+
balance: z.ZodOptional<z.ZodObject<{
|
|
1270
|
+
satoshis: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1271
|
+
fungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodBigInt, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1272
|
+
nonfungibleTokens: z.ZodOptional<z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodString, z.ZodLiteral<true>]>>>;
|
|
1273
|
+
}, z.core.$strict>>;
|
|
1274
|
+
selectable: z.ZodOptional<z.ZodBoolean>;
|
|
1275
|
+
privacy: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
|
|
1276
|
+
}, z.core.$strict>>>;
|
|
1277
|
+
}, z.core.$strict>>;
|
|
1278
|
+
scripts: z.ZodRecord<z.ZodString, z.ZodString>;
|
|
1279
|
+
constants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1280
|
+
name: z.ZodString;
|
|
1281
|
+
description: z.ZodString;
|
|
1282
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1283
|
+
type: z.ZodEnum<{
|
|
1284
|
+
string: "string";
|
|
1285
|
+
bigint: "bigint";
|
|
1286
|
+
boolean: "boolean";
|
|
1287
|
+
bytes: "bytes";
|
|
1288
|
+
integer: "integer";
|
|
1289
|
+
private_key: "private_key";
|
|
1290
|
+
public_key: "public_key";
|
|
1291
|
+
}>;
|
|
1292
|
+
value: z.ZodUnknown;
|
|
1293
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
1294
|
+
}, z.core.$strict>>>;
|
|
1295
|
+
variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1296
|
+
name: z.ZodString;
|
|
1297
|
+
description: z.ZodString;
|
|
1298
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1299
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1300
|
+
string: "string";
|
|
1301
|
+
bigint: "bigint";
|
|
1302
|
+
boolean: "boolean";
|
|
1303
|
+
bytes: "bytes";
|
|
1304
|
+
integer: "integer";
|
|
1305
|
+
private_key: "private_key";
|
|
1306
|
+
public_key: "public_key";
|
|
1307
|
+
}>>;
|
|
1308
|
+
hint: z.ZodOptional<z.ZodString>;
|
|
1309
|
+
importDefaultValue: z.ZodOptional<z.ZodObject<{
|
|
1310
|
+
templateIdentifier: z.ZodOptional<z.ZodString>;
|
|
1311
|
+
role: z.ZodOptional<z.ZodString>;
|
|
1312
|
+
generate: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1313
|
+
variables: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1314
|
+
constants: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1315
|
+
secrets: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1316
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1317
|
+
description: z.ZodOptional<z.ZodString>;
|
|
1318
|
+
icon: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1319
|
+
}, z.core.$strict>>;
|
|
1320
|
+
}, z.core.$strict>>>;
|
|
1321
|
+
resources: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1322
|
+
name: z.ZodString;
|
|
1323
|
+
description: z.ZodString;
|
|
1324
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
1325
|
+
url: z.ZodString;
|
|
1326
|
+
}, z.core.$strict>>>;
|
|
1327
|
+
icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1328
|
+
name: z.ZodString;
|
|
1329
|
+
hash: z.ZodString;
|
|
1330
|
+
}, z.core.$strict>>>;
|
|
1331
|
+
scenarios: z.ZodOptional<z.ZodUnknown>;
|
|
1332
|
+
}, z.core.$strict>;
|
|
1333
|
+
//#endregion
|
|
1334
|
+
//#region source/template/serialization.d.ts
|
|
1335
|
+
/**
|
|
1336
|
+
* Serializes an XOTemplate to a JSON string. Encodes `bigint` and `Uint8Array` fields in
|
|
1337
|
+
* Extended JSON format so they can be reconstructed by `deserializeTemplate`.
|
|
1338
|
+
*
|
|
1339
|
+
* @param template The template to serialize.
|
|
1340
|
+
* @returns A JSON string representation of the template.
|
|
1341
|
+
* @throws {TemplateSerializationFailedError} If the template cannot be serialized to JSON.
|
|
1342
|
+
*/
|
|
1343
|
+
declare const serializeTemplate: (template: XOTemplate) => string;
|
|
1344
|
+
//#endregion
|
|
1345
|
+
export { TemplateInvalidError, TemplateJsonMalformedError, TemplateSerializationFailedError, VIEW_PROPERTIES_DESCRIPTION_MAX_LENGTH, VIEW_PROPERTIES_ICON_MAX_LENGTH, VIEW_PROPERTIES_NAME_MAX_LENGTH, bchVmVersionSchema, buildErrorDescription, extendedJsonReplacer, extendedJsonReviver, generateTemplateIdentifier, parseTemplate, satoshisSchema, scriptToScriptHash, serializeTemplate, 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 };
|
|
1346
|
+
//# sourceMappingURL=index.d.mts.map
|