sdk/builders/SignBuilder.ts
SignBuilder overview
Table of contents
interfaces
SignBuilder (interface)
SignBuilder extends TransactionResultBase with signing capabilities.
Only available when the client has a signing wallet (seed, private key, or API wallet). Provides access to unsigned transaction (via base interface) and signing operations.
Includes chainResult for transaction chaining - use chainResult.available as
availableUtxos for the next transaction in a chain.
Signature
export interface SignBuilder extends TransactionResultBase, EffectToPromiseAPI<SignBuilderEffect> {
readonly Effect: SignBuilderEffect
/**
* Compute chain result for building dependent transactions.
* Contains consumed UTxOs, available UTxOs (remaining + created), and txHash.
*
* Result is memoized - computed once on first call, cached for subsequent calls.
*/
readonly chainResult: () => ChainResult
}Added in v2.0.0
SignBuilderEffect (interface)
Effect-based API for SignBuilder operations.
Includes all TransactionResultBase.Effect methods plus signing-specific operations.
Signature
export interface SignBuilderEffect {
// Base transaction methods (from TransactionResultBase)
readonly toTransaction: () => Effect.Effect<Transaction.Transaction, TransactionBuilderError>
readonly toTransactionWithFakeWitnesses: () => Effect.Effect<Transaction.Transaction, TransactionBuilderError>
readonly estimateFee: () => Effect.Effect<bigint, TransactionBuilderError>
// Signing methods
readonly sign: () => Effect.Effect<SubmitBuilder, TransactionBuilderError>
readonly signAndSubmit: () => Effect.Effect<TransactionHash.TransactionHash, TransactionBuilderError>
readonly signWithWitness: (
witnessSet: TransactionWitnessSet.TransactionWitnessSet
) => Effect.Effect<SubmitBuilder, TransactionBuilderError>
readonly assemble: (
witnesses: ReadonlyArray<TransactionWitnessSet.TransactionWitnessSet>
) => Effect.Effect<SubmitBuilder, TransactionBuilderError>
readonly partialSign: () => Effect.Effect<TransactionWitnessSet.TransactionWitnessSet, TransactionBuilderError>
readonly getWitnessSet: () => Effect.Effect<TransactionWitnessSet.TransactionWitnessSet, TransactionBuilderError>
}Added in v2.0.0