@helios-lang/effect 0.6.14 → 0.6.15

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.
@@ -1158,8 +1158,9 @@ const balanceTx = (tx) => Effect.gen(function* () {
1158
1158
  const outputAssets = Assets.sum(...nonChangeOutputs.map((output) => output.assets));
1159
1159
  const feeAssets = { "": tx.body.fee };
1160
1160
  const mintedAssets = tx.body.minted;
1161
+ const depositAssets = yield* certificateDepositBalance(tx.body.dcerts);
1161
1162
  yield* Console.log("Summing assets...");
1162
- let net = Assets.sum(inputAssets, mintedAssets, Assets.negate(outputAssets), Assets.negate(feeAssets));
1163
+ let net = Assets.sum(inputAssets, mintedAssets, depositAssets, Assets.negate(outputAssets), Assets.negate(feeAssets));
1163
1164
  const selectAndAddInputs = (amount) => Effect.gen(function* () {
1164
1165
  yield* Console.log("Selecting coins...");
1165
1166
  const candidates = UTxO.difference(spareUTxOs ?? [], tx.body.inputs.concat(tx.body.refInputs));
@@ -1226,4 +1227,13 @@ const balanceTx = (tx) => Effect.gen(function* () {
1226
1227
  };
1227
1228
  return tx;
1228
1229
  });
1230
+ const certificateDepositBalance = (dcerts) => Effect.gen(function* () {
1231
+ const params = yield* Network.Params.params;
1232
+ const stakeAddrDeposit = BigInt(params.stakeAddrDeposit);
1233
+ return dcerts.reduce((sum, dcert) => dcert._tag == "Deregistration"
1234
+ ? Assets.add(sum, { "": stakeAddrDeposit })
1235
+ : dcert._tag == "Registration"
1236
+ ? Assets.subtract(sum, { "": stakeAddrDeposit })
1237
+ : sum, {});
1238
+ });
1229
1239
  //# sourceMappingURL=TxBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"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"}
@@ -48,45 +48,49 @@ function eval$(entryPoint, evalContext) {
48
48
  tracker.incrStartupCost();
49
49
  while (!["error", "success"].includes(state.kind)) {
50
50
  if (state.kind == "computing") {
51
- switch (state.term._tag) {
51
+ const computing = enterCaptureFrame(state);
52
+ switch (computing.term._tag) {
52
53
  case "Apply":
53
- state = computeApplyTerm(state, ctx);
54
+ state = computeApplyTerm(computing, ctx);
54
55
  break;
55
56
  case "Builtin":
56
- state = computeBuiltinTerm(state, ctx);
57
+ state = computeBuiltinTerm(computing, ctx);
57
58
  break;
58
59
  case "Case":
59
- state = computeCaseTerm(state, ctx);
60
+ state = computeCaseTerm(computing, ctx);
60
61
  break;
61
62
  case "Const":
62
- state = computeConstTerm(state, ctx);
63
+ state = computeConstTerm(computing, ctx);
63
64
  break;
64
65
  case "Constr":
65
- state = computeConstrTerm(state, ctx);
66
+ state = computeConstrTerm(computing, ctx);
66
67
  break;
67
68
  case "Delay":
68
- state = computeDelayTerm(state, ctx);
69
+ state = computeDelayTerm(computing, ctx);
69
70
  break;
70
71
  case "Error":
71
- state = computeErrorTerm(state, ctx);
72
+ state = computeErrorTerm(computing, ctx);
72
73
  break;
73
74
  case "Force":
74
- state = computeForceTerm(state, ctx);
75
+ state = computeForceTerm(computing, ctx);
75
76
  break;
76
77
  case "Lambda":
77
- state = computeLambdaTerm(state, ctx);
78
+ state = computeLambdaTerm(computing, ctx);
78
79
  break;
79
80
  case "Var":
80
- state = computeVarTerm(state, ctx);
81
+ state = computeVarTerm(computing, ctx);
81
82
  break;
82
83
  default:
83
- throw new Error(`Unhandled term kind '${state.term._tag}'`);
84
+ throw new Error(`Unhandled term kind '${computing.term._tag}'`);
84
85
  }
85
86
  }
86
87
  else if (state.kind == "reducing") {
87
88
  const f = state.frames.pop();
88
89
  if (f) {
89
90
  switch (f._tag) {
91
+ case "CaptureFrame":
92
+ state = reduceCaptureFrame(f, state, ctx);
93
+ break;
90
94
  case "CaseScrutineeFrame":
91
95
  state = reduceCaseScrutineeFrame(f, state);
92
96
  break;
@@ -126,7 +130,7 @@ function eval$(entryPoint, evalContext) {
126
130
  },
127
131
  logs: logs,
128
132
  breakdown: tracker.breakdown,
129
- captured
133
+ capturedValues: captured
130
134
  };
131
135
  }
132
136
  else if (state.kind == "error") {
@@ -141,7 +145,7 @@ function eval$(entryPoint, evalContext) {
141
145
  },
142
146
  logs: logs,
143
147
  breakdown: tracker.breakdown,
144
- captured
148
+ capturedValues: captured
145
149
  };
146
150
  }
147
151
  else {
@@ -149,11 +153,41 @@ function eval$(entryPoint, evalContext) {
149
153
  }
150
154
  }
151
155
  export { eval$ as eval };
152
- export function evalWithCapture(entryPoint, evalContext) {
153
- return eval$(entryPoint, {
154
- ...evalContext,
155
- capture: evalContext.capture ?? {}
156
- });
156
+ function enterCaptureFrame({ term, stack, frames }) {
157
+ if (term.capture === undefined) {
158
+ return {
159
+ kind: "computing",
160
+ term,
161
+ stack,
162
+ frames
163
+ };
164
+ }
165
+ return {
166
+ kind: "computing",
167
+ term: {
168
+ ...term,
169
+ capture: undefined
170
+ },
171
+ stack,
172
+ frames: frames.concat([
173
+ {
174
+ _tag: "CaptureFrame",
175
+ id: term.capture,
176
+ callSite: {
177
+ sourceSpan: term.sourceSpan,
178
+ description: term.description
179
+ }
180
+ }
181
+ ])
182
+ };
183
+ }
184
+ function reduceCaptureFrame(frame, { frames, value }, ctx) {
185
+ ctx.captureValue(frame.id, value, isNonEmptyCallSiteInfo(frame.callSite) ? frame.callSite : undefined);
186
+ return {
187
+ kind: "reducing",
188
+ value,
189
+ frames
190
+ };
157
191
  }
158
192
  function computeApplyTerm({ term, stack, frames }, machineContext) {
159
193
  machineContext.cost.incrApplyCost();
@@ -603,12 +637,6 @@ function reduceApplyToFrame(frames, leftValue, rightValue, frameStack, ctx, info
603
637
  ...rightValue,
604
638
  name: info.argName
605
639
  };
606
- if (ctx.capture !== undefined) {
607
- const capturePrefix = ctx.capture.prefix ?? "__helios_capture:";
608
- if (info.argName.startsWith(capturePrefix)) {
609
- ctx.captureValue(info.argName.slice(capturePrefix.length), rightValue, info.callSite);
610
- }
611
- }
612
640
  }
613
641
  if (leftValue._tag == "Lambda") {
614
642
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Cek.js","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Cek.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cek.js","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Cek.ts"],"names":[],"mappings":"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"}
@@ -86,14 +86,6 @@ const eval$ = (script, args, costParams = undefined, logger = undefined) => Effe
86
86
  const ctx = evalContext(script.version, costParams, logger);
87
87
  return Cek.eval(root, ctx);
88
88
  });
89
- export const evalWithCapture = (script, args, costParams = undefined, logger = undefined, capture = {}) => Effect.gen(function* () {
90
- const root = yield* entryPointWithArgs(script, args);
91
- const ctx = evalContext(script.version, costParams, logger);
92
- return Cek.evalWithCapture(root, {
93
- ...ctx,
94
- capture
95
- });
96
- });
97
89
  function evalContext(version, costParams, logger) {
98
90
  switch (version) {
99
91
  case 1:
@@ -1 +1 @@
1
- {"version":3,"file":"Script.js","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Script.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Script.js","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Script.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,232 @@
1
+ import { Context, Data, Effect, Either, Schema } from "effect";
2
+ import * as Uplc from "./Uplc/index.js";
3
+ export const fieldModulus = 52435875175126190479447740508185965837690552500527637822603658699938581184513n;
4
+ export const ProverInput = Schema.Struct({
5
+ name: Schema.String,
6
+ type: Schema.String
7
+ });
8
+ export const WitnessInput = Schema.extend(ProverInput, Schema.Struct({
9
+ captureId: Schema.String
10
+ }));
11
+ export const VerificationKey = Schema.Struct({
12
+ alphaG1: Schema.Uint8ArrayFromHex,
13
+ betaG2: Schema.Uint8ArrayFromHex,
14
+ gammaG2: Schema.Uint8ArrayFromHex,
15
+ deltaG2: Schema.Uint8ArrayFromHex,
16
+ publicInputsG1: Schema.Array(Schema.Uint8ArrayFromHex)
17
+ });
18
+ export const InputValue = Schema.Union(Schema.BigInt, Schema.Boolean, Schema.Uint8ArrayFromHex, Schema.Array(Schema.suspend(() => InputValue)));
19
+ /**
20
+ * Describes the public/private inputs required by a prover.
21
+ *
22
+ * This is the part of a prover that callers need in order to construct
23
+ * witnesses, but it does not include constraints, keys, or evaluator metadata.
24
+ *
25
+ * Compiler-v2 emits the circuit so that the proof-engine private input vector is
26
+ * `privateInputs` first, followed by captured `witnessInputs`. Public inputs
27
+ * are prepared independently from `publicInputs`.
28
+ */
29
+ export const ProverInputs = Schema.Struct({
30
+ privateInputs: Schema.Array(ProverInput),
31
+ witnessInputs: Schema.Array(WitnessInput),
32
+ publicInputs: Schema.Array(ProverInput)
33
+ });
34
+ /**
35
+ * Minimal compiler artifact consumed by a proof engine.
36
+ *
37
+ * This intentionally excludes input metadata and evaluator bytes. Those fields
38
+ * are only needed by this module to prepare positional inputs before calling the
39
+ * proof engine.
40
+ */
41
+ export const Prover = Schema.Struct({
42
+ name: Schema.optional(Schema.String),
43
+ constraints: Schema.Uint8ArrayFromHex
44
+ });
45
+ /**
46
+ * Compiler artifact with metadata needed to prepare proof inputs.
47
+ *
48
+ * Field roles:
49
+ * - inputs: public, private, and proof-engine witness input interface emitted by
50
+ * the compiler.
51
+ * - evaluator: verbose latest-version UPLC script bytes used to fill captured
52
+ * witness inputs before proving.
53
+ */
54
+ export const ProverWithMetadata = Schema.extend(Prover, Schema.Struct({
55
+ evaluator: Schema.optional(Schema.Uint8ArrayFromHex),
56
+ inputs: ProverInputs
57
+ }));
58
+ /**
59
+ * Minimal proof-engine artifact with derived key material.
60
+ *
61
+ * `provingKey` is used to create proofs for this circuit, while
62
+ * `verificationKey` is public material used to verify those proofs.
63
+ */
64
+ export const ProverWithDerivedKeys = Schema.extend(Prover, Schema.Struct({
65
+ provingKey: Schema.Uint8ArrayFromHex,
66
+ verificationKey: VerificationKey
67
+ }));
68
+ export class MissingWitnessInput extends Data.TaggedError("Cardano.ZK.MissingWitnessInput") {
69
+ constructor(kind, name) {
70
+ super({
71
+ kind,
72
+ name,
73
+ message: `missing ${kind} witness input '${name}'`
74
+ });
75
+ }
76
+ }
77
+ export class MissingEvaluator extends Data.TaggedError("Cardano.ZK.MissingEvaluator") {
78
+ constructor() {
79
+ super({
80
+ message: "missing evaluator script for captured witness inputs"
81
+ });
82
+ }
83
+ }
84
+ export class EvaluatorFailed extends Data.TaggedError("Cardano.ZK.EvaluatorFailed") {
85
+ constructor(message) {
86
+ super({ message });
87
+ }
88
+ }
89
+ export class MissingCapture extends Data.TaggedError("Cardano.ZK.MissingCapture") {
90
+ constructor(captureId) {
91
+ super({
92
+ captureId,
93
+ message: `missing captured evaluator value '${captureId}'`
94
+ });
95
+ }
96
+ }
97
+ export class InvalidCapturedValue extends Data.TaggedError("Cardano.ZK.InvalidCapturedValue") {
98
+ constructor(captureId) {
99
+ super({
100
+ captureId,
101
+ message: `captured evaluator value '${captureId}' is not a valid input value`
102
+ });
103
+ }
104
+ }
105
+ export class InvalidInputValue extends Data.TaggedError("Cardano.ZK.InvalidInputValue") {
106
+ constructor(kind, name) {
107
+ super({
108
+ kind,
109
+ name,
110
+ message: `input '${name}' cannot be converted to a UPLC evaluator argument`
111
+ });
112
+ }
113
+ }
114
+ export class ProofEngine extends Context.Tag("Cardano.ZK.ProofEngine")() {
115
+ }
116
+ export const setup = (prover) => Effect.gen(function* () {
117
+ const engine = yield* ProofEngine;
118
+ const keys = yield* engine.setup(prover);
119
+ return {
120
+ ...prover,
121
+ ...keys
122
+ };
123
+ });
124
+ export const prove = (prover, publicInputs, privateInputs) => Effect.gen(function* () {
125
+ const engine = yield* ProofEngine;
126
+ const positionalPublicInputs = [];
127
+ for (const { name } of prover.inputs.publicInputs) {
128
+ const publicInput = publicInputs[name];
129
+ if (publicInput === undefined) {
130
+ return yield* Effect.fail(new MissingWitnessInput("public", name));
131
+ }
132
+ positionalPublicInputs.push(publicInput);
133
+ }
134
+ const positionalPrivateInputs = [];
135
+ for (const { name } of prover.inputs.privateInputs) {
136
+ const privateInput = privateInputs[name];
137
+ if (privateInput === undefined) {
138
+ return yield* Effect.fail(new MissingWitnessInput("private", name));
139
+ }
140
+ positionalPrivateInputs.push(privateInput);
141
+ }
142
+ if (prover.inputs.witnessInputs.length > 0) {
143
+ const captured = yield* evaluate(prover, positionalPublicInputs, positionalPrivateInputs);
144
+ for (const input of prover.inputs.witnessInputs) {
145
+ const captureId = input.captureId;
146
+ const capturedWitnessInput = captured[captureId];
147
+ if (capturedWitnessInput === undefined) {
148
+ return yield* Effect.fail(new MissingWitnessInput("witness", captureId));
149
+ }
150
+ positionalPrivateInputs.push(capturedWitnessInput);
151
+ }
152
+ }
153
+ return yield* engine.prove(prover, positionalPublicInputs, positionalPrivateInputs);
154
+ });
155
+ export const verify = (prover, publicInputs, proof) => Effect.gen(function* () {
156
+ const engine = yield* ProofEngine;
157
+ const positionalPublicInputs = [];
158
+ for (const { name } of prover.inputs.publicInputs) {
159
+ const publicInput = publicInputs[name];
160
+ if (publicInput === undefined) {
161
+ return yield* Effect.fail(new MissingWitnessInput("public", name));
162
+ }
163
+ positionalPublicInputs.push(publicInput);
164
+ }
165
+ return yield* engine.verify(prover, positionalPublicInputs, proof);
166
+ });
167
+ const evaluate = (prover, publicInputs, privateInputs) => Effect.gen(function* () {
168
+ const evaluator = prover.evaluator;
169
+ if (evaluator === undefined) {
170
+ return yield* Effect.fail(new MissingEvaluator());
171
+ }
172
+ const args = [
173
+ ...publicInputs.map(inputValueToUplcValue),
174
+ ...privateInputs.map(inputValueToUplcValue)
175
+ ];
176
+ const result = yield* Uplc.Script.eval({
177
+ version: 3,
178
+ root: evaluator
179
+ }, args).pipe(Effect.mapError((error) => new EvaluatorFailed(error instanceof Error ? error.message : String(error))));
180
+ if (Either.isLeft(result.value)) {
181
+ return yield* Effect.fail(new EvaluatorFailed(result.value.left.error));
182
+ }
183
+ const capturedWitnessValue = {};
184
+ for (const { id, value } of result.capturedValues) {
185
+ if (value._tag != "Const") {
186
+ throw new Error("Unexpected captured Cek frame");
187
+ }
188
+ capturedWitnessValue[id] = uplcValueToInputValue(value.value);
189
+ }
190
+ return capturedWitnessValue;
191
+ });
192
+ function inputValueToUplcValue(inputValue) {
193
+ if (typeof inputValue == "bigint") {
194
+ return inputValue;
195
+ }
196
+ else if (typeof inputValue == "boolean") {
197
+ return inputValue;
198
+ }
199
+ else if (inputValue instanceof Uint8Array) {
200
+ return inputValue;
201
+ }
202
+ else {
203
+ const items = inputValue.map(inputValueToUplcValue);
204
+ if (items.length == 0) {
205
+ throw new Error("Expected lists to contain at least 1 entry");
206
+ }
207
+ return {
208
+ itemType: Uplc.Value.toType(items[0]),
209
+ items
210
+ };
211
+ }
212
+ }
213
+ function uplcValueToInputValue(uplcValue) {
214
+ if (typeof uplcValue == "bigint") {
215
+ return uplcValue;
216
+ }
217
+ else if (typeof uplcValue == "boolean") {
218
+ return uplcValue;
219
+ }
220
+ else if (uplcValue instanceof Uint8Array) {
221
+ return uplcValue;
222
+ }
223
+ else if (uplcValue !== null &&
224
+ typeof uplcValue == "object" &&
225
+ "items" in uplcValue) {
226
+ return uplcValue.items.map(uplcValueToInputValue);
227
+ }
228
+ else {
229
+ throw new Error("Unsupported UplcValue to InputValue conversion");
230
+ }
231
+ }
232
+ //# sourceMappingURL=ZK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZK.js","sourceRoot":"","sources":["../../src/Cardano/ZK.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,5 @@ export * as ScriptContext from "./ScriptContext.js";
7
7
  export * as TxBuilder from "./TxBuilder.js";
8
8
  export * as Uplc from "./Uplc/index.js";
9
9
  export * as Wallet from "./Wallet.js";
10
+ export * as ZK from "./ZK.js";
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Cardano/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Cardano/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@helios-lang/effect",
3
- "version": "0.6.14",
3
+ "version": "0.6.15",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -63,23 +63,23 @@ declare const $utxos: () => Effect.Effect<{
63
63
  readonly strictBabbage?: boolean | undefined;
64
64
  } | undefined;
65
65
  };
66
- }[], Network.ConnectionError | Network.UnexpectedFormat, Network.IsMainnet | Network.UTxOsAt | Contract>;
66
+ }[], Network.ConnectionError | Network.UnexpectedFormat, Network.IsMainnet | Contract | Network.UTxOsAt>;
67
67
  export { $utxos as utxos };
68
- export declare const initialize: (witnesses: Witness[]) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxO | TxBuilder.GetDatum | Contract>;
69
- export declare const addValidator: (vh: ValidatorHash.ValidatorHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
70
- export declare const addValidatorEffect: (vh: ValidatorHash.ValidatorHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
71
- export declare const addAdmin: (pkh: PubKeyHash.PubKeyHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
72
- export declare const addAdminEffect: (pkh: PubKeyHash.PubKeyHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
73
- export declare const addWitness: (witness: Witness) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
74
- export declare const addWitnessEffect: (witness: Witness) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
75
- export declare const removeValidator: (vh: ValidatorHash.ValidatorHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
76
- export declare const removeValidatorEffect: (vh: ValidatorHash.ValidatorHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
77
- export declare const removeAdmin: (pkh: PubKeyHash.PubKeyHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
78
- export declare const removeAdminEffect: (pkh: PubKeyHash.PubKeyHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
79
- export declare const removeWitness: (witness: Witness) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
80
- export declare const removeWitnessEffect: (witness: Witness) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
81
- export declare const mint: (assets: Assets.Assets) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | Contract>;
82
- export declare const mintEffect: (assets: Assets.Assets) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | Contract | R>;
83
- export declare const spend: (inputs: UTxO.UTxO | UTxO.UTxO[]) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract>;
84
- export declare const spendEffect: (utxos: UTxO.UTxO | UTxO.UTxO[]) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Network.UTxOsAt | TxBuilder.GetDatum | Contract | R>;
68
+ export declare const initialize: (witnesses: Witness[]) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Network.UTxO | Contract>;
69
+ export declare const addValidator: (vh: ValidatorHash.ValidatorHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
70
+ export declare const addValidatorEffect: (vh: ValidatorHash.ValidatorHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
71
+ export declare const addAdmin: (pkh: PubKeyHash.PubKeyHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
72
+ export declare const addAdminEffect: (pkh: PubKeyHash.PubKeyHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
73
+ export declare const addWitness: (witness: Witness) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
74
+ export declare const addWitnessEffect: (witness: Witness) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
75
+ export declare const removeValidator: (vh: ValidatorHash.ValidatorHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
76
+ export declare const removeValidatorEffect: (vh: ValidatorHash.ValidatorHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
77
+ export declare const removeAdmin: (pkh: PubKeyHash.PubKeyHash) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
78
+ export declare const removeAdminEffect: (pkh: PubKeyHash.PubKeyHash) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
79
+ export declare const removeWitness: (witness: Witness) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
80
+ export declare const removeWitnessEffect: (witness: Witness) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, string | Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
81
+ export declare const mint: (assets: Assets.Assets) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, Network.IsMainnet | Contract | Network.UTxOsAt>;
82
+ export declare const mintEffect: (assets: Assets.Assets) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError | E, Network.IsMainnet | Contract | Network.UTxOsAt | R>;
83
+ export declare const spend: (inputs: UTxO.UTxO | UTxO.UTxO[]) => (b: TxBuilder.TxBuilder) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt>;
84
+ export declare const spendEffect: (utxos: UTxO.UTxO | UTxO.UTxO[]) => <E, R>(self: Effect.Effect<TxBuilder.TxBuilder, E, R>) => Effect.Effect<TxBuilder.TxBuilder, Error | import("effect/ParseResult").ParseError | E, TxBuilder.GetDatum | Network.IsMainnet | Contract | Network.UTxOsAt | R>;
85
85
  //# sourceMappingURL=Contract.d.ts.map
@@ -204,8 +204,8 @@ export declare const signEffect: (...signers: PubKeyHash.PubKeyHash[]) => <E, R>
204
204
  type SpendOptions = {
205
205
  dedupe?: "fail" | "keep" | "update";
206
206
  };
207
- export declare const spend: ({ dedupe }?: SpendOptions) => (utxos: UTxO.UTxO | UTxO.UTxO[], redeemer?: Uplc.Data.Data | RedeemerBuilder | undefined) => (b: TxBuilder) => Effect.Effect<TxBuilder, Network.ConnectionError | UTxOAlreadyAdded | MissingDatum | MissingRedeemer | RedundantRedeemer | RedeemerAlreadyAdded | MissingScript | DatumNotFound | Assets.SomeNonPositive, GetDatum>;
208
- export declare const spendEffect: (options?: SpendOptions) => (utxos: UTxO.UTxO | UTxO.UTxO[], redeemer?: Uplc.Data.Data | RedeemerBuilder | undefined) => <E, R>(self: Effect.Effect<TxBuilder, E, R>) => Effect.Effect<TxBuilder, Network.ConnectionError | UTxOAlreadyAdded | MissingDatum | MissingRedeemer | RedundantRedeemer | RedeemerAlreadyAdded | MissingScript | DatumNotFound | Assets.SomeNonPositive | E, GetDatum | R>;
207
+ export declare const spend: ({ dedupe }?: SpendOptions) => (utxos: UTxO.UTxO | UTxO.UTxO[], redeemer?: Uplc.Data.Data | RedeemerBuilder | undefined) => (b: TxBuilder) => Effect.Effect<TxBuilder, UTxOAlreadyAdded | MissingDatum | MissingRedeemer | RedundantRedeemer | RedeemerAlreadyAdded | MissingScript | DatumNotFound | Network.ConnectionError | Assets.SomeNonPositive, GetDatum>;
208
+ export declare const spendEffect: (options?: SpendOptions) => (utxos: UTxO.UTxO | UTxO.UTxO[], redeemer?: Uplc.Data.Data | RedeemerBuilder | undefined) => <E, R>(self: Effect.Effect<TxBuilder, E, R>) => Effect.Effect<TxBuilder, UTxOAlreadyAdded | MissingDatum | MissingRedeemer | RedundantRedeemer | RedeemerAlreadyAdded | MissingScript | DatumNotFound | Network.ConnectionError | Assets.SomeNonPositive | E, GetDatum | R>;
209
209
  export declare const validFromSlot: (slot: number) => (b: TxBuilder) => TxBuilder;
210
210
  export declare const validFromSlotEffect: (slot: number) => <E, R>(self: Effect.Effect<TxBuilder, E, R>) => Effect.Effect<TxBuilder, E, R>;
211
211
  /**
@@ -264,7 +264,7 @@ export interface BabelFeeOptions {
264
264
  */
265
265
  readonly assetClass: AssetClass.AssetClass;
266
266
  }
267
- export declare const build: (options?: BuildOptions) => (b: TxBuilder) => Effect.Effect<Tx.Tx, Error | import("effect/ParseResult").ParseError, Network.Params.params | Network.IsMainnet | Network.UTxO | BalancingWallet>;
268
- export declare const buildEffect: (options?: BuildOptions) => <E, R>(self: Effect.Effect<TxBuilder, E, R>) => Effect.Effect<Tx.Tx, Error | import("effect/ParseResult").ParseError | E, Network.Params.params | Network.IsMainnet | Network.UTxO | BalancingWallet | R>;
267
+ export declare const build: (options?: BuildOptions) => (b: TxBuilder) => Effect.Effect<Tx.Tx, Error | import("effect/ParseResult").ParseError, Network.Params.params | BalancingWallet | Network.IsMainnet | Network.UTxO>;
268
+ export declare const buildEffect: (options?: BuildOptions) => <E, R>(self: Effect.Effect<TxBuilder, E, R>) => Effect.Effect<Tx.Tx, Error | import("effect/ParseResult").ParseError | E, Network.Params.params | BalancingWallet | Network.IsMainnet | Network.UTxO | R>;
269
269
  export {};
270
270
  //# sourceMappingURL=TxBuilder.d.ts.map
@@ -6,10 +6,6 @@ export type EvalContext = {
6
6
  builtins: readonly Builtin[];
7
7
  costParams: readonly number[];
8
8
  logger?: Logger | undefined;
9
- capture?: CaptureConfig | undefined;
10
- };
11
- export type CaptureConfig = {
12
- prefix?: string | undefined;
13
9
  };
14
10
  export type CapturedValue = {
15
11
  index: number;
@@ -124,7 +120,7 @@ export type Result = {
124
120
  callSite?: CallSite | undefined;
125
121
  }[];
126
122
  breakdown: Cost.Breakdown;
127
- captured: CapturedValue[];
123
+ capturedValues: CapturedValue[];
128
124
  };
129
125
  /**
130
126
  * This is main evaluation function of the CEK Machine
@@ -135,9 +131,6 @@ export type Result = {
135
131
  */
136
132
  declare function eval$(entryPoint: Term, evalContext: EvalContext): Result;
137
133
  export { eval$ as eval };
138
- export declare function evalWithCapture(entryPoint: Term, evalContext: Omit<EvalContext, "capture"> & {
139
- capture?: CaptureConfig | undefined;
140
- }): Result;
141
134
  /**
142
135
  * @param callSite
143
136
  * @returns
@@ -1 +1 @@
1
- {"version":3,"file":"Cek.d.ts","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Cek.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cek.d.ts","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Cek.ts"],"names":[],"mappings":"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"}
@@ -68,8 +68,7 @@ export declare function encode(script: Script): number[];
68
68
  * @param costParams
69
69
  */
70
70
  declare const eval$: (script: Script, args: readonly Value.Value[] | undefined, costParams?: readonly number[] | undefined, logger?: Cek.Logger | undefined) => Effect.Effect<Cek.Result, Error, never>;
71
- export declare const evalWithCapture: (script: Script, args: readonly Value.Value[] | undefined, costParams?: readonly number[] | undefined, logger?: Cek.Logger | undefined, capture?: Cek.CaptureConfig) => Effect.Effect<Cek.Result, Error, never>;
72
- export declare const apply: (script: Script, args: readonly Value.Value[]) => Effect.Effect<Script<2 | 1 | 3>, Error, never>;
71
+ export declare const apply: (script: Script, args: readonly Value.Value[]) => Effect.Effect<Script<1 | 2 | 3>, Error, never>;
73
72
  export declare const extractParams: (script: Script) => Effect.Effect<Value.Value[], Error, never>;
74
73
  export { eval$ as eval };
75
74
  export declare function hash(script: Script): ValidatorHash;
@@ -1 +1 @@
1
- {"version":3,"file":"Script.d.ts","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAoB,MAAM,EAAE,MAAM,QAAQ,CAAA;AACzD,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAA;AAC9C,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAA;AAG5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAG/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,eAAO,MAAM,OAAO,+EAInB,CAAA;AAED,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,CAAA;AAUxD;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IAbjB;;OAEG;;;;;GAgBJ,CAAA;AAED,eAAO,MAAM,QAAQ;IApBnB;;OAEG;;;;;GAuBJ,CAAA;AAED,eAAO,MAAM,QAAQ;IA3BnB;;OAEG;;;;;GA8BJ,CAAA;AAED,eAAO,MAAM,QAAQ;IAlCnB;;OAEG;;;;;GAqCJ,CAAA;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI;IAChD,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,CAAC,SAAS,KACrB,IAAI,CAAC,YAAY,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAqB1D,CAAA;AAEJ,eAAO,MAAM,MAAM,GAChB,CAAC,SAAS,OAAO,EAAE,SAAS,CAAC,MAC7B,OAAO,KAAK,CAAC,SAAS,KAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAgCjD,CAAA;AAEN,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/C;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,KAAK,GACT,QAAQ,MAAM,EACd,MAAM,SAAS,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,EACxC,aAAY,SAAS,MAAM,EAAE,GAAG,SAAqB,EACrD,SAAQ,GAAG,CAAC,MAAM,GAAG,SAAqB,4CAOxC,CAAA;AAEJ,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,MAAM,SAAS,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,EACxC,aAAY,SAAS,MAAM,EAAE,GAAG,SAAqB,EACrD,SAAQ,GAAG,CAAC,MAAM,GAAG,SAAqB,EAC1C,UAAS,GAAG,CAAC,aAAkB,4CAU7B,CAAA;AAkDJ,eAAO,MAAM,KAAK,GAAI,QAAQ,MAAM,EAAE,MAAM,SAAS,KAAK,CAAC,KAAK,EAAE,mDAsC9D,CAAA;AAEJ,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,+CAaxC,CAAA;AAEJ,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAA;AAExB,wBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAMlD;AAED,eAAO,MAAM,SAAS,GACnB,CAAC,SAAS,OAAO,EAAE,GAAG,CAAC,MACvB,QAAQ,MAAM,KAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CACf,CAAA"}
1
+ {"version":3,"file":"Script.d.ts","sourceRoot":"","sources":["../../../src/Cardano/Uplc/Script.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAoB,MAAM,EAAE,MAAM,QAAQ,CAAA;AACzD,OAAO,KAAK,KAAK,MAAM,uBAAuB,CAAA;AAC9C,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAA;AAG5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAG/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,eAAO,MAAM,OAAO,+EAInB,CAAA;AAED,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,CAAA;AAUxD;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IAbjB;;OAEG;;;;;GAgBJ,CAAA;AAED,eAAO,MAAM,QAAQ;IApBnB;;OAEG;;;;;GAuBJ,CAAA;AAED,eAAO,MAAM,QAAQ;IA3BnB;;OAEG;;;;;GA8BJ,CAAA;AAED,eAAO,MAAM,QAAQ;IAlCnB;;OAEG;;;;;GAqCJ,CAAA;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI;IAChD,OAAO,EAAE,CAAC,CAAA;IACV,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,CAAC,SAAS,KACrB,IAAI,CAAC,YAAY,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAqB1D,CAAA;AAEJ,eAAO,MAAM,MAAM,GAChB,CAAC,SAAS,OAAO,EAAE,SAAS,CAAC,MAC7B,OAAO,KAAK,CAAC,SAAS,KAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAgCjD,CAAA;AAEN,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/C;AAED;;;;;;;GAOG;AACH,QAAA,MAAM,KAAK,GACT,QAAQ,MAAM,EACd,MAAM,SAAS,KAAK,CAAC,KAAK,EAAE,GAAG,SAAS,EACxC,aAAY,SAAS,MAAM,EAAE,GAAG,SAAqB,EACrD,SAAQ,GAAG,CAAC,MAAM,GAAG,SAAqB,4CAOxC,CAAA;AAkDJ,eAAO,MAAM,KAAK,GAAI,QAAQ,MAAM,EAAE,MAAM,SAAS,KAAK,CAAC,KAAK,EAAE,mDAsC9D,CAAA;AAEJ,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,+CAaxC,CAAA;AAEJ,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,CAAA;AAExB,wBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAMlD;AAED,eAAO,MAAM,SAAS,GACnB,CAAC,SAAS,OAAO,EAAE,GAAG,CAAC,MACvB,QAAQ,MAAM,KAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CACf,CAAA"}
@@ -0,0 +1,188 @@
1
+ import { Context, Effect, Schema } from "effect";
2
+ export declare const fieldModulus = 52435875175126190479447740508185965837690552500527637822603658699938581184513n;
3
+ export declare const ProverInput: Schema.Struct<{
4
+ name: typeof Schema.String;
5
+ type: typeof Schema.String;
6
+ }>;
7
+ export type ProverInput = Schema.Schema.Type<typeof ProverInput>;
8
+ export declare const WitnessInput: Schema.extend<Schema.Struct<{
9
+ name: typeof Schema.String;
10
+ type: typeof Schema.String;
11
+ }>, Schema.Struct<{
12
+ captureId: typeof Schema.String;
13
+ }>>;
14
+ export type WitnessInput = Schema.Schema.Type<typeof WitnessInput>;
15
+ export declare const VerificationKey: Schema.Struct<{
16
+ alphaG1: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
17
+ betaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
18
+ gammaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
19
+ deltaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
20
+ publicInputsG1: Schema.Array$<Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>>;
21
+ }>;
22
+ export type VerificationKey = Schema.Schema.Type<typeof VerificationKey>;
23
+ export type InputValue = bigint | boolean | Uint8Array | readonly InputValue[];
24
+ export type InputValueList = {
25
+ readonly items: readonly InputValue[];
26
+ };
27
+ type EncodedInputValue = string | boolean | readonly EncodedInputValue[];
28
+ export declare const InputValue: Schema.Schema<InputValue, EncodedInputValue>;
29
+ /**
30
+ * Describes the public/private inputs required by a prover.
31
+ *
32
+ * This is the part of a prover that callers need in order to construct
33
+ * witnesses, but it does not include constraints, keys, or evaluator metadata.
34
+ *
35
+ * Compiler-v2 emits the circuit so that the proof-engine private input vector is
36
+ * `privateInputs` first, followed by captured `witnessInputs`. Public inputs
37
+ * are prepared independently from `publicInputs`.
38
+ */
39
+ export declare const ProverInputs: Schema.Struct<{
40
+ privateInputs: Schema.Array$<Schema.Struct<{
41
+ name: typeof Schema.String;
42
+ type: typeof Schema.String;
43
+ }>>;
44
+ witnessInputs: Schema.Array$<Schema.extend<Schema.Struct<{
45
+ name: typeof Schema.String;
46
+ type: typeof Schema.String;
47
+ }>, Schema.Struct<{
48
+ captureId: typeof Schema.String;
49
+ }>>>;
50
+ publicInputs: Schema.Array$<Schema.Struct<{
51
+ name: typeof Schema.String;
52
+ type: typeof Schema.String;
53
+ }>>;
54
+ }>;
55
+ export type ProverInputs = Schema.Schema.Type<typeof ProverInputs>;
56
+ /**
57
+ * Minimal compiler artifact consumed by a proof engine.
58
+ *
59
+ * This intentionally excludes input metadata and evaluator bytes. Those fields
60
+ * are only needed by this module to prepare positional inputs before calling the
61
+ * proof engine.
62
+ */
63
+ export declare const Prover: Schema.Struct<{
64
+ name: Schema.optional<typeof Schema.String>;
65
+ constraints: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
66
+ }>;
67
+ export type Prover = Schema.Schema.Type<typeof Prover>;
68
+ /**
69
+ * Compiler artifact with metadata needed to prepare proof inputs.
70
+ *
71
+ * Field roles:
72
+ * - inputs: public, private, and proof-engine witness input interface emitted by
73
+ * the compiler.
74
+ * - evaluator: verbose latest-version UPLC script bytes used to fill captured
75
+ * witness inputs before proving.
76
+ */
77
+ export declare const ProverWithMetadata: Schema.extend<Schema.Struct<{
78
+ name: Schema.optional<typeof Schema.String>;
79
+ constraints: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
80
+ }>, Schema.Struct<{
81
+ evaluator: Schema.optional<Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>>;
82
+ inputs: Schema.Struct<{
83
+ privateInputs: Schema.Array$<Schema.Struct<{
84
+ name: typeof Schema.String;
85
+ type: typeof Schema.String;
86
+ }>>;
87
+ witnessInputs: Schema.Array$<Schema.extend<Schema.Struct<{
88
+ name: typeof Schema.String;
89
+ type: typeof Schema.String;
90
+ }>, Schema.Struct<{
91
+ captureId: typeof Schema.String;
92
+ }>>>;
93
+ publicInputs: Schema.Array$<Schema.Struct<{
94
+ name: typeof Schema.String;
95
+ type: typeof Schema.String;
96
+ }>>;
97
+ }>;
98
+ }>>;
99
+ export type ProverWithMetadata = Schema.Schema.Type<typeof ProverWithMetadata>;
100
+ /**
101
+ * Minimal proof-engine artifact with derived key material.
102
+ *
103
+ * `provingKey` is used to create proofs for this circuit, while
104
+ * `verificationKey` is public material used to verify those proofs.
105
+ */
106
+ export declare const ProverWithDerivedKeys: Schema.extend<Schema.Struct<{
107
+ name: Schema.optional<typeof Schema.String>;
108
+ constraints: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
109
+ }>, Schema.Struct<{
110
+ provingKey: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
111
+ verificationKey: Schema.Struct<{
112
+ alphaG1: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
113
+ betaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
114
+ gammaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
115
+ deltaG2: Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>;
116
+ publicInputsG1: Schema.Array$<Schema.Schema<Uint8Array<ArrayBufferLike>, string, never>>;
117
+ }>;
118
+ }>>;
119
+ export type ProverWithDerivedKeys = Schema.Schema.Type<typeof ProverWithDerivedKeys>;
120
+ type DerivedKeys = Pick<ProverWithDerivedKeys, "provingKey" | "verificationKey">;
121
+ declare const MissingWitnessInput_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
122
+ readonly _tag: "Cardano.ZK.MissingWitnessInput";
123
+ } & Readonly<A>;
124
+ export declare class MissingWitnessInput extends MissingWitnessInput_base<{
125
+ readonly message: string;
126
+ readonly kind: "public" | "private" | "witness";
127
+ readonly name: string;
128
+ }> {
129
+ constructor(kind: "public" | "private" | "witness", name: string);
130
+ }
131
+ declare const MissingEvaluator_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
132
+ readonly _tag: "Cardano.ZK.MissingEvaluator";
133
+ } & Readonly<A>;
134
+ export declare class MissingEvaluator extends MissingEvaluator_base<{
135
+ readonly message: string;
136
+ }> {
137
+ constructor();
138
+ }
139
+ declare const EvaluatorFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
140
+ readonly _tag: "Cardano.ZK.EvaluatorFailed";
141
+ } & Readonly<A>;
142
+ export declare class EvaluatorFailed extends EvaluatorFailed_base<{
143
+ readonly message: string;
144
+ }> {
145
+ constructor(message: string);
146
+ }
147
+ declare const MissingCapture_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
148
+ readonly _tag: "Cardano.ZK.MissingCapture";
149
+ } & Readonly<A>;
150
+ export declare class MissingCapture extends MissingCapture_base<{
151
+ readonly message: string;
152
+ readonly captureId: string;
153
+ }> {
154
+ constructor(captureId: string);
155
+ }
156
+ declare const InvalidCapturedValue_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
157
+ readonly _tag: "Cardano.ZK.InvalidCapturedValue";
158
+ } & Readonly<A>;
159
+ export declare class InvalidCapturedValue extends InvalidCapturedValue_base<{
160
+ readonly message: string;
161
+ readonly captureId: string;
162
+ }> {
163
+ constructor(captureId: string);
164
+ }
165
+ declare const InvalidInputValue_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
166
+ readonly _tag: "Cardano.ZK.InvalidInputValue";
167
+ } & Readonly<A>;
168
+ export declare class InvalidInputValue extends InvalidInputValue_base<{
169
+ readonly message: string;
170
+ readonly kind: "public" | "private" | "witness";
171
+ readonly name: string;
172
+ }> {
173
+ constructor(kind: "public" | "private" | "witness", name: string);
174
+ }
175
+ export type ZKError = MissingWitnessInput | MissingEvaluator | EvaluatorFailed | MissingCapture | InvalidCapturedValue | InvalidInputValue;
176
+ export type ProofEngineService = {
177
+ readonly setup: (prover: Prover) => Effect.Effect<DerivedKeys, ZKError>;
178
+ readonly prove: (prover: ProverWithDerivedKeys, publicInputs: readonly InputValue[], privateInputs: readonly InputValue[]) => Effect.Effect<Uint8Array, ZKError>;
179
+ readonly verify: (prover: ProverWithDerivedKeys, publicInputs: readonly InputValue[], proof: Uint8Array) => Effect.Effect<boolean, ZKError>;
180
+ };
181
+ declare const ProofEngine_base: Context.TagClass<ProofEngine, "Cardano.ZK.ProofEngine", ProofEngineService>;
182
+ export declare class ProofEngine extends ProofEngine_base {
183
+ }
184
+ export declare const setup: (prover: ProverWithMetadata) => Effect.Effect<ProverWithMetadata & ProverWithDerivedKeys, ZKError, ProofEngine>;
185
+ export declare const prove: (prover: ProverWithMetadata & ProverWithDerivedKeys, publicInputs: Record<string, InputValue>, privateInputs: Record<string, InputValue>) => Effect.Effect<Uint8Array, ZKError, ProofEngine>;
186
+ export declare const verify: (prover: ProverWithMetadata & ProverWithDerivedKeys, publicInputs: Record<string, InputValue>, proof: Uint8Array) => Effect.Effect<boolean, ZKError, ProofEngine>;
187
+ export {};
188
+ //# sourceMappingURL=ZK.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZK.d.ts","sourceRoot":"","sources":["../../src/Cardano/ZK.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,5 @@ export * as ScriptContext from "./ScriptContext.js";
7
7
  export * as TxBuilder from "./TxBuilder.js";
8
8
  export * as Uplc from "./Uplc/index.js";
9
9
  export * as Wallet from "./Wallet.js";
10
+ export * as ZK from "./ZK.js";
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Cardano/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Cardano/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA"}