@usesigil/kit 0.1.0
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 +191 -0
- package/README.md +190 -0
- package/dist/advanced-analytics.d.ts +118 -0
- package/dist/advanced-analytics.d.ts.map +1 -0
- package/dist/advanced-analytics.js +341 -0
- package/dist/advanced-analytics.js.map +1 -0
- package/dist/agent-analytics.d.ts +76 -0
- package/dist/agent-analytics.d.ts.map +1 -0
- package/dist/agent-analytics.js +179 -0
- package/dist/agent-analytics.js.map +1 -0
- package/dist/agent-errors.d.ts +151 -0
- package/dist/agent-errors.d.ts.map +1 -0
- package/dist/agent-errors.js +2001 -0
- package/dist/agent-errors.js.map +1 -0
- package/dist/alt-config.d.ts +43 -0
- package/dist/alt-config.d.ts.map +1 -0
- package/dist/alt-config.js +78 -0
- package/dist/alt-config.js.map +1 -0
- package/dist/alt-loader.d.ts +47 -0
- package/dist/alt-loader.d.ts.map +1 -0
- package/dist/alt-loader.js +143 -0
- package/dist/alt-loader.js.map +1 -0
- package/dist/balance-tracker.d.ts +87 -0
- package/dist/balance-tracker.d.ts.map +1 -0
- package/dist/balance-tracker.js +181 -0
- package/dist/balance-tracker.js.map +1 -0
- package/dist/composer.d.ts +56 -0
- package/dist/composer.d.ts.map +1 -0
- package/dist/composer.js +77 -0
- package/dist/composer.js.map +1 -0
- package/dist/core/engine.d.ts +17 -0
- package/dist/core/engine.d.ts.map +1 -0
- package/dist/core/engine.js +177 -0
- package/dist/core/engine.js.map +1 -0
- package/dist/core/errors.d.ts +24 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +16 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/index.d.ts +9 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +10 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/policies.d.ts +75 -0
- package/dist/core/policies.d.ts.map +1 -0
- package/dist/core/policies.js +126 -0
- package/dist/core/policies.js.map +1 -0
- package/dist/core/registry.d.ts +29 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +125 -0
- package/dist/core/registry.js.map +1 -0
- package/dist/core/state.d.ts +71 -0
- package/dist/core/state.d.ts.map +1 -0
- package/dist/core/state.js +169 -0
- package/dist/core/state.js.map +1 -0
- package/dist/create-vault.d.ts +58 -0
- package/dist/create-vault.d.ts.map +1 -0
- package/dist/create-vault.js +90 -0
- package/dist/create-vault.js.map +1 -0
- package/dist/custody-adapter.d.ts +54 -0
- package/dist/custody-adapter.d.ts.map +1 -0
- package/dist/custody-adapter.js +45 -0
- package/dist/custody-adapter.js.map +1 -0
- package/dist/event-analytics.d.ts +45 -0
- package/dist/event-analytics.d.ts.map +1 -0
- package/dist/event-analytics.js +277 -0
- package/dist/event-analytics.js.map +1 -0
- package/dist/events.d.ts +56 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +151 -0
- package/dist/events.js.map +1 -0
- package/dist/formatting.d.ts +103 -0
- package/dist/formatting.d.ts.map +1 -0
- package/dist/formatting.js +244 -0
- package/dist/formatting.js.map +1 -0
- package/dist/generated/accounts/agentSpendOverlay.d.ts +54 -0
- package/dist/generated/accounts/agentSpendOverlay.d.ts.map +1 -0
- package/dist/generated/accounts/agentSpendOverlay.js +74 -0
- package/dist/generated/accounts/agentSpendOverlay.js.map +1 -0
- package/dist/generated/accounts/agentVault.d.ts +95 -0
- package/dist/generated/accounts/agentVault.d.ts.map +1 -0
- package/dist/generated/accounts/agentVault.js +83 -0
- package/dist/generated/accounts/agentVault.js.map +1 -0
- package/dist/generated/accounts/escrowDeposit.d.ts +50 -0
- package/dist/generated/accounts/escrowDeposit.d.ts.map +1 -0
- package/dist/generated/accounts/escrowDeposit.js +76 -0
- package/dist/generated/accounts/escrowDeposit.js.map +1 -0
- package/dist/generated/accounts/index.d.ts +17 -0
- package/dist/generated/accounts/index.d.ts.map +1 -0
- package/dist/generated/accounts/index.js +17 -0
- package/dist/generated/accounts/index.js.map +1 -0
- package/dist/generated/accounts/instructionConstraints.d.ts +37 -0
- package/dist/generated/accounts/instructionConstraints.d.ts.map +1 -0
- package/dist/generated/accounts/instructionConstraints.js +64 -0
- package/dist/generated/accounts/instructionConstraints.js.map +1 -0
- package/dist/generated/accounts/pendingConstraintsUpdate.d.ts +53 -0
- package/dist/generated/accounts/pendingConstraintsUpdate.d.ts.map +1 -0
- package/dist/generated/accounts/pendingConstraintsUpdate.js +68 -0
- package/dist/generated/accounts/pendingConstraintsUpdate.js.map +1 -0
- package/dist/generated/accounts/pendingPolicyUpdate.d.ts +72 -0
- package/dist/generated/accounts/pendingPolicyUpdate.d.ts.map +1 -0
- package/dist/generated/accounts/pendingPolicyUpdate.js +97 -0
- package/dist/generated/accounts/pendingPolicyUpdate.js.map +1 -0
- package/dist/generated/accounts/policyConfig.d.ts +180 -0
- package/dist/generated/accounts/policyConfig.d.ts.map +1 -0
- package/dist/generated/accounts/policyConfig.js +88 -0
- package/dist/generated/accounts/policyConfig.js.map +1 -0
- package/dist/generated/accounts/sessionAuthority.d.ts +104 -0
- package/dist/generated/accounts/sessionAuthority.d.ts.map +1 -0
- package/dist/generated/accounts/sessionAuthority.js +86 -0
- package/dist/generated/accounts/sessionAuthority.js.map +1 -0
- package/dist/generated/accounts/spendTracker.d.ts +60 -0
- package/dist/generated/accounts/spendTracker.d.ts.map +1 -0
- package/dist/generated/accounts/spendTracker.js +74 -0
- package/dist/generated/accounts/spendTracker.js.map +1 -0
- package/dist/generated/errors/index.d.ts +9 -0
- package/dist/generated/errors/index.d.ts.map +1 -0
- package/dist/generated/errors/index.js +9 -0
- package/dist/generated/errors/index.js.map +1 -0
- package/dist/generated/errors/sigil.d.ts +162 -0
- package/dist/generated/errors/sigil.d.ts.map +1 -0
- package/dist/generated/errors/sigil.js +237 -0
- package/dist/generated/errors/sigil.js.map +1 -0
- package/dist/generated/event-discriminators.d.ts +2 -0
- package/dist/generated/event-discriminators.d.ts.map +1 -0
- package/dist/generated/event-discriminators.js +39 -0
- package/dist/generated/event-discriminators.js.map +1 -0
- package/dist/generated/index.d.ts +13 -0
- package/dist/generated/index.d.ts.map +1 -0
- package/dist/generated/index.js +13 -0
- package/dist/generated/index.js.map +1 -0
- package/dist/generated/instructions/agentTransfer.d.ts +109 -0
- package/dist/generated/instructions/agentTransfer.d.ts.map +1 -0
- package/dist/generated/instructions/agentTransfer.js +211 -0
- package/dist/generated/instructions/agentTransfer.js.map +1 -0
- package/dist/generated/instructions/applyConstraintsUpdate.d.ts +55 -0
- package/dist/generated/instructions/applyConstraintsUpdate.d.ts.map +1 -0
- package/dist/generated/instructions/applyConstraintsUpdate.js +129 -0
- package/dist/generated/instructions/applyConstraintsUpdate.js.map +1 -0
- package/dist/generated/instructions/applyPendingPolicy.d.ts +55 -0
- package/dist/generated/instructions/applyPendingPolicy.d.ts.map +1 -0
- package/dist/generated/instructions/applyPendingPolicy.js +122 -0
- package/dist/generated/instructions/applyPendingPolicy.js.map +1 -0
- package/dist/generated/instructions/cancelConstraintsUpdate.d.ts +51 -0
- package/dist/generated/instructions/cancelConstraintsUpdate.d.ts.map +1 -0
- package/dist/generated/instructions/cancelConstraintsUpdate.js +115 -0
- package/dist/generated/instructions/cancelConstraintsUpdate.js.map +1 -0
- package/dist/generated/instructions/cancelPendingPolicy.d.ts +55 -0
- package/dist/generated/instructions/cancelPendingPolicy.d.ts.map +1 -0
- package/dist/generated/instructions/cancelPendingPolicy.js +122 -0
- package/dist/generated/instructions/cancelPendingPolicy.js.map +1 -0
- package/dist/generated/instructions/closeInstructionConstraints.d.ts +55 -0
- package/dist/generated/instructions/closeInstructionConstraints.d.ts.map +1 -0
- package/dist/generated/instructions/closeInstructionConstraints.js +120 -0
- package/dist/generated/instructions/closeInstructionConstraints.js.map +1 -0
- package/dist/generated/instructions/closeSettledEscrow.d.ts +72 -0
- package/dist/generated/instructions/closeSettledEscrow.d.ts.map +1 -0
- package/dist/generated/instructions/closeSettledEscrow.js +127 -0
- package/dist/generated/instructions/closeSettledEscrow.js.map +1 -0
- package/dist/generated/instructions/closeVault.d.ts +69 -0
- package/dist/generated/instructions/closeVault.d.ts.map +1 -0
- package/dist/generated/instructions/closeVault.js +142 -0
- package/dist/generated/instructions/closeVault.js.map +1 -0
- package/dist/generated/instructions/createEscrow.d.ts +131 -0
- package/dist/generated/instructions/createEscrow.d.ts.map +1 -0
- package/dist/generated/instructions/createEscrow.js +272 -0
- package/dist/generated/instructions/createEscrow.js.map +1 -0
- package/dist/generated/instructions/createInstructionConstraints.d.ts +69 -0
- package/dist/generated/instructions/createInstructionConstraints.d.ts.map +1 -0
- package/dist/generated/instructions/createInstructionConstraints.js +145 -0
- package/dist/generated/instructions/createInstructionConstraints.js.map +1 -0
- package/dist/generated/instructions/depositFunds.d.ts +82 -0
- package/dist/generated/instructions/depositFunds.d.ts.map +1 -0
- package/dist/generated/instructions/depositFunds.js +198 -0
- package/dist/generated/instructions/depositFunds.js.map +1 -0
- package/dist/generated/instructions/finalizeSession.d.ts +126 -0
- package/dist/generated/instructions/finalizeSession.d.ts.map +1 -0
- package/dist/generated/instructions/finalizeSession.js +218 -0
- package/dist/generated/instructions/finalizeSession.js.map +1 -0
- package/dist/generated/instructions/freezeVault.d.ts +40 -0
- package/dist/generated/instructions/freezeVault.d.ts.map +1 -0
- package/dist/generated/instructions/freezeVault.js +66 -0
- package/dist/generated/instructions/freezeVault.js.map +1 -0
- package/dist/generated/instructions/index.d.ts +37 -0
- package/dist/generated/instructions/index.d.ts.map +1 -0
- package/dist/generated/instructions/index.js +37 -0
- package/dist/generated/instructions/index.js.map +1 -0
- package/dist/generated/instructions/initializeVault.d.ts +122 -0
- package/dist/generated/instructions/initializeVault.d.ts.map +1 -0
- package/dist/generated/instructions/initializeVault.js +187 -0
- package/dist/generated/instructions/initializeVault.js.map +1 -0
- package/dist/generated/instructions/pauseAgent.d.ts +44 -0
- package/dist/generated/instructions/pauseAgent.d.ts.map +1 -0
- package/dist/generated/instructions/pauseAgent.js +72 -0
- package/dist/generated/instructions/pauseAgent.js.map +1 -0
- package/dist/generated/instructions/queueConstraintsUpdate.d.ts +73 -0
- package/dist/generated/instructions/queueConstraintsUpdate.d.ts.map +1 -0
- package/dist/generated/instructions/queueConstraintsUpdate.js +168 -0
- package/dist/generated/instructions/queueConstraintsUpdate.js.map +1 -0
- package/dist/generated/instructions/queuePolicyUpdate.d.ts +116 -0
- package/dist/generated/instructions/queuePolicyUpdate.d.ts.map +1 -0
- package/dist/generated/instructions/queuePolicyUpdate.js +173 -0
- package/dist/generated/instructions/queuePolicyUpdate.js.map +1 -0
- package/dist/generated/instructions/reactivateVault.d.ts +47 -0
- package/dist/generated/instructions/reactivateVault.d.ts.map +1 -0
- package/dist/generated/instructions/reactivateVault.js +74 -0
- package/dist/generated/instructions/reactivateVault.js.map +1 -0
- package/dist/generated/instructions/refundEscrow.d.ts +74 -0
- package/dist/generated/instructions/refundEscrow.d.ts.map +1 -0
- package/dist/generated/instructions/refundEscrow.js +142 -0
- package/dist/generated/instructions/refundEscrow.js.map +1 -0
- package/dist/generated/instructions/registerAgent.d.ts +55 -0
- package/dist/generated/instructions/registerAgent.d.ts.map +1 -0
- package/dist/generated/instructions/registerAgent.js +85 -0
- package/dist/generated/instructions/registerAgent.js.map +1 -0
- package/dist/generated/instructions/revokeAgent.d.ts +49 -0
- package/dist/generated/instructions/revokeAgent.d.ts.map +1 -0
- package/dist/generated/instructions/revokeAgent.js +81 -0
- package/dist/generated/instructions/revokeAgent.js.map +1 -0
- package/dist/generated/instructions/settleEscrow.d.ts +80 -0
- package/dist/generated/instructions/settleEscrow.d.ts.map +1 -0
- package/dist/generated/instructions/settleEscrow.js +173 -0
- package/dist/generated/instructions/settleEscrow.js.map +1 -0
- package/dist/generated/instructions/syncPositions.d.ts +44 -0
- package/dist/generated/instructions/syncPositions.d.ts.map +1 -0
- package/dist/generated/instructions/syncPositions.js +72 -0
- package/dist/generated/instructions/syncPositions.js.map +1 -0
- package/dist/generated/instructions/unpauseAgent.d.ts +44 -0
- package/dist/generated/instructions/unpauseAgent.d.ts.map +1 -0
- package/dist/generated/instructions/unpauseAgent.js +72 -0
- package/dist/generated/instructions/unpauseAgent.js.map +1 -0
- package/dist/generated/instructions/updateAgentPermissions.d.ts +68 -0
- package/dist/generated/instructions/updateAgentPermissions.d.ts.map +1 -0
- package/dist/generated/instructions/updateAgentPermissions.js +139 -0
- package/dist/generated/instructions/updateAgentPermissions.js.map +1 -0
- package/dist/generated/instructions/updateInstructionConstraints.d.ts +65 -0
- package/dist/generated/instructions/updateInstructionConstraints.d.ts.map +1 -0
- package/dist/generated/instructions/updateInstructionConstraints.js +131 -0
- package/dist/generated/instructions/updateInstructionConstraints.js.map +1 -0
- package/dist/generated/instructions/updatePolicy.d.ts +108 -0
- package/dist/generated/instructions/updatePolicy.d.ts.map +1 -0
- package/dist/generated/instructions/updatePolicy.js +143 -0
- package/dist/generated/instructions/updatePolicy.js.map +1 -0
- package/dist/generated/instructions/validateAndAuthorize.d.ts +171 -0
- package/dist/generated/instructions/validateAndAuthorize.d.ts.map +1 -0
- package/dist/generated/instructions/validateAndAuthorize.js +271 -0
- package/dist/generated/instructions/validateAndAuthorize.js.map +1 -0
- package/dist/generated/instructions/withdrawFunds.d.ts +74 -0
- package/dist/generated/instructions/withdrawFunds.d.ts.map +1 -0
- package/dist/generated/instructions/withdrawFunds.js +166 -0
- package/dist/generated/instructions/withdrawFunds.js.map +1 -0
- package/dist/generated/programs/index.d.ts +9 -0
- package/dist/generated/programs/index.d.ts.map +1 -0
- package/dist/generated/programs/index.js +9 -0
- package/dist/generated/programs/index.js.map +1 -0
- package/dist/generated/programs/sigil.d.ts +173 -0
- package/dist/generated/programs/sigil.d.ts.map +1 -0
- package/dist/generated/programs/sigil.js +443 -0
- package/dist/generated/programs/sigil.js.map +1 -0
- package/dist/generated/types/accountConstraint.d.ts +18 -0
- package/dist/generated/types/accountConstraint.d.ts.map +1 -0
- package/dist/generated/types/accountConstraint.js +24 -0
- package/dist/generated/types/accountConstraint.js.map +1 -0
- package/dist/generated/types/actionAuthorized.d.ts +39 -0
- package/dist/generated/types/actionAuthorized.d.ts.map +1 -0
- package/dist/generated/types/actionAuthorized.js +43 -0
- package/dist/generated/types/actionAuthorized.js.map +1 -0
- package/dist/generated/types/actionType.d.ts +37 -0
- package/dist/generated/types/actionType.d.ts.map +1 -0
- package/dist/generated/types/actionType.js +43 -0
- package/dist/generated/types/actionType.js.map +1 -0
- package/dist/generated/types/agentContributionEntry.d.ts +49 -0
- package/dist/generated/types/agentContributionEntry.d.ts.map +1 -0
- package/dist/generated/types/agentContributionEntry.js +26 -0
- package/dist/generated/types/agentContributionEntry.js.map +1 -0
- package/dist/generated/types/agentEntry.d.ts +24 -0
- package/dist/generated/types/agentEntry.d.ts.map +1 -0
- package/dist/generated/types/agentEntry.js +28 -0
- package/dist/generated/types/agentEntry.js.map +1 -0
- package/dist/generated/types/agentPausedEvent.d.ts +22 -0
- package/dist/generated/types/agentPausedEvent.d.ts.map +1 -0
- package/dist/generated/types/agentPausedEvent.js +26 -0
- package/dist/generated/types/agentPausedEvent.js.map +1 -0
- package/dist/generated/types/agentPermissionsUpdated.d.ts +24 -0
- package/dist/generated/types/agentPermissionsUpdated.d.ts.map +1 -0
- package/dist/generated/types/agentPermissionsUpdated.js +28 -0
- package/dist/generated/types/agentPermissionsUpdated.js.map +1 -0
- package/dist/generated/types/agentRegistered.d.ts +26 -0
- package/dist/generated/types/agentRegistered.d.ts.map +1 -0
- package/dist/generated/types/agentRegistered.js +30 -0
- package/dist/generated/types/agentRegistered.js.map +1 -0
- package/dist/generated/types/agentRevoked.d.ts +24 -0
- package/dist/generated/types/agentRevoked.d.ts.map +1 -0
- package/dist/generated/types/agentRevoked.js +28 -0
- package/dist/generated/types/agentRevoked.js.map +1 -0
- package/dist/generated/types/agentSpendLimitChecked.d.ts +28 -0
- package/dist/generated/types/agentSpendLimitChecked.d.ts.map +1 -0
- package/dist/generated/types/agentSpendLimitChecked.js +32 -0
- package/dist/generated/types/agentSpendLimitChecked.js.map +1 -0
- package/dist/generated/types/agentTransferExecuted.d.ts +24 -0
- package/dist/generated/types/agentTransferExecuted.d.ts.map +1 -0
- package/dist/generated/types/agentTransferExecuted.js +28 -0
- package/dist/generated/types/agentTransferExecuted.js.map +1 -0
- package/dist/generated/types/agentUnpausedEvent.d.ts +22 -0
- package/dist/generated/types/agentUnpausedEvent.d.ts.map +1 -0
- package/dist/generated/types/agentUnpausedEvent.js +26 -0
- package/dist/generated/types/agentUnpausedEvent.js.map +1 -0
- package/dist/generated/types/constraintEntry.d.ts +23 -0
- package/dist/generated/types/constraintEntry.d.ts.map +1 -0
- package/dist/generated/types/constraintEntry.js +27 -0
- package/dist/generated/types/constraintEntry.js.map +1 -0
- package/dist/generated/types/constraintOperator.d.ts +22 -0
- package/dist/generated/types/constraintOperator.d.ts.map +1 -0
- package/dist/generated/types/constraintOperator.js +28 -0
- package/dist/generated/types/constraintOperator.js.map +1 -0
- package/dist/generated/types/constraintsChangeApplied.d.ts +20 -0
- package/dist/generated/types/constraintsChangeApplied.d.ts.map +1 -0
- package/dist/generated/types/constraintsChangeApplied.js +24 -0
- package/dist/generated/types/constraintsChangeApplied.js.map +1 -0
- package/dist/generated/types/constraintsChangeCancelled.d.ts +16 -0
- package/dist/generated/types/constraintsChangeCancelled.d.ts.map +1 -0
- package/dist/generated/types/constraintsChangeCancelled.js +18 -0
- package/dist/generated/types/constraintsChangeCancelled.js.map +1 -0
- package/dist/generated/types/constraintsChangeQueued.d.ts +20 -0
- package/dist/generated/types/constraintsChangeQueued.d.ts.map +1 -0
- package/dist/generated/types/constraintsChangeQueued.js +24 -0
- package/dist/generated/types/constraintsChangeQueued.js.map +1 -0
- package/dist/generated/types/dataConstraint.d.ts +23 -0
- package/dist/generated/types/dataConstraint.d.ts.map +1 -0
- package/dist/generated/types/dataConstraint.js +27 -0
- package/dist/generated/types/dataConstraint.js.map +1 -0
- package/dist/generated/types/delegationRevoked.d.ts +22 -0
- package/dist/generated/types/delegationRevoked.d.ts.map +1 -0
- package/dist/generated/types/delegationRevoked.js +26 -0
- package/dist/generated/types/delegationRevoked.js.map +1 -0
- package/dist/generated/types/epochBucket.d.ts +28 -0
- package/dist/generated/types/epochBucket.d.ts.map +1 -0
- package/dist/generated/types/epochBucket.js +24 -0
- package/dist/generated/types/epochBucket.js.map +1 -0
- package/dist/generated/types/escrowCreated.d.ts +30 -0
- package/dist/generated/types/escrowCreated.d.ts.map +1 -0
- package/dist/generated/types/escrowCreated.js +34 -0
- package/dist/generated/types/escrowCreated.js.map +1 -0
- package/dist/generated/types/escrowRefunded.d.ts +26 -0
- package/dist/generated/types/escrowRefunded.d.ts.map +1 -0
- package/dist/generated/types/escrowRefunded.js +30 -0
- package/dist/generated/types/escrowRefunded.js.map +1 -0
- package/dist/generated/types/escrowSettled.d.ts +26 -0
- package/dist/generated/types/escrowSettled.d.ts.map +1 -0
- package/dist/generated/types/escrowSettled.js +30 -0
- package/dist/generated/types/escrowSettled.js.map +1 -0
- package/dist/generated/types/escrowStatus.d.ts +18 -0
- package/dist/generated/types/escrowStatus.d.ts.map +1 -0
- package/dist/generated/types/escrowStatus.js +24 -0
- package/dist/generated/types/escrowStatus.js.map +1 -0
- package/dist/generated/types/feesCollected.d.ts +38 -0
- package/dist/generated/types/feesCollected.d.ts.map +1 -0
- package/dist/generated/types/feesCollected.js +42 -0
- package/dist/generated/types/feesCollected.js.map +1 -0
- package/dist/generated/types/fundsDeposited.d.ts +24 -0
- package/dist/generated/types/fundsDeposited.d.ts.map +1 -0
- package/dist/generated/types/fundsDeposited.js +28 -0
- package/dist/generated/types/fundsDeposited.js.map +1 -0
- package/dist/generated/types/fundsWithdrawn.d.ts +26 -0
- package/dist/generated/types/fundsWithdrawn.d.ts.map +1 -0
- package/dist/generated/types/fundsWithdrawn.js +30 -0
- package/dist/generated/types/fundsWithdrawn.js.map +1 -0
- package/dist/generated/types/index.d.ts +50 -0
- package/dist/generated/types/index.d.ts.map +1 -0
- package/dist/generated/types/index.js +50 -0
- package/dist/generated/types/index.js.map +1 -0
- package/dist/generated/types/instructionConstraintsClosed.d.ts +20 -0
- package/dist/generated/types/instructionConstraintsClosed.d.ts.map +1 -0
- package/dist/generated/types/instructionConstraintsClosed.js +24 -0
- package/dist/generated/types/instructionConstraintsClosed.js.map +1 -0
- package/dist/generated/types/instructionConstraintsCreated.d.ts +24 -0
- package/dist/generated/types/instructionConstraintsCreated.d.ts.map +1 -0
- package/dist/generated/types/instructionConstraintsCreated.js +28 -0
- package/dist/generated/types/instructionConstraintsCreated.js.map +1 -0
- package/dist/generated/types/instructionConstraintsUpdated.d.ts +24 -0
- package/dist/generated/types/instructionConstraintsUpdated.d.ts.map +1 -0
- package/dist/generated/types/instructionConstraintsUpdated.js +28 -0
- package/dist/generated/types/instructionConstraintsUpdated.js.map +1 -0
- package/dist/generated/types/policyChangeApplied.d.ts +20 -0
- package/dist/generated/types/policyChangeApplied.d.ts.map +1 -0
- package/dist/generated/types/policyChangeApplied.js +24 -0
- package/dist/generated/types/policyChangeApplied.js.map +1 -0
- package/dist/generated/types/policyChangeCancelled.d.ts +16 -0
- package/dist/generated/types/policyChangeCancelled.d.ts.map +1 -0
- package/dist/generated/types/policyChangeCancelled.js +18 -0
- package/dist/generated/types/policyChangeCancelled.js.map +1 -0
- package/dist/generated/types/policyChangeQueued.d.ts +20 -0
- package/dist/generated/types/policyChangeQueued.d.ts.map +1 -0
- package/dist/generated/types/policyChangeQueued.js +24 -0
- package/dist/generated/types/policyChangeQueued.js.map +1 -0
- package/dist/generated/types/policyUpdated.d.ts +34 -0
- package/dist/generated/types/policyUpdated.d.ts.map +1 -0
- package/dist/generated/types/policyUpdated.js +38 -0
- package/dist/generated/types/policyUpdated.js.map +1 -0
- package/dist/generated/types/positionsSynced.d.ts +24 -0
- package/dist/generated/types/positionsSynced.d.ts.map +1 -0
- package/dist/generated/types/positionsSynced.js +28 -0
- package/dist/generated/types/positionsSynced.js.map +1 -0
- package/dist/generated/types/protocolSpendCounter.d.ts +33 -0
- package/dist/generated/types/protocolSpendCounter.d.ts.map +1 -0
- package/dist/generated/types/protocolSpendCounter.js +26 -0
- package/dist/generated/types/protocolSpendCounter.js.map +1 -0
- package/dist/generated/types/sessionFinalized.d.ts +32 -0
- package/dist/generated/types/sessionFinalized.d.ts.map +1 -0
- package/dist/generated/types/sessionFinalized.js +36 -0
- package/dist/generated/types/sessionFinalized.js.map +1 -0
- package/dist/generated/types/vaultClosed.d.ts +22 -0
- package/dist/generated/types/vaultClosed.d.ts.map +1 -0
- package/dist/generated/types/vaultClosed.js +26 -0
- package/dist/generated/types/vaultClosed.js.map +1 -0
- package/dist/generated/types/vaultCreated.d.ts +24 -0
- package/dist/generated/types/vaultCreated.d.ts.map +1 -0
- package/dist/generated/types/vaultCreated.js +28 -0
- package/dist/generated/types/vaultCreated.js.map +1 -0
- package/dist/generated/types/vaultFrozen.d.ts +24 -0
- package/dist/generated/types/vaultFrozen.d.ts.map +1 -0
- package/dist/generated/types/vaultFrozen.js +28 -0
- package/dist/generated/types/vaultFrozen.js.map +1 -0
- package/dist/generated/types/vaultReactivated.d.ts +24 -0
- package/dist/generated/types/vaultReactivated.d.ts.map +1 -0
- package/dist/generated/types/vaultReactivated.js +28 -0
- package/dist/generated/types/vaultReactivated.js.map +1 -0
- package/dist/generated/types/vaultStatus.d.ts +19 -0
- package/dist/generated/types/vaultStatus.d.ts.map +1 -0
- package/dist/generated/types/vaultStatus.js +25 -0
- package/dist/generated/types/vaultStatus.js.map +1 -0
- package/dist/index.d.ts +74 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +113 -0
- package/dist/index.js.map +1 -0
- package/dist/inscribe.d.ts +134 -0
- package/dist/inscribe.d.ts.map +1 -0
- package/dist/inscribe.js +149 -0
- package/dist/inscribe.js.map +1 -0
- package/dist/inspector.d.ts +85 -0
- package/dist/inspector.d.ts.map +1 -0
- package/dist/inspector.js +188 -0
- package/dist/inspector.js.map +1 -0
- package/dist/math-utils.d.ts +15 -0
- package/dist/math-utils.d.ts.map +1 -0
- package/dist/math-utils.js +29 -0
- package/dist/math-utils.js.map +1 -0
- package/dist/owner-transaction.d.ts +42 -0
- package/dist/owner-transaction.d.ts.map +1 -0
- package/dist/owner-transaction.js +71 -0
- package/dist/owner-transaction.js.map +1 -0
- package/dist/policies.d.ts +70 -0
- package/dist/policies.d.ts.map +1 -0
- package/dist/policies.js +87 -0
- package/dist/policies.js.map +1 -0
- package/dist/portfolio-analytics.d.ts +82 -0
- package/dist/portfolio-analytics.d.ts.map +1 -0
- package/dist/portfolio-analytics.js +232 -0
- package/dist/portfolio-analytics.js.map +1 -0
- package/dist/presets.d.ts +108 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.js +110 -0
- package/dist/presets.js.map +1 -0
- package/dist/priority-fees.d.ts +49 -0
- package/dist/priority-fees.d.ts.map +1 -0
- package/dist/priority-fees.js +175 -0
- package/dist/priority-fees.js.map +1 -0
- package/dist/protocol-analytics.d.ts +35 -0
- package/dist/protocol-analytics.d.ts.map +1 -0
- package/dist/protocol-analytics.js +64 -0
- package/dist/protocol-analytics.js.map +1 -0
- package/dist/protocol-names.d.ts +9 -0
- package/dist/protocol-names.d.ts.map +1 -0
- package/dist/protocol-names.js +18 -0
- package/dist/protocol-names.js.map +1 -0
- package/dist/protocol-resolver.d.ts +54 -0
- package/dist/protocol-resolver.d.ts.map +1 -0
- package/dist/protocol-resolver.js +123 -0
- package/dist/protocol-resolver.js.map +1 -0
- package/dist/resolve-accounts.d.ts +38 -0
- package/dist/resolve-accounts.d.ts.map +1 -0
- package/dist/resolve-accounts.js +120 -0
- package/dist/resolve-accounts.js.map +1 -0
- package/dist/rpc-helpers.d.ts +50 -0
- package/dist/rpc-helpers.d.ts.map +1 -0
- package/dist/rpc-helpers.js +119 -0
- package/dist/rpc-helpers.js.map +1 -0
- package/dist/seal.d.ts +211 -0
- package/dist/seal.d.ts.map +1 -0
- package/dist/seal.js +569 -0
- package/dist/seal.js.map +1 -0
- package/dist/security-analytics.d.ts +85 -0
- package/dist/security-analytics.d.ts.map +1 -0
- package/dist/security-analytics.js +510 -0
- package/dist/security-analytics.js.map +1 -0
- package/dist/shield.d.ts +235 -0
- package/dist/shield.d.ts.map +1 -0
- package/dist/shield.js +701 -0
- package/dist/shield.js.map +1 -0
- package/dist/simulation.d.ts +111 -0
- package/dist/simulation.d.ts.map +1 -0
- package/dist/simulation.js +514 -0
- package/dist/simulation.js.map +1 -0
- package/dist/spending-analytics.d.ts +91 -0
- package/dist/spending-analytics.d.ts.map +1 -0
- package/dist/spending-analytics.js +217 -0
- package/dist/spending-analytics.js.map +1 -0
- package/dist/state-resolver.d.ts +173 -0
- package/dist/state-resolver.d.ts.map +1 -0
- package/dist/state-resolver.js +660 -0
- package/dist/state-resolver.js.map +1 -0
- package/dist/tee/cache.d.ts +28 -0
- package/dist/tee/cache.d.ts.map +1 -0
- package/dist/tee/cache.js +75 -0
- package/dist/tee/cache.js.map +1 -0
- package/dist/tee/index.d.ts +9 -0
- package/dist/tee/index.d.ts.map +1 -0
- package/dist/tee/index.js +9 -0
- package/dist/tee/index.js.map +1 -0
- package/dist/tee/nitro-root.d.ts +11 -0
- package/dist/tee/nitro-root.d.ts.map +1 -0
- package/dist/tee/nitro-root.js +24 -0
- package/dist/tee/nitro-root.js.map +1 -0
- package/dist/tee/providers/crossmint.d.ts +12 -0
- package/dist/tee/providers/crossmint.d.ts.map +1 -0
- package/dist/tee/providers/crossmint.js +73 -0
- package/dist/tee/providers/crossmint.js.map +1 -0
- package/dist/tee/providers/privy.d.ts +12 -0
- package/dist/tee/providers/privy.d.ts.map +1 -0
- package/dist/tee/providers/privy.js +73 -0
- package/dist/tee/providers/privy.js.map +1 -0
- package/dist/tee/providers/turnkey.d.ts +34 -0
- package/dist/tee/providers/turnkey.d.ts.map +1 -0
- package/dist/tee/providers/turnkey.js +401 -0
- package/dist/tee/providers/turnkey.js.map +1 -0
- package/dist/tee/types.d.ts +124 -0
- package/dist/tee/types.d.ts.map +1 -0
- package/dist/tee/types.js +51 -0
- package/dist/tee/types.js.map +1 -0
- package/dist/tee/verify.d.ts +34 -0
- package/dist/tee/verify.d.ts.map +1 -0
- package/dist/tee/verify.js +177 -0
- package/dist/tee/verify.js.map +1 -0
- package/dist/tee/wallet-types.d.ts +61 -0
- package/dist/tee/wallet-types.d.ts.map +1 -0
- package/dist/tee/wallet-types.js +42 -0
- package/dist/tee/wallet-types.js.map +1 -0
- package/dist/testing/devnet.d.ts +64 -0
- package/dist/testing/devnet.d.ts.map +1 -0
- package/dist/testing/devnet.js +222 -0
- package/dist/testing/devnet.js.map +1 -0
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +9 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/mock-rpc.d.ts +31 -0
- package/dist/testing/mock-rpc.d.ts.map +1 -0
- package/dist/testing/mock-rpc.js +50 -0
- package/dist/testing/mock-rpc.js.map +1 -0
- package/dist/testing/mock-state.d.ts +35 -0
- package/dist/testing/mock-state.d.ts.map +1 -0
- package/dist/testing/mock-state.js +86 -0
- package/dist/testing/mock-state.js.map +1 -0
- package/dist/tokens.d.ts +35 -0
- package/dist/tokens.d.ts.map +1 -0
- package/dist/tokens.js +157 -0
- package/dist/tokens.js.map +1 -0
- package/dist/transaction-executor.d.ts +116 -0
- package/dist/transaction-executor.d.ts.map +1 -0
- package/dist/transaction-executor.js +165 -0
- package/dist/transaction-executor.js.map +1 -0
- package/dist/types.d.ts +102 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +216 -0
- package/dist/types.js.map +1 -0
- package/dist/vault-analytics.d.ts +83 -0
- package/dist/vault-analytics.d.ts.map +1 -0
- package/dist/vault-analytics.js +175 -0
- package/dist/vault-analytics.js.map +1 -0
- package/dist/velocity-tracker.d.ts +79 -0
- package/dist/velocity-tracker.d.ts.map +1 -0
- package/dist/velocity-tracker.js +183 -0
- package/dist/velocity-tracker.js.map +1 -0
- package/dist/x402/amount-guard.d.ts +26 -0
- package/dist/x402/amount-guard.d.ts.map +1 -0
- package/dist/x402/amount-guard.js +80 -0
- package/dist/x402/amount-guard.js.map +1 -0
- package/dist/x402/audit-trail.d.ts +26 -0
- package/dist/x402/audit-trail.d.ts.map +1 -0
- package/dist/x402/audit-trail.js +32 -0
- package/dist/x402/audit-trail.js.map +1 -0
- package/dist/x402/codec.d.ts +26 -0
- package/dist/x402/codec.d.ts.map +1 -0
- package/dist/x402/codec.js +95 -0
- package/dist/x402/codec.js.map +1 -0
- package/dist/x402/errors.d.ts +34 -0
- package/dist/x402/errors.d.ts.map +1 -0
- package/dist/x402/errors.js +53 -0
- package/dist/x402/errors.js.map +1 -0
- package/dist/x402/facilitator-verify.d.ts +24 -0
- package/dist/x402/facilitator-verify.d.ts.map +1 -0
- package/dist/x402/facilitator-verify.js +74 -0
- package/dist/x402/facilitator-verify.js.map +1 -0
- package/dist/x402/index.d.ts +14 -0
- package/dist/x402/index.d.ts.map +1 -0
- package/dist/x402/index.js +23 -0
- package/dist/x402/index.js.map +1 -0
- package/dist/x402/nonce-tracker.d.ts +65 -0
- package/dist/x402/nonce-tracker.d.ts.map +1 -0
- package/dist/x402/nonce-tracker.js +123 -0
- package/dist/x402/nonce-tracker.js.map +1 -0
- package/dist/x402/payment-selector.d.ts +20 -0
- package/dist/x402/payment-selector.d.ts.map +1 -0
- package/dist/x402/payment-selector.js +49 -0
- package/dist/x402/payment-selector.js.map +1 -0
- package/dist/x402/policy-bridge.d.ts +23 -0
- package/dist/x402/policy-bridge.d.ts.map +1 -0
- package/dist/x402/policy-bridge.js +67 -0
- package/dist/x402/policy-bridge.js.map +1 -0
- package/dist/x402/shielded-fetch.d.ts +46 -0
- package/dist/x402/shielded-fetch.d.ts.map +1 -0
- package/dist/x402/shielded-fetch.js +342 -0
- package/dist/x402/shielded-fetch.js.map +1 -0
- package/dist/x402/transfer-builder.d.ts +43 -0
- package/dist/x402/transfer-builder.d.ts.map +1 -0
- package/dist/x402/transfer-builder.js +126 -0
- package/dist/x402/transfer-builder.js.map +1 -0
- package/dist/x402/types.d.ts +109 -0
- package/dist/x402/types.d.ts.map +1 -0
- package/dist/x402/types.js +8 -0
- package/dist/x402/types.js.map +1 -0
- package/package.json +98 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-resolver.js","sourceRoot":"","sources":["../src/state-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TEE Attestation Cache
|
|
3
|
+
*
|
|
4
|
+
* TTL-based cache for attestation results, keyed by base58 public key.
|
|
5
|
+
* Pattern follows PriorityFeeEstimator in priority-fees.ts.
|
|
6
|
+
*/
|
|
7
|
+
import type { AttestationResult } from "./types.js";
|
|
8
|
+
/** Default cache TTL: 1 hour */
|
|
9
|
+
export declare const DEFAULT_CACHE_TTL_MS = 3600000;
|
|
10
|
+
export declare class AttestationCache {
|
|
11
|
+
private readonly cache;
|
|
12
|
+
private readonly ttlMs;
|
|
13
|
+
private readonly maxEntries;
|
|
14
|
+
constructor(ttlMs?: number, maxEntries?: number);
|
|
15
|
+
/** Get a cached result if it exists and hasn't expired. */
|
|
16
|
+
get(publicKey: string): AttestationResult | undefined;
|
|
17
|
+
/** Store a result in the cache. Optional per-entry TTL overrides the default. */
|
|
18
|
+
set(publicKey: string, result: AttestationResult, ttlMs?: number): void;
|
|
19
|
+
/** Remove a specific entry. */
|
|
20
|
+
delete(publicKey: string): boolean;
|
|
21
|
+
/** Remove all entries whose key starts with the given prefix. */
|
|
22
|
+
deleteByPrefix(prefix: string): number;
|
|
23
|
+
/** Clear all cached entries. */
|
|
24
|
+
clear(): void;
|
|
25
|
+
/** Number of entries currently in cache (including expired). */
|
|
26
|
+
get size(): number;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/tee/cache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAOpD,gCAAgC;AAChC,eAAO,MAAM,oBAAoB,UAAY,CAAC;AAK9C,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAGlC,KAAK,GAAE,MAA6B,EACpC,UAAU,GAAE,MAA0B;IAWxC,2DAA2D;IAC3D,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAUrD,iFAAiF;IACjF,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAgBvE,+BAA+B;IAC/B,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIlC,iEAAiE;IACjE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAWtC,gCAAgC;IAChC,KAAK,IAAI,IAAI;IAIb,gEAAgE;IAChE,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TEE Attestation Cache
|
|
3
|
+
*
|
|
4
|
+
* TTL-based cache for attestation results, keyed by base58 public key.
|
|
5
|
+
* Pattern follows PriorityFeeEstimator in priority-fees.ts.
|
|
6
|
+
*/
|
|
7
|
+
/** Default cache TTL: 1 hour */
|
|
8
|
+
export const DEFAULT_CACHE_TTL_MS = 3_600_000;
|
|
9
|
+
/** Maximum number of entries allowed in the cache to prevent unbounded memory growth. */
|
|
10
|
+
const MAX_CACHE_ENTRIES = 1000;
|
|
11
|
+
export class AttestationCache {
|
|
12
|
+
cache = new Map();
|
|
13
|
+
ttlMs;
|
|
14
|
+
maxEntries;
|
|
15
|
+
constructor(ttlMs = DEFAULT_CACHE_TTL_MS, maxEntries = MAX_CACHE_ENTRIES) {
|
|
16
|
+
// M5: Guard against NaN/negative/non-finite TTL values
|
|
17
|
+
this.ttlMs =
|
|
18
|
+
Number.isFinite(ttlMs) && ttlMs > 0 ? ttlMs : DEFAULT_CACHE_TTL_MS;
|
|
19
|
+
this.maxEntries =
|
|
20
|
+
Number.isFinite(maxEntries) && maxEntries > 0
|
|
21
|
+
? maxEntries
|
|
22
|
+
: MAX_CACHE_ENTRIES;
|
|
23
|
+
}
|
|
24
|
+
/** Get a cached result if it exists and hasn't expired. */
|
|
25
|
+
get(publicKey) {
|
|
26
|
+
const entry = this.cache.get(publicKey);
|
|
27
|
+
if (!entry)
|
|
28
|
+
return undefined;
|
|
29
|
+
if (Date.now() >= entry.expiresAt) {
|
|
30
|
+
this.cache.delete(publicKey);
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
return entry.result;
|
|
34
|
+
}
|
|
35
|
+
/** Store a result in the cache. Optional per-entry TTL overrides the default. */
|
|
36
|
+
set(publicKey, result, ttlMs) {
|
|
37
|
+
// M4: Evict oldest entry when cache is full to prevent unbounded memory growth
|
|
38
|
+
if (this.cache.size >= this.maxEntries && !this.cache.has(publicKey)) {
|
|
39
|
+
const oldestKey = this.cache.keys().next().value;
|
|
40
|
+
if (oldestKey !== undefined)
|
|
41
|
+
this.cache.delete(oldestKey);
|
|
42
|
+
}
|
|
43
|
+
const effectiveTtl = ttlMs !== undefined && Number.isFinite(ttlMs) && ttlMs > 0
|
|
44
|
+
? ttlMs
|
|
45
|
+
: this.ttlMs;
|
|
46
|
+
this.cache.set(publicKey, {
|
|
47
|
+
result,
|
|
48
|
+
expiresAt: Date.now() + effectiveTtl,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/** Remove a specific entry. */
|
|
52
|
+
delete(publicKey) {
|
|
53
|
+
return this.cache.delete(publicKey);
|
|
54
|
+
}
|
|
55
|
+
/** Remove all entries whose key starts with the given prefix. */
|
|
56
|
+
deleteByPrefix(prefix) {
|
|
57
|
+
let count = 0;
|
|
58
|
+
for (const key of [...this.cache.keys()]) {
|
|
59
|
+
if (key.startsWith(prefix)) {
|
|
60
|
+
this.cache.delete(key);
|
|
61
|
+
count++;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return count;
|
|
65
|
+
}
|
|
66
|
+
/** Clear all cached entries. */
|
|
67
|
+
clear() {
|
|
68
|
+
this.cache.clear();
|
|
69
|
+
}
|
|
70
|
+
/** Number of entries currently in cache (including expired). */
|
|
71
|
+
get size() {
|
|
72
|
+
return this.cache.size;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/tee/cache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,gCAAgC;AAChC,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAC;AAE9C,yFAAyF;AACzF,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,MAAM,OAAO,gBAAgB;IACV,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IACtC,KAAK,CAAS;IACd,UAAU,CAAS;IAEpC,YACE,QAAgB,oBAAoB,EACpC,aAAqB,iBAAiB;QAEtC,uDAAuD;QACvD,IAAI,CAAC,KAAK;YACR,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC;QACrE,IAAI,CAAC,UAAU;YACb,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC;gBAC3C,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,iBAAiB,CAAC;IAC1B,CAAC;IAED,2DAA2D;IAC3D,GAAG,CAAC,SAAiB;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IAED,iFAAiF;IACjF,GAAG,CAAC,SAAiB,EAAE,MAAyB,EAAE,KAAc;QAC9D,+EAA+E;QAC/E,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACjD,IAAI,SAAS,KAAK,SAAS;gBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,YAAY,GAChB,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;YACxD,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE;YACxB,MAAM;YACN,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY;SACrC,CAAC,CAAC;IACL,CAAC;IAED,+BAA+B;IAC/B,MAAM,CAAC,SAAiB;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,iEAAiE;IACjE,cAAc,CAAC,MAAc;QAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACzC,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACvB,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gCAAgC;IAChC,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,gEAAgE;IAChE,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { AttestationStatus, type TeeProvider, type AttestationResult, type AttestationConfig, type AttestationMetadata, type AttestationLevel, type VerifiedTeeWallet, type NitroPcrValues, type TurnkeyAttestationBundle, } from "./types.js";
|
|
2
|
+
export { AttestationCache, DEFAULT_CACHE_TTL_MS } from "./cache.js";
|
|
3
|
+
export { VALID_TEE_PROVIDERS, isTeeWallet, TeeAttestationError, AttestationCertChainError, AttestationPcrMismatchError, } from "./wallet-types.js";
|
|
4
|
+
export type { WalletLike, TeeWallet } from "./wallet-types.js";
|
|
5
|
+
export { verifyTeeAttestation, clearAttestationCache, deleteFromAttestationCache, } from "./verify.js";
|
|
6
|
+
export { verifyCrossmint } from "./providers/crossmint.js";
|
|
7
|
+
export { verifyPrivy } from "./providers/privy.js";
|
|
8
|
+
export { verifyTurnkey } from "./providers/turnkey.js";
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tee/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,wBAAwB,GAC9B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// TEE Remote Attestation — barrel exports
|
|
2
|
+
export { AttestationStatus, } from "./types.js";
|
|
3
|
+
export { AttestationCache, DEFAULT_CACHE_TTL_MS } from "./cache.js";
|
|
4
|
+
export { VALID_TEE_PROVIDERS, isTeeWallet, TeeAttestationError, AttestationCertChainError, AttestationPcrMismatchError, } from "./wallet-types.js";
|
|
5
|
+
export { verifyTeeAttestation, clearAttestationCache, deleteFromAttestationCache, } from "./verify.js";
|
|
6
|
+
export { verifyCrossmint } from "./providers/crossmint.js";
|
|
7
|
+
export { verifyPrivy } from "./providers/privy.js";
|
|
8
|
+
export { verifyTurnkey } from "./providers/turnkey.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tee/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAE1C,OAAO,EACL,iBAAiB,GASlB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AWS Nitro Enclaves Root CA Certificate (PEM)
|
|
3
|
+
*
|
|
4
|
+
* Downloaded from: https://aws-nitro-enclaves.amazonaws.com/AWS_NitroEnclaves_Root-G1.zip
|
|
5
|
+
* Subject: CN=aws.nitro-enclaves, OU=AWS, O=Amazon, C=US
|
|
6
|
+
* Validity: 2019-10-28 to 2049-10-28 (30-year lifetime)
|
|
7
|
+
* Algorithm: ECDSA P-384
|
|
8
|
+
* Fingerprint (SHA-256): 64:1A:03:21:A3:E2:44:EF:E4:56:46:31:95:D6:06:31:7E:D7:CD:CC:3C:17:56:E0:98:93:F3:C6:8F:79:BB:5B
|
|
9
|
+
*/
|
|
10
|
+
export declare const AWS_NITRO_ROOT_CA_PEM = "-----BEGIN CERTIFICATE-----\nMIICETCCAZagAwIBAgIRAPkxdWgbkK/hHUbMtOTn+FYwCgYIKoZIzj0EAwMwSTEL\nMAkGA1UEBhMCVVMxDzANBgNVBAoMBkFtYXpvbjEMMAoGA1UECwwDQVdTMRswGQYD\nVQQDDBJhd3Mubml0cm8tZW5jbGF2ZXMwHhcNMTkxMDI4MTMyODA1WhcNNDkxMDI4\nMTQyODA1WjBJMQswCQYDVQQGEwJVUzEPMA0GA1UECgwGQW1hem9uMQwwCgYDVQQL\nDANBV1MxGzAZBgNVBAMMEmF3cy5uaXRyby1lbmNsYXZlczB2MBAGByqGSM49AgEG\nBSuBBAAiA2IABPwCVOumCMHzaHDimtqQvkY4MpJzbolL//Zy2YlES1BR5TSksfbb\n48C8WBoyt7F2Bw7eEtaaP+ohG2bnUs990d0JX28TcPQXCEPZ3BABIeTPYwEoCWZE\nh8l5YoQwTcU/9KNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUkCW1DdkF\nR+eWw5b6cp3PmanfS5YwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2kAMGYC\nMQCjfy+Rocm9Xue4YnwWmNJVA44fA0P5W2OpYow9OYCVRaEevL8uO1XYru5xtMPW\nrfMCMQCi85sWBbJwKKXdS6BptQFuZbT73o/gBh1qUxl/nNr12UO8Yfwr6wPLb+6N\nIwLz3/Y=\n-----END CERTIFICATE-----";
|
|
11
|
+
//# sourceMappingURL=nitro-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nitro-root.d.ts","sourceRoot":"","sources":["../../src/tee/nitro-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,2xBAaR,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AWS Nitro Enclaves Root CA Certificate (PEM)
|
|
3
|
+
*
|
|
4
|
+
* Downloaded from: https://aws-nitro-enclaves.amazonaws.com/AWS_NitroEnclaves_Root-G1.zip
|
|
5
|
+
* Subject: CN=aws.nitro-enclaves, OU=AWS, O=Amazon, C=US
|
|
6
|
+
* Validity: 2019-10-28 to 2049-10-28 (30-year lifetime)
|
|
7
|
+
* Algorithm: ECDSA P-384
|
|
8
|
+
* Fingerprint (SHA-256): 64:1A:03:21:A3:E2:44:EF:E4:56:46:31:95:D6:06:31:7E:D7:CD:CC:3C:17:56:E0:98:93:F3:C6:8F:79:BB:5B
|
|
9
|
+
*/
|
|
10
|
+
export const AWS_NITRO_ROOT_CA_PEM = `-----BEGIN CERTIFICATE-----
|
|
11
|
+
MIICETCCAZagAwIBAgIRAPkxdWgbkK/hHUbMtOTn+FYwCgYIKoZIzj0EAwMwSTEL
|
|
12
|
+
MAkGA1UEBhMCVVMxDzANBgNVBAoMBkFtYXpvbjEMMAoGA1UECwwDQVdTMRswGQYD
|
|
13
|
+
VQQDDBJhd3Mubml0cm8tZW5jbGF2ZXMwHhcNMTkxMDI4MTMyODA1WhcNNDkxMDI4
|
|
14
|
+
MTQyODA1WjBJMQswCQYDVQQGEwJVUzEPMA0GA1UECgwGQW1hem9uMQwwCgYDVQQL
|
|
15
|
+
DANBV1MxGzAZBgNVBAMMEmF3cy5uaXRyby1lbmNsYXZlczB2MBAGByqGSM49AgEG
|
|
16
|
+
BSuBBAAiA2IABPwCVOumCMHzaHDimtqQvkY4MpJzbolL//Zy2YlES1BR5TSksfbb
|
|
17
|
+
48C8WBoyt7F2Bw7eEtaaP+ohG2bnUs990d0JX28TcPQXCEPZ3BABIeTPYwEoCWZE
|
|
18
|
+
h8l5YoQwTcU/9KNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUkCW1DdkF
|
|
19
|
+
R+eWw5b6cp3PmanfS5YwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2kAMGYC
|
|
20
|
+
MQCjfy+Rocm9Xue4YnwWmNJVA44fA0P5W2OpYow9OYCVRaEevL8uO1XYru5xtMPW
|
|
21
|
+
rfMCMQCi85sWBbJwKKXdS6BptQFuZbT73o/gBh1qUxl/nNr12UO8Yfwr6wPLb+6N
|
|
22
|
+
IwLz3/Y=
|
|
23
|
+
-----END CERTIFICATE-----`;
|
|
24
|
+
//# sourceMappingURL=nitro-root.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nitro-root.js","sourceRoot":"","sources":["../../src/tee/nitro-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;0BAaX,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Crossmint TEE Attestation Provider
|
|
3
|
+
*
|
|
4
|
+
* Crossmint uses Intel TDX enclaves. Attestation documents are not
|
|
5
|
+
* publicly exposed — but API-based custody verification is available
|
|
6
|
+
* via verifyProviderCustody(). Returns ProviderVerified when custody
|
|
7
|
+
* is confirmed, ProviderTrusted as fallback.
|
|
8
|
+
*/
|
|
9
|
+
import type { WalletLike } from "../wallet-types.js";
|
|
10
|
+
import { type AttestationResult, type AttestationConfig } from "../types.js";
|
|
11
|
+
export declare function verifyCrossmint(wallet: WalletLike, _config?: AttestationConfig): Promise<AttestationResult>;
|
|
12
|
+
//# sourceMappingURL=crossmint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crossmint.d.ts","sourceRoot":"","sources":["../../../src/tee/providers/crossmint.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AAErB,wBAAsB,eAAe,CACnC,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAkE5B"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Crossmint TEE Attestation Provider
|
|
3
|
+
*
|
|
4
|
+
* Crossmint uses Intel TDX enclaves. Attestation documents are not
|
|
5
|
+
* publicly exposed — but API-based custody verification is available
|
|
6
|
+
* via verifyProviderCustody(). Returns ProviderVerified when custody
|
|
7
|
+
* is confirmed, ProviderTrusted as fallback.
|
|
8
|
+
*/
|
|
9
|
+
import { AttestationStatus, } from "../types.js";
|
|
10
|
+
export async function verifyCrossmint(wallet, _config) {
|
|
11
|
+
// Kit Address is already base58 — no conversion needed
|
|
12
|
+
const publicKey = wallet.publicKey;
|
|
13
|
+
const teeWallet = wallet;
|
|
14
|
+
// Attempt API-based custody verification
|
|
15
|
+
if (typeof teeWallet.verifyProviderCustody === "function") {
|
|
16
|
+
try {
|
|
17
|
+
const verified = await teeWallet.verifyProviderCustody();
|
|
18
|
+
if (verified) {
|
|
19
|
+
return {
|
|
20
|
+
status: AttestationStatus.ProviderVerified,
|
|
21
|
+
provider: "crossmint",
|
|
22
|
+
publicKey,
|
|
23
|
+
metadata: {
|
|
24
|
+
provider: "crossmint",
|
|
25
|
+
enclaveType: "tdx",
|
|
26
|
+
verifiedAt: Date.now(),
|
|
27
|
+
},
|
|
28
|
+
message: "Crossmint wallet custody verified via API — address matches TEE-managed key.",
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// API call succeeded but address didn't match
|
|
32
|
+
return {
|
|
33
|
+
status: AttestationStatus.Failed,
|
|
34
|
+
provider: "crossmint",
|
|
35
|
+
publicKey,
|
|
36
|
+
metadata: { provider: "crossmint", verifiedAt: Date.now() },
|
|
37
|
+
message: "Crossmint custody verification failed: address mismatch.",
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
// API call failed — return ProviderTrusted with distinct message.
|
|
42
|
+
// rawAttestation.custodyCheckFailed signals to the dispatcher that this
|
|
43
|
+
// downgraded result should not be cached (allows retry on next call).
|
|
44
|
+
return {
|
|
45
|
+
status: AttestationStatus.ProviderTrusted,
|
|
46
|
+
provider: "crossmint",
|
|
47
|
+
publicKey,
|
|
48
|
+
metadata: {
|
|
49
|
+
provider: "crossmint",
|
|
50
|
+
enclaveType: "tdx",
|
|
51
|
+
verifiedAt: Date.now(),
|
|
52
|
+
rawAttestation: { custodyCheckFailed: true },
|
|
53
|
+
},
|
|
54
|
+
message: "Crossmint wallet trusted via managed Intel TDX infrastructure. " +
|
|
55
|
+
"Custody verification API call failed — falling back to ProviderTrusted.",
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// Fallback: no verifyProviderCustody() available
|
|
60
|
+
return {
|
|
61
|
+
status: AttestationStatus.ProviderTrusted,
|
|
62
|
+
provider: "crossmint",
|
|
63
|
+
publicKey,
|
|
64
|
+
metadata: {
|
|
65
|
+
provider: "crossmint",
|
|
66
|
+
enclaveType: "tdx",
|
|
67
|
+
verifiedAt: Date.now(),
|
|
68
|
+
},
|
|
69
|
+
message: "Crossmint wallet trusted via managed Intel TDX infrastructure. " +
|
|
70
|
+
"Custody verification unavailable — implement verifyProviderCustody() for ProviderVerified status.",
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=crossmint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crossmint.js","sourceRoot":"","sources":["../../../src/tee/providers/crossmint.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,iBAAiB,GAGlB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAkB,EAClB,OAA2B;IAE3B,uDAAuD;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,MAAM,SAAS,GAAG,MAAmB,CAAC;IAEtC,yCAAyC;IACzC,IAAI,OAAO,SAAS,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,qBAAqB,EAAE,CAAC;YACzD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;oBACL,MAAM,EAAE,iBAAiB,CAAC,gBAAgB;oBAC1C,QAAQ,EAAE,WAAW;oBACrB,SAAS;oBACT,QAAQ,EAAE;wBACR,QAAQ,EAAE,WAAW;wBACrB,WAAW,EAAE,KAAK;wBAClB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;qBACvB;oBACD,OAAO,EACL,8EAA8E;iBACjF,CAAC;YACJ,CAAC;YACD,8CAA8C;YAC9C,OAAO;gBACL,MAAM,EAAE,iBAAiB,CAAC,MAAM;gBAChC,QAAQ,EAAE,WAAW;gBACrB,SAAS;gBACT,QAAQ,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;gBAC3D,OAAO,EAAE,0DAA0D;aACpE,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,wEAAwE;YACxE,sEAAsE;YACtE,OAAO;gBACL,MAAM,EAAE,iBAAiB,CAAC,eAAe;gBACzC,QAAQ,EAAE,WAAW;gBACrB,SAAS;gBACT,QAAQ,EAAE;oBACR,QAAQ,EAAE,WAAW;oBACrB,WAAW,EAAE,KAAK;oBAClB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,cAAc,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE;iBAC7C;gBACD,OAAO,EACL,iEAAiE;oBACjE,yEAAyE;aAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,OAAO;QACL,MAAM,EAAE,iBAAiB,CAAC,eAAe;QACzC,QAAQ,EAAE,WAAW;QACrB,SAAS;QACT,QAAQ,EAAE;YACR,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB;QACD,OAAO,EACL,iEAAiE;YACjE,mGAAmG;KACtG,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Privy TEE Attestation Provider
|
|
3
|
+
*
|
|
4
|
+
* Privy uses AWS Nitro Enclaves. Attestation documents are not
|
|
5
|
+
* publicly exposed — but API-based custody verification is available
|
|
6
|
+
* via verifyProviderCustody(). Returns ProviderVerified when custody
|
|
7
|
+
* is confirmed, ProviderTrusted as fallback.
|
|
8
|
+
*/
|
|
9
|
+
import type { WalletLike } from "../wallet-types.js";
|
|
10
|
+
import { type AttestationResult, type AttestationConfig } from "../types.js";
|
|
11
|
+
export declare function verifyPrivy(wallet: WalletLike, _config?: AttestationConfig): Promise<AttestationResult>;
|
|
12
|
+
//# sourceMappingURL=privy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privy.d.ts","sourceRoot":"","sources":["../../../src/tee/providers/privy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AAErB,wBAAsB,WAAW,CAC/B,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAkE5B"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Privy TEE Attestation Provider
|
|
3
|
+
*
|
|
4
|
+
* Privy uses AWS Nitro Enclaves. Attestation documents are not
|
|
5
|
+
* publicly exposed — but API-based custody verification is available
|
|
6
|
+
* via verifyProviderCustody(). Returns ProviderVerified when custody
|
|
7
|
+
* is confirmed, ProviderTrusted as fallback.
|
|
8
|
+
*/
|
|
9
|
+
import { AttestationStatus, } from "../types.js";
|
|
10
|
+
export async function verifyPrivy(wallet, _config) {
|
|
11
|
+
// Kit Address is already base58 — no conversion needed
|
|
12
|
+
const publicKey = wallet.publicKey;
|
|
13
|
+
const teeWallet = wallet;
|
|
14
|
+
// Attempt API-based custody verification
|
|
15
|
+
if (typeof teeWallet.verifyProviderCustody === "function") {
|
|
16
|
+
try {
|
|
17
|
+
const verified = await teeWallet.verifyProviderCustody();
|
|
18
|
+
if (verified) {
|
|
19
|
+
return {
|
|
20
|
+
status: AttestationStatus.ProviderVerified,
|
|
21
|
+
provider: "privy",
|
|
22
|
+
publicKey,
|
|
23
|
+
metadata: {
|
|
24
|
+
provider: "privy",
|
|
25
|
+
enclaveType: "nitro",
|
|
26
|
+
verifiedAt: Date.now(),
|
|
27
|
+
},
|
|
28
|
+
message: "Privy wallet custody verified via API — address matches TEE-managed key.",
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// API call succeeded but address didn't match
|
|
32
|
+
return {
|
|
33
|
+
status: AttestationStatus.Failed,
|
|
34
|
+
provider: "privy",
|
|
35
|
+
publicKey,
|
|
36
|
+
metadata: { provider: "privy", verifiedAt: Date.now() },
|
|
37
|
+
message: "Privy custody verification failed: address mismatch.",
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
// API call failed — return ProviderTrusted with distinct message.
|
|
42
|
+
// rawAttestation.custodyCheckFailed signals to the dispatcher that this
|
|
43
|
+
// downgraded result should not be cached (allows retry on next call).
|
|
44
|
+
return {
|
|
45
|
+
status: AttestationStatus.ProviderTrusted,
|
|
46
|
+
provider: "privy",
|
|
47
|
+
publicKey,
|
|
48
|
+
metadata: {
|
|
49
|
+
provider: "privy",
|
|
50
|
+
enclaveType: "nitro",
|
|
51
|
+
verifiedAt: Date.now(),
|
|
52
|
+
rawAttestation: { custodyCheckFailed: true },
|
|
53
|
+
},
|
|
54
|
+
message: "Privy wallet trusted via managed AWS Nitro Enclave infrastructure. " +
|
|
55
|
+
"Custody verification API call failed — falling back to ProviderTrusted.",
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
// Fallback: no verifyProviderCustody() available
|
|
60
|
+
return {
|
|
61
|
+
status: AttestationStatus.ProviderTrusted,
|
|
62
|
+
provider: "privy",
|
|
63
|
+
publicKey,
|
|
64
|
+
metadata: {
|
|
65
|
+
provider: "privy",
|
|
66
|
+
enclaveType: "nitro",
|
|
67
|
+
verifiedAt: Date.now(),
|
|
68
|
+
},
|
|
69
|
+
message: "Privy wallet trusted via managed AWS Nitro Enclave infrastructure. " +
|
|
70
|
+
"Custody verification unavailable — implement verifyProviderCustody() for ProviderVerified status.",
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=privy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/tee/providers/privy.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,iBAAiB,GAGlB,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAkB,EAClB,OAA2B;IAE3B,uDAAuD;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACnC,MAAM,SAAS,GAAG,MAAmB,CAAC;IAEtC,yCAAyC;IACzC,IAAI,OAAO,SAAS,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,qBAAqB,EAAE,CAAC;YACzD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;oBACL,MAAM,EAAE,iBAAiB,CAAC,gBAAgB;oBAC1C,QAAQ,EAAE,OAAO;oBACjB,SAAS;oBACT,QAAQ,EAAE;wBACR,QAAQ,EAAE,OAAO;wBACjB,WAAW,EAAE,OAAO;wBACpB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;qBACvB;oBACD,OAAO,EACL,0EAA0E;iBAC7E,CAAC;YACJ,CAAC;YACD,8CAA8C;YAC9C,OAAO;gBACL,MAAM,EAAE,iBAAiB,CAAC,MAAM;gBAChC,QAAQ,EAAE,OAAO;gBACjB,SAAS;gBACT,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;gBACvD,OAAO,EAAE,sDAAsD;aAChE,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,wEAAwE;YACxE,sEAAsE;YACtE,OAAO;gBACL,MAAM,EAAE,iBAAiB,CAAC,eAAe;gBACzC,QAAQ,EAAE,OAAO;gBACjB,SAAS;gBACT,QAAQ,EAAE;oBACR,QAAQ,EAAE,OAAO;oBACjB,WAAW,EAAE,OAAO;oBACpB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,cAAc,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE;iBAC7C;gBACD,OAAO,EACL,qEAAqE;oBACrE,yEAAyE;aAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,OAAO;QACL,MAAM,EAAE,iBAAiB,CAAC,eAAe;QACzC,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,QAAQ,EAAE;YACR,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;SACvB;QACD,OAAO,EACL,qEAAqE;YACrE,mGAAmG;KACtG,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Turnkey TEE Attestation Provider
|
|
3
|
+
*
|
|
4
|
+
* Two-layer verification:
|
|
5
|
+
* 1. Boot Proof — COSE_Sign1 (P-384 ECDSA) with AWS Nitro cert chain + PCR3
|
|
6
|
+
* 2. App Proof — P-256 ECDSA signature binding the app public key to the boot attestation
|
|
7
|
+
*
|
|
8
|
+
* COSE_Sign1 structure (CBOR tag 18):
|
|
9
|
+
* [protected_headers, unprotected_headers, payload, signature]
|
|
10
|
+
*
|
|
11
|
+
* Sig_structure for verification:
|
|
12
|
+
* CBOR(["Signature1", protected_bytes, b'', payload_bytes])
|
|
13
|
+
*
|
|
14
|
+
* The cert chain is extracted from unprotected headers key 33 (x5chain).
|
|
15
|
+
* Each cert in the chain must chain to the embedded AWS Nitro Root CA.
|
|
16
|
+
*
|
|
17
|
+
* PCR3 is the SHA-384 hash of the IAM role ARN — used to bind the enclave
|
|
18
|
+
* identity to a specific AWS IAM role (Turnkey's production enclave).
|
|
19
|
+
*/
|
|
20
|
+
import { type AttestationResult, type AttestationConfig } from "../types.js";
|
|
21
|
+
import type { TeeWallet } from "../wallet-types.js";
|
|
22
|
+
/** Override the root CA PEM for testing. Only available in test environments. */
|
|
23
|
+
export declare function setTestRootCa(pem: string): void;
|
|
24
|
+
/** Restore the production root CA PEM. */
|
|
25
|
+
export declare function restoreProductionRootCa(): void;
|
|
26
|
+
/**
|
|
27
|
+
* Verify a Turnkey wallet's TEE attestation.
|
|
28
|
+
*
|
|
29
|
+
* Expects the wallet to have a `getAttestation()` method that returns
|
|
30
|
+
* a TurnkeyAttestationBundle. If the method doesn't exist or returns null,
|
|
31
|
+
* falls back to ProviderTrusted.
|
|
32
|
+
*/
|
|
33
|
+
export declare function verifyTurnkey(wallet: TeeWallet, config?: AttestationConfig): Promise<AttestationResult>;
|
|
34
|
+
//# sourceMappingURL=turnkey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"turnkey.d.ts","sourceRoot":"","sources":["../../../src/tee/providers/turnkey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EAIvB,MAAM,aAAa,CAAC;AAOrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAKpD,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAO/C;AAED,0CAA0C;AAC1C,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAqPD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,SAAS,EACjB,MAAM,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAkQ5B"}
|