@hesohq/node 0.4.3-dev.35 → 0.5.0-dev.101
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/index.d.ts +247 -9
- package/index.js +14 -1
- package/package.json +6 -6
package/index.d.ts
CHANGED
|
@@ -72,9 +72,75 @@ export declare function verify(receiptBytes: Buffer | Uint8Array | string): Acti
|
|
|
72
72
|
/** Verify a receipt AND report its trusted-time status separately. */
|
|
73
73
|
export declare function verifyWithTime(receiptBytesInput: Buffer | Uint8Array | string): ActionVerdictWithTime
|
|
74
74
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
75
|
+
* The base verdict + the rendered signed metrics + the offline-recomputed cost.
|
|
76
|
+
*
|
|
77
|
+
* `verdict` / `trustLevel` are exactly what [`verify`] returns. The metric fields
|
|
78
|
+
* are the SIGNED values (the closed `status` / `token_source` enums rendered to
|
|
79
|
+
* their wire snake_case strings). `recomputedCostMicros` / `costDisplay` are
|
|
80
|
+
* RECOMPUTED from the rate card the caller passed in — `priced == false` (and
|
|
81
|
+
* both absent) when that card does not price the model; never a guessed figure.
|
|
82
|
+
* `cardIdMatches` tells the reader whether the card handed in is the one the
|
|
83
|
+
* receipt actually named.
|
|
84
|
+
*/
|
|
85
|
+
export interface MetricsVerdict {
|
|
86
|
+
/** The base `ActionOutcome` verdict tag (`"Valid"`, `"HashMismatch"`, …). */
|
|
87
|
+
verdict: string
|
|
88
|
+
/** The re-derived trust level (`"L0"`/`"L1"`); `""` unless `verdict == "Valid"`. */
|
|
89
|
+
trustLevel: string
|
|
90
|
+
/** Whether the receipt carried a signed `metrics` block. */
|
|
91
|
+
hasMetrics: boolean
|
|
92
|
+
/** Wall-clock duration in whole milliseconds. */
|
|
93
|
+
durationMs?: number
|
|
94
|
+
/** Execution-outcome class, wire snake_case (`"ok"`, `"server_error"`, …). */
|
|
95
|
+
status?: string
|
|
96
|
+
/** Transport status code, when one applied. */
|
|
97
|
+
statusCode?: number
|
|
98
|
+
/** Provider-reported (or estimated) input tokens. */
|
|
99
|
+
tokensIn?: number
|
|
100
|
+
/** Provider-reported (or estimated) output tokens. */
|
|
101
|
+
tokensOut?: number
|
|
102
|
+
/** Token-count source, wire snake_case (`"provider_reported"`/`"estimated"`). */
|
|
103
|
+
tokenSource?: string
|
|
104
|
+
/** Request bytes sent, when the transport exposed it. */
|
|
105
|
+
bytesIn?: number
|
|
106
|
+
/** Response bytes received, when the transport exposed it. */
|
|
107
|
+
bytesOut?: number
|
|
108
|
+
/** Transport-level retries before this outcome. */
|
|
109
|
+
retries?: number
|
|
110
|
+
/** The rate-card id AS NAMED in the signed receipt. */
|
|
111
|
+
rateCardId?: string
|
|
112
|
+
/** The `provider/model` key derived from the signed `action.fields`. */
|
|
113
|
+
modelKey?: string
|
|
114
|
+
/** Recomputed cost in micro-USD (`BigInt`); absent when not priced. */
|
|
115
|
+
recomputedCostMicros?: bigint
|
|
116
|
+
/** Recomputed cost as a 6-decimal display string; absent when not priced. */
|
|
117
|
+
costDisplay?: string
|
|
118
|
+
/** `true` iff the model is priced by the passed-in card. */
|
|
119
|
+
priced: boolean
|
|
120
|
+
/** Whether the passed-in card is the one the receipt named. */
|
|
121
|
+
cardIdMatches: boolean
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Verify a single `ActionReceipt` AND render its signed metrics + recompute cost
|
|
125
|
+
* from the passed-in public rate card — the node mirror of the WASM
|
|
126
|
+
* `verifyActionReceiptWithRates`.
|
|
127
|
+
*
|
|
128
|
+
* Runs the EXISTING offline verify for the base outcome + trust level (so that
|
|
129
|
+
* path is unchanged), then renders the signed metrics and recomputes the cost via
|
|
130
|
+
* the SHARED `heso_action::metrics_view` glue. Never throws on a malformed receipt
|
|
131
|
+
* or card — those degrade to `has_metrics: false` / `priced: false` exactly as the
|
|
132
|
+
* WASM export does. The cost render is purely informational and NEVER masks a
|
|
133
|
+
* verify failure: a tampered metric flips the `action_hash`, so `verdict` is a
|
|
134
|
+
* non-`Valid` tag while the (meaningless) recompute still reflects whatever bytes
|
|
135
|
+
* are present — the caller branches on `verdict`, never the dollar figure.
|
|
136
|
+
*
|
|
137
|
+
* `receipt_bytes` — the raw `ActionReceipt` JSON bytes (Buffer/Uint8Array/string).
|
|
138
|
+
* `rate_card_json` — the public rate-card JSON the cost is recomputed from.
|
|
139
|
+
*/
|
|
140
|
+
export declare function verifyWithRates(receiptBytes: Buffer | Uint8Array | string, rateCardJson: string): MetricsVerdict
|
|
141
|
+
/**
|
|
142
|
+
* Verify a receipt AND re-derive its ERT classification from the embedded taxonomy
|
|
143
|
+
* (heso-engine's ClassifyReDeriver). Only available when `process` is enabled.
|
|
78
144
|
*/
|
|
79
145
|
export declare function verifyRederiving(receiptBytesInput: Buffer | Uint8Array | string): ActionVerdict
|
|
80
146
|
/**
|
|
@@ -126,6 +192,74 @@ export declare function verifyApprovalToken(token: Buffer, actionCanonical: Buff
|
|
|
126
192
|
* `now_unix_secs` — current time as BigInt Unix seconds
|
|
127
193
|
*/
|
|
128
194
|
export declare function verifyDelegation(wire: Buffer, registeredOperatorKey: Buffer, actionHash: Buffer, approvalToken: Buffer, requiredScope: string, requiredDecision: string, nowUnixSecs: bigint): VerifiedDelegation
|
|
195
|
+
/**
|
|
196
|
+
* The kind-tagged verdict of [`verify_commitment`]. `verdict` is one of
|
|
197
|
+
* `"Valid"`, `"InvalidSignature"`, `"FingerprintMismatch"`, `"WrongAlgorithm"`,
|
|
198
|
+
* `"Malformed"`; the cloud appends ONLY on `"Valid"`. `signer_fpr` carries the
|
|
199
|
+
* recomputed `blake3(pubkey)` fingerprint (only meaningful on `"Valid"`).
|
|
200
|
+
*/
|
|
201
|
+
export interface CommitmentVerdict {
|
|
202
|
+
verdict: string
|
|
203
|
+
signerFpr: string
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* REJECT-MORE-ONLY. Verify a detached commitment-envelope signature received by
|
|
207
|
+
* the cloud: parse the envelope JSON bytes, re-canonicalize VIA THE KERNEL,
|
|
208
|
+
* `verify_strict` the detached Ed25519 signature under
|
|
209
|
+
* `COMMITMENT_SIGNING_DOMAIN`, and confirm the recomputed commitment fingerprint
|
|
210
|
+
* (`blake3(pubkey)`) equals `claimedSignerFpr`. Produces ZERO new canonical/
|
|
211
|
+
* signed bytes. Never throws — every outcome (including malformed input) is a
|
|
212
|
+
* kind-tagged [`CommitmentVerdict`] so the caller fails closed on any
|
|
213
|
+
* non-`"Valid"`.
|
|
214
|
+
*
|
|
215
|
+
* `envelopeBytes` — the envelope as JSON on the wire (Buffer)
|
|
216
|
+
* `operatorPubkeyB64` — the operator Ed25519 public key (base64 standard)
|
|
217
|
+
* `detachedSigB64` — the detached Ed25519 signature (base64 standard)
|
|
218
|
+
* `claimedSignerFpr` — the wire `signer_fpr` (`blake3(pubkey)` 64-hex)
|
|
219
|
+
*/
|
|
220
|
+
export declare function verifyCommitment(envelopeBytes: Buffer, operatorPubkeyB64: string, detachedSigB64: string, claimedSignerFpr: string): CommitmentVerdict
|
|
221
|
+
/**
|
|
222
|
+
* PURE. Return the RFC-8785 (JCS) canonical bytes of a commitment envelope JSON
|
|
223
|
+
* string — the exact bytes the detached operator signature is computed over
|
|
224
|
+
* (after the `COMMITMENT_SIGNING_DOMAIN` prefix). Delegates to the single kernel
|
|
225
|
+
* JCS impl; never re-canonicalizes. Throws `[MALFORMED]` if the JSON does not
|
|
226
|
+
* parse as a `CommitmentEnvelope` and `[CANON]` if it cannot be canonicalized.
|
|
227
|
+
*/
|
|
228
|
+
export declare function commitmentEnvelopeCanonicalBytes(envelopeJson: string): Buffer
|
|
229
|
+
/**
|
|
230
|
+
* The **commitment fingerprint** of an Ed25519 public key: `blake3(raw_pubkey)`,
|
|
231
|
+
* the full 32-byte digest, lowercase 64-hex, NO prefix. This is the value the
|
|
232
|
+
* producer puts in the wire `signer_fpr` and the cloud joins `approver_keys` on.
|
|
233
|
+
* It is DISTINCT from [`signer_fingerprint`] (the `heso:`-prefixed Grade-0
|
|
234
|
+
* fingerprint). Throws `[MALFORMED]` if `pubkeyB64` is not base64 of 32 bytes.
|
|
235
|
+
*/
|
|
236
|
+
export declare function commitmentFingerprint(pubkeyB64: string): string
|
|
237
|
+
/**
|
|
238
|
+
* The `heso:`-prefixed Grade-0 **signer fingerprint** of an Ed25519 public key
|
|
239
|
+
* (`heso_verify::signer_fingerprint`). This is the identity-tier fingerprint —
|
|
240
|
+
* NOT the commitment fingerprint (see [`commitment_fingerprint`]). Exposed here
|
|
241
|
+
* because it is otherwise unexposed in every binding and other surfaces need it.
|
|
242
|
+
* Returns `null` when `pubkeyB64` is not a valid 32-byte Ed25519 key.
|
|
243
|
+
*/
|
|
244
|
+
export declare function signerFingerprint(pubkeyB64: string): string | null
|
|
245
|
+
/**
|
|
246
|
+
* Stamp the cross-receipt chain block (`session_id`, `seq`, `prev_receipt_hash`)
|
|
247
|
+
* into an `ActionContent` BEFORE it is signed, then recompute its `action_hash`
|
|
248
|
+
* so the returned content is ready to sign — the producer-side helper that closes
|
|
249
|
+
* the JS verifiable-chain gap (CORE-WIRE design §A.4).
|
|
250
|
+
*
|
|
251
|
+
* `contentJson` — the unstamped `ActionContent` JSON
|
|
252
|
+
* `sessionId` — the chain/session this action is bound to
|
|
253
|
+
* `prevContentJson` — the predecessor receipt's `ActionContent` JSON, or `null`
|
|
254
|
+
* for genesis. The link hash + next `seq` are COMPUTED from
|
|
255
|
+
* it via the kernel's `link_hash` rule (matching `derive.py`).
|
|
256
|
+
*
|
|
257
|
+
* CRYPTO-SAFETY: stamping the chain block changes `action_canonical_bytes` →
|
|
258
|
+
* `action_hash` → the operator signature. This is a SUCCESS-PATH byte change. It
|
|
259
|
+
* is invoked ONLY for chained sessions; a standalone receipt (no call here) stays
|
|
260
|
+
* byte-identical to the existing standalone goldens.
|
|
261
|
+
*/
|
|
262
|
+
export declare function bindIntoChainJs(contentJson: string, sessionId: string, prevContentJson?: string | undefined | null): Buffer
|
|
129
263
|
/**
|
|
130
264
|
* Verify an ordered array of ActionReceipts as a tamper-evident chain.
|
|
131
265
|
* Input: array of Buffers (one per receipt) OR a JSON string of an array.
|
|
@@ -155,6 +289,49 @@ export declare function verifyConsistencyJs(oldSize: number, oldRootHex: string,
|
|
|
155
289
|
export declare function verifyAuditChain(bytes: Buffer | string): boolean
|
|
156
290
|
/** Return the hex hash of the embedded taxonomy (golden: 9f3bbaaf…). */
|
|
157
291
|
export declare function taxonomyHash(): string
|
|
292
|
+
/**
|
|
293
|
+
* The derived ERT a `classify` probe returns — the structural classification of
|
|
294
|
+
* observed facts against the taxonomy. Read-only and advisory: it signs/mints
|
|
295
|
+
* nothing and touches NO canonical/signed bytes (the same role as the PyO3
|
|
296
|
+
* `classify`). The string fields are the `snake_case` wire spellings.
|
|
297
|
+
*/
|
|
298
|
+
export interface ClassifyErt {
|
|
299
|
+
/** The matched taxonomy resource class id (e.g. `payment_endpoint`). */
|
|
300
|
+
resourceClass: string
|
|
301
|
+
/** The resource effect (`read_only`/`mutating`/`destructive`/…). */
|
|
302
|
+
effect: string
|
|
303
|
+
/** The egress lane (`none`/`internal`/`external`/…). */
|
|
304
|
+
egress: string
|
|
305
|
+
/** The observability lane. */
|
|
306
|
+
observability: string
|
|
307
|
+
/** The coarse verb wire spelling (`delete`/`payment`/`account_change`/…). */
|
|
308
|
+
coarseVerb: string
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Classify observed facts against the taxonomy and return the derived ERT.
|
|
312
|
+
*
|
|
313
|
+
* `signal_hints_json`: JSON-encoded `SignalHints` (Buffer, Uint8Array, or string)
|
|
314
|
+
* — the same wire shape as the `signal` field in `ProcessInput`. The target host
|
|
315
|
+
* is read out-of-band from a custom top-level `host` JSON key (SignalHints itself
|
|
316
|
+
* has no host field), exactly as the PyO3 `classify` twin does.
|
|
317
|
+
* `taxonomy_src`: pass `null` for the embedded taxonomy (the pinned
|
|
318
|
+
* `9f3bbaaf…` anchor), or TOML bytes to classify against a custom taxonomy.
|
|
319
|
+
*
|
|
320
|
+
* PURE READ-ONLY: this is an advisory probe — it signs/mints nothing and touches
|
|
321
|
+
* no canonical/signed bytes. It mirrors the fixed PyO3 `classify` byte-for-byte:
|
|
322
|
+
* the recorded enum hints (`effect`/`origin`/`observed_via`) are lowered via the
|
|
323
|
+
* SAME `Effect::parse`/`Origin::parse`/`ObservedVia::parse` the engine uses, so an
|
|
324
|
+
* unrecognized value parses to `None` (never an invented/relaxed lane). Only
|
|
325
|
+
* available with the `process` feature (it links `heso-engine`).
|
|
326
|
+
*/
|
|
327
|
+
export declare function classify(signalHintsJson: Buffer | Uint8Array | string, taxonomySrc?: Buffer | undefined | null): ClassifyErt
|
|
328
|
+
/**
|
|
329
|
+
* True when a coarse verb wire spelling trips the credential floor's
|
|
330
|
+
* "destructive" lane — the LOCKED set `{delete, payment, account_change}`. The
|
|
331
|
+
* single source of this mapping for JS callers, mirroring the PyO3 helper so the
|
|
332
|
+
* two bindings agree. Pure read-only.
|
|
333
|
+
*/
|
|
334
|
+
export declare function isDestructive(coarseVerb: string): boolean
|
|
158
335
|
/** Destructively redact fields and return the modified fields JSON. */
|
|
159
336
|
export declare function redactDestructiveJs(fieldsJson: string, fieldPaths: Array<string>): string
|
|
160
337
|
/**
|
|
@@ -162,6 +339,17 @@ export declare function redactDestructiveJs(fieldsJson: string, fieldPaths: Arra
|
|
|
162
339
|
* `salts` is an array of 32-byte Buffers (one per field, in order).
|
|
163
340
|
*/
|
|
164
341
|
export declare function redactCommitJs(fieldsJson: string, fieldPaths: Array<string>, salts: Array<Buffer>): RedactCommitResult
|
|
342
|
+
/**
|
|
343
|
+
* Verify a single commit-and-reveal field reveal against its signed redaction
|
|
344
|
+
* marker: recompute `BLAKE3(salt ++ field_path ++ value)` and check it equals
|
|
345
|
+
* `marker.commitment`. Pure (no OsRng, no filesystem); returns a bool, never
|
|
346
|
+
* throws on a mismatch. The Node half of "reveal-and-prove a redacted field".
|
|
347
|
+
*
|
|
348
|
+
* `reveal_json` — a `FieldReveal`: `{ field_path, salt_hex, value_json }`.
|
|
349
|
+
* `marker_json` — the matching `RedactionMarker` from the signed receipt's
|
|
350
|
+
* `content.redaction.markers`.
|
|
351
|
+
*/
|
|
352
|
+
export declare function verifyRevealJs(revealJson: string, markerJson: string): boolean
|
|
165
353
|
/**
|
|
166
354
|
* Construct an OperatorKey from a 32-byte seed (OsRng-free, deterministic).
|
|
167
355
|
* The preferred/documented entry point.
|
|
@@ -202,10 +390,16 @@ export declare function processAction(processInputJson: Buffer | Uint8Array | st
|
|
|
202
390
|
* returned ONLY if it opens `Valid(L1)`; any other verdict is surfaced as an
|
|
203
391
|
* error rather than handing back a receipt the offline verifier would reject.
|
|
204
392
|
*
|
|
205
|
-
* Returns the serialized ActionReceipt JSON bytes
|
|
206
|
-
*
|
|
393
|
+
* Returns the serialized ActionReceipt JSON bytes WITH the kernel-signed
|
|
394
|
+
* commitment block spliced in as a top-level `commitment` sibling (the same shape
|
|
395
|
+
* the engine `process` path emits, and the shape the SDK finalize consumer lifts
|
|
396
|
+
* via `receipt.get("commitment")`). The commitment is signed over the FINAL L1
|
|
397
|
+
* body by the SAME operator key — the SDK never holds the key (CORE-WIRE design
|
|
398
|
+
* §0.2). `chainHead` is the prior chain head this commitment links to (the SDK
|
|
399
|
+
* reads it off its local chain); absent/empty defaults to genesis. Only available
|
|
400
|
+
* with `process` (loads a key from the filesystem; never wasm-reachable).
|
|
207
401
|
*/
|
|
208
|
-
export declare function assembleL1FromParts(suspendedContentJson: string, approverRecordJson: string, approverPubkeyB64: string, coSigB64: string, projectRoot: string, keyPassphrase?: string | undefined | null, relayedAnchorJson?: string | undefined | null): Buffer
|
|
402
|
+
export declare function assembleL1FromParts(suspendedContentJson: string, approverRecordJson: string, approverPubkeyB64: string, coSigB64: string, projectRoot: string, keyPassphrase?: string | undefined | null, relayedAnchorJson?: string | undefined | null, chainHead?: string | undefined | null): Buffer
|
|
209
403
|
/**
|
|
210
404
|
* Assemble a complete multi-approver k-of-n QUORUM ActionReceipt from a suspended
|
|
211
405
|
* L0 body, the gate's `threshold` + `roster`, and the per-approver detached
|
|
@@ -224,10 +418,54 @@ export declare function assembleL1FromParts(suspendedContentJson: string, approv
|
|
|
224
418
|
* `parts_json` is a JSON array of `{ record, approverPubkeyB64, coSigB64 }`
|
|
225
419
|
* objects. `roster_json` is a JSON array of base64 approver public keys.
|
|
226
420
|
*
|
|
227
|
-
* Returns the serialized ActionReceipt JSON bytes
|
|
228
|
-
*
|
|
421
|
+
* Returns the serialized ActionReceipt JSON bytes WITH the kernel-signed commitment
|
|
422
|
+
* block spliced in as a top-level `commitment` sibling (the same shape the engine
|
|
423
|
+
* `process` path emits, and the shape the SDK finalize consumer lifts via
|
|
424
|
+
* `receipt.get("commitment")`). The commitment is signed over the FINAL quorum L1
|
|
425
|
+
* body by the SAME operator key — the SDK never holds the key (§0.2). `chainHead`
|
|
426
|
+
* is the prior chain head this commitment links to; absent/empty defaults to
|
|
427
|
+
* genesis. Only available with `process` (loads a key from the filesystem; never
|
|
428
|
+
* wasm-reachable).
|
|
429
|
+
*/
|
|
430
|
+
export declare function assembleQuorumFromParts(suspendedContentJson: string, threshold: number, rosterJson: string, partsJson: string, projectRoot: string, keyPassphrase?: string | undefined | null, chainHead?: string | undefined | null): Buffer
|
|
431
|
+
/**
|
|
432
|
+
* Suspend a gated action: mint the signed `suspended` chain link and return the
|
|
433
|
+
* raw resume token (returned ONCE) plus the action spec hash. Mirrors the PyO3
|
|
434
|
+
* `process_suspend` body 1:1 — the ProcessInput MUST carry `reclassify=false` so
|
|
435
|
+
* the descriptor is signed verbatim and stays byte-stable across the lifecycle.
|
|
436
|
+
*
|
|
437
|
+
* Returns JSON bytes:
|
|
438
|
+
* `{"session_id": str, "resume_token": str, "action_spec": str, "chain_path": str}`.
|
|
439
|
+
*/
|
|
440
|
+
export declare function processSuspend(processInputJson: Buffer | Uint8Array | string, projectRoot: string, sessionId: string, sla: string, expiresAt: string, onTimeout: string, contextScheme: string, contextBlob: Buffer, toolVersionHash?: string | undefined | null): Buffer
|
|
441
|
+
/**
|
|
442
|
+
* Resume a suspended session: re-read the chain, apply the decision, fire-or-replay.
|
|
443
|
+
* Mirrors the PyO3 `process_resume` body 1:1. On `Fire` it mints + appends the
|
|
444
|
+
* `completed` link under `ACTION_SIGNING_DOMAIN` and advances the cursor.
|
|
445
|
+
*
|
|
446
|
+
* Returns JSON bytes `{"decision": str, "committed": bool, "kind"?: str,
|
|
447
|
+
* "reason"?: str}` where `decision` is one of
|
|
448
|
+
* `fire`/`replay`/`pending`/`terminal`/`uncertain`/`refused`.
|
|
449
|
+
*/
|
|
450
|
+
export declare function processResume(processInputJson: Buffer | Uint8Array | string, projectRoot: string, sessionId: string, presentedToken: string, contextBlob: Buffer): Buffer
|
|
451
|
+
/**
|
|
452
|
+
* Append an approver/ledger-signed decision link to a session's chain. Mirrors the
|
|
453
|
+
* PyO3 `process_append_decision` body 1:1.
|
|
454
|
+
*
|
|
455
|
+
* `kind`: one of `"approved"` / `"denied"` / `"escalated"` / `"expired"`. **Fails
|
|
456
|
+
* closed** without a `decision.key` unless [`INSECURE_DECISION_KEY_ENV`] is set
|
|
457
|
+
* (see `load_decision_signer`) — the approver key is cloud-custodied in prod.
|
|
458
|
+
*/
|
|
459
|
+
export declare function processAppendDecision(projectRoot: string, sessionId: string, kind: string, reason?: string | undefined | null, decidedAt?: string | undefined | null): void
|
|
460
|
+
/**
|
|
461
|
+
* Read the current lifecycle state of a session chain (the head link's kind).
|
|
462
|
+
* Mirrors the PyO3 `process_read_chain_head` body 1:1.
|
|
463
|
+
*
|
|
464
|
+
* Returns the head kind as a lowercase string (`"suspended"` / `"approved"` /
|
|
465
|
+
* `"denied"` / `"expired"` / `"completed"` / `"escalated"`), or `None` if no chain
|
|
466
|
+
* exists yet.
|
|
229
467
|
*/
|
|
230
|
-
export declare function
|
|
468
|
+
export declare function processReadChainHead(projectRoot: string, sessionId: string): string | null
|
|
231
469
|
/** A loaded operator key, exposing just the public-key surface. */
|
|
232
470
|
export declare class OperatorKey {
|
|
233
471
|
/** Return the base64 standard-alphabet public key. */
|
package/index.js
CHANGED
|
@@ -310,11 +310,12 @@ if (!nativeBinding) {
|
|
|
310
310
|
throw new Error(`Failed to load native binding`)
|
|
311
311
|
}
|
|
312
312
|
|
|
313
|
-
const { OperatorKey, verify, verifyWithTime, verifyRederiving, actionCanonicalBytesJs, l1ContentCanonicalBytesJs, contentHash, anchoredContentHashJs, shortHash, chainHashHex, verifyApprovalToken, verifyDelegation, verifyChain, verifySessionChainJs, verifySessionChainWithRotationJs, verifyInclusionJs, verifyConsistencyJs, verifyAuditChain, taxonomyHash, redactDestructiveJs, redactCommitJs, keyFromSeed, generateKey, blake3Hex, processAction, assembleL1FromParts, assembleQuorumFromParts } = nativeBinding
|
|
313
|
+
const { OperatorKey, verify, verifyWithTime, verifyWithRates, verifyRederiving, actionCanonicalBytesJs, l1ContentCanonicalBytesJs, contentHash, anchoredContentHashJs, shortHash, chainHashHex, verifyApprovalToken, verifyDelegation, verifyCommitment, commitmentEnvelopeCanonicalBytes, commitmentFingerprint, signerFingerprint, bindIntoChainJs, verifyChain, verifySessionChainJs, verifySessionChainWithRotationJs, verifyInclusionJs, verifyConsistencyJs, verifyAuditChain, taxonomyHash, classify, isDestructive, redactDestructiveJs, redactCommitJs, verifyRevealJs, keyFromSeed, generateKey, blake3Hex, processAction, assembleL1FromParts, assembleQuorumFromParts, processSuspend, processResume, processAppendDecision, processReadChainHead } = nativeBinding
|
|
314
314
|
|
|
315
315
|
module.exports.OperatorKey = OperatorKey
|
|
316
316
|
module.exports.verify = verify
|
|
317
317
|
module.exports.verifyWithTime = verifyWithTime
|
|
318
|
+
module.exports.verifyWithRates = verifyWithRates
|
|
318
319
|
module.exports.verifyRederiving = verifyRederiving
|
|
319
320
|
module.exports.actionCanonicalBytesJs = actionCanonicalBytesJs
|
|
320
321
|
module.exports.l1ContentCanonicalBytesJs = l1ContentCanonicalBytesJs
|
|
@@ -324,6 +325,11 @@ module.exports.shortHash = shortHash
|
|
|
324
325
|
module.exports.chainHashHex = chainHashHex
|
|
325
326
|
module.exports.verifyApprovalToken = verifyApprovalToken
|
|
326
327
|
module.exports.verifyDelegation = verifyDelegation
|
|
328
|
+
module.exports.verifyCommitment = verifyCommitment
|
|
329
|
+
module.exports.commitmentEnvelopeCanonicalBytes = commitmentEnvelopeCanonicalBytes
|
|
330
|
+
module.exports.commitmentFingerprint = commitmentFingerprint
|
|
331
|
+
module.exports.signerFingerprint = signerFingerprint
|
|
332
|
+
module.exports.bindIntoChainJs = bindIntoChainJs
|
|
327
333
|
module.exports.verifyChain = verifyChain
|
|
328
334
|
module.exports.verifySessionChainJs = verifySessionChainJs
|
|
329
335
|
module.exports.verifySessionChainWithRotationJs = verifySessionChainWithRotationJs
|
|
@@ -331,11 +337,18 @@ module.exports.verifyInclusionJs = verifyInclusionJs
|
|
|
331
337
|
module.exports.verifyConsistencyJs = verifyConsistencyJs
|
|
332
338
|
module.exports.verifyAuditChain = verifyAuditChain
|
|
333
339
|
module.exports.taxonomyHash = taxonomyHash
|
|
340
|
+
module.exports.classify = classify
|
|
341
|
+
module.exports.isDestructive = isDestructive
|
|
334
342
|
module.exports.redactDestructiveJs = redactDestructiveJs
|
|
335
343
|
module.exports.redactCommitJs = redactCommitJs
|
|
344
|
+
module.exports.verifyRevealJs = verifyRevealJs
|
|
336
345
|
module.exports.keyFromSeed = keyFromSeed
|
|
337
346
|
module.exports.generateKey = generateKey
|
|
338
347
|
module.exports.blake3Hex = blake3Hex
|
|
339
348
|
module.exports.processAction = processAction
|
|
340
349
|
module.exports.assembleL1FromParts = assembleL1FromParts
|
|
341
350
|
module.exports.assembleQuorumFromParts = assembleQuorumFromParts
|
|
351
|
+
module.exports.processSuspend = processSuspend
|
|
352
|
+
module.exports.processResume = processResume
|
|
353
|
+
module.exports.processAppendDecision = processAppendDecision
|
|
354
|
+
module.exports.processReadChainHead = processReadChainHead
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hesohq/node",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0-dev.101",
|
|
4
4
|
"description": "napi-rs native Node.js addon for the HESO Enterprise trust layer",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -34,10 +34,10 @@
|
|
|
34
34
|
},
|
|
35
35
|
"license": "LicenseRef-Proprietary",
|
|
36
36
|
"optionalDependencies": {
|
|
37
|
-
"@hesohq/node-darwin-arm64": "0.
|
|
38
|
-
"@hesohq/node-darwin-x64": "0.
|
|
39
|
-
"@hesohq/node-linux-arm64-gnu": "0.
|
|
40
|
-
"@hesohq/node-linux-x64-gnu": "0.
|
|
41
|
-
"@hesohq/node-win32-x64-msvc": "0.
|
|
37
|
+
"@hesohq/node-darwin-arm64": "0.5.0-dev.101",
|
|
38
|
+
"@hesohq/node-darwin-x64": "0.5.0-dev.101",
|
|
39
|
+
"@hesohq/node-linux-arm64-gnu": "0.5.0-dev.101",
|
|
40
|
+
"@hesohq/node-linux-x64-gnu": "0.5.0-dev.101",
|
|
41
|
+
"@hesohq/node-win32-x64-msvc": "0.5.0-dev.101"
|
|
42
42
|
}
|
|
43
43
|
}
|