kaspeak-sdk / Kaspeak
Class: Kaspeak¶
Defined in: sdk/kaspeak.ts:42
Accessors¶
address¶
Get Signature¶
get address():
string
Defined in: sdk/kaspeak.ts:270
Returns¶
string
balance¶
Get Signature¶
get balance():
number
Defined in: sdk/kaspeak.ts:278
Returns¶
number
isConnected¶
Get Signature¶
get isConnected():
boolean
Defined in: sdk/kaspeak.ts:241
Returns¶
boolean
kaspaWasm¶
Get Signature¶
get kaspaWasm():
__module
Defined in: sdk/kaspeak.ts:286
Returns¶
__module
kaspaWasmEventBus¶
Get Signature¶
get kaspaWasmEventBus():
EventBus\<KaspaWasmEvents>
Defined in: sdk/kaspeak.ts:290
Returns¶
EventBus\<KaspaWasmEvents>
publicKey¶
Get Signature¶
get publicKey():
string
Defined in: sdk/kaspeak.ts:274
Returns¶
string
rpcClient¶
Get Signature¶
get rpcClient():
RpcClient
Defined in: sdk/kaspeak.ts:297
Returns¶
RpcClient
utxoContext¶
Get Signature¶
get utxoContext():
UtxoContext
Defined in: sdk/kaspeak.ts:300
Returns¶
UtxoContext
utxoCount¶
Get Signature¶
get utxoCount():
number
Defined in: sdk/kaspeak.ts:282
Returns¶
number
utxoProcessor¶
Get Signature¶
get utxoProcessor():
UtxoProcessor
Defined in: sdk/kaspeak.ts:294
Returns¶
UtxoProcessor
Methods¶
~~connect()~~¶
connect(
url?):Promise\<void>
Defined in: sdk/kaspeak.ts:237
Parameters¶
url?¶
string
Returns¶
Promise\<void>
Deprecated¶
This method is deprecated. Use connectNode(url) instead.
connectIndexer()¶
connectIndexer(
url?):void
Defined in: sdk/kaspeak.ts:586
Parameters¶
url?¶
string
Returns¶
void
connectNode()¶
connectNode(
url?):Promise\<void>
Defined in: sdk/kaspeak.ts:204
Parameters¶
url?¶
string
Returns¶
Promise\<void>
createPayload()¶
createPayload(
outpointIds,messageCtor,identifier,data):Promise\<string>
Defined in: sdk/kaspeak.ts:406
Parameters¶
outpointIds¶
string
messageCtor¶
MessageClass
identifier¶
data¶
Uint8Array
Returns¶
Promise\<string>
createTransaction()¶
createTransaction(
dataLength,recipients?):Promise\<Transaction>
Defined in: sdk/kaspeak.ts:453
Drafts an unsigned “send-to-self” transaction sized for a Kaspeak payload.
The SDK adds its fixed HEADER_SIZE to the supplied dataLength
to reserve enough bytes in the payload field. Fee bucket is taken from
#feeLevel, plus any extra tip in #priorityFeeSompi.
Parameters¶
dataLength¶
number
– Length of the encoded message body; used to calculate the required payload capacity.
recipients?¶
Array of objects { address, amountKas }, where amountKas is a number or string in KAS.
Returns¶
Promise\<Transaction>
Unsigned Transaction ready to be filled and signed.
decode()¶
decode\<
T>(header,data,key?):Promise\<T>
Defined in: sdk/kaspeak.ts:345
Reconstruct a typed message from raw payload bytes.
On any failure an UnknownMessage is returned
Type Parameters¶
T¶
T extends BaseMessage
Parameters¶
header¶
– Parsed MessageHeader of the payload.
data¶
Uint8Array
– Raw bytes from the blockdag.
key?¶
Uint8Array\<ArrayBufferLike>
– Shared secret for decryption when required.
Returns¶
Promise\<T>
Concrete message instance or UnknownMessage.
Throws¶
Error if decryption is required but no key is provided.
deriveConversationKeys()¶
deriveConversationKeys(
publicKey):ConversationKeys
Defined in: sdk/kaspeak.ts:383
Parameters¶
publicKey¶
string | Uint8Array\<ArrayBufferLike> | Point
Returns¶
encode()¶
encode(
message,key?):Promise\<Uint8Array\<ArrayBufferLike>>
Defined in: sdk/kaspeak.ts:331
Turn a BaseMessage instance into bytes ready for the wire.
Pass key only when message.requiresEncryption is
true; otherwise it is silently ignored.
Parameters¶
message¶
– Message instance to encode.
key?¶
Uint8Array\<ArrayBufferLike>
– Shared secret for encryption (optional).
Returns¶
Promise\<Uint8Array\<ArrayBufferLike>>
Compressed (and maybe encrypted) byte buffer.
Throws¶
Error if encryption is required but no key is provided.
getAddressFromPublicKey()¶
getAddressFromPublicKey(
publicKey):string
Defined in: sdk/kaspeak.ts:396
Parameters¶
publicKey¶
string | Uint8Array\<ArrayBufferLike> | PublicKey
Returns¶
string
getBalance()¶
getBalance(
address?):Promise\<Balance>
Defined in: sdk/kaspeak.ts:256
Fetch the current balance and UTXO count.
If address is omitted the request is made for the SDK’s own
wallet address and the internal sdk.balance / sdk.utxoCount
caches are updated. The value is reported in KAS (not sompi).
Parameters¶
address?¶
string
– Optional Kaspa address to query.
Returns¶
Promise\<Balance>
{ balance, utxoCount }
Throws¶
Error when the node is disconnected
getOutpointIds()¶
getOutpointIds(
tx):string
Defined in: sdk/kaspeak.ts:430
Parameters¶
tx¶
Transaction | ITransaction
Returns¶
string
getXPointFromAddress()¶
getXPointFromAddress(
address):string
Defined in: sdk/kaspeak.ts:400
Parameters¶
address¶
string | Address
Returns¶
string
indexerRequest()¶
Call Signature¶
indexerRequest(
request,parsed?):Promise\<QueryResponse>
Defined in: sdk/kaspeak.ts:603
Parameters¶
request¶
parsed?¶
false
Returns¶
Promise\<QueryResponse>
Call Signature¶
indexerRequest(
request,parsed):Promise\<MessageEvent[]>
Defined in: sdk/kaspeak.ts:604
Parameters¶
request¶
parsed¶
true
Returns¶
Promise\<MessageEvent[]>
indexerSend()¶
indexerSend(
request):void
Defined in: sdk/kaspeak.ts:597
Parameters¶
request¶
Returns¶
void
off()¶
off\<
E>(event,listener):void
Defined in: sdk/kaspeak.ts:310
Type Parameters¶
E¶
E extends keyof KaspeakEvents
Parameters¶
event¶
E
listener¶
(data) => void
Returns¶
void
on()¶
on\<
E>(event,listener):void
Defined in: sdk/kaspeak.ts:306
Type Parameters¶
E¶
E extends keyof KaspeakEvents
Parameters¶
event¶
E
listener¶
(data) => void
Returns¶
void
once()¶
once\<
E>(event,listener):void
Defined in: sdk/kaspeak.ts:314
Type Parameters¶
E¶
E extends keyof KaspeakEvents
Parameters¶
event¶
E
listener¶
(data) => void
Returns¶
void
parsePayload()¶
parsePayload(
data):Payload
Defined in: sdk/kaspeak.ts:426
Parameters¶
data¶
string | Uint8Array\<ArrayBufferLike>
Returns¶
registerMessage()¶
registerMessage(
message,worker?):void
Defined in: sdk/kaspeak.ts:363
Register a custom message type and its optional worker callback.
Every inbound payload whose type equals ctor.messageType
(0-65535) is instantiated with new ctor(). If worker is
supplied it is invoked asynchronously for each such message.
Re-registering the same messageType overrides the previous entry
Parameters¶
message¶
MessageClass
– Class extending BaseMessage.
worker?¶
WorkerFn
– Optional handler for the raw payload.
Returns¶
void
sendTransaction()¶
sendTransaction(
transaction,payload?):Promise\<string>
Defined in: sdk/kaspeak.ts:469
Fills, signs and broadcasts the prepared transaction.
transaction must come from createTransaction; payload is the
hex string built by createPayload.
Parameters¶
transaction¶
Transaction
– Unsigned transaction.
payload?¶
string
– Hex-encoded Kaspeak payload to embed.
Returns¶
Promise\<string>
The resulting transaction ID.
setFeeLevel()¶
setFeeLevel(
level):void
Defined in: sdk/kaspeak.ts:147
Enable dynamic fee selection based on current network load.
Three buckets are available:
• "priority" — sub-second inclusion (default)
• "normal" — inclusion within about a minute
• "low" — inclusion within roughly an hour
Call setPriorityFee only if you need to add a fixed extra tip on top of the chosen bucket.
Parameters¶
level¶
– "low", "normal" or "priority".
Returns¶
void
setPrefixFilterEnabled()¶
setPrefixFilterEnabled(
enabled):void
Defined in: sdk/kaspeak.ts:117
Enable or disable prefix filtering.
When true (default) the SDK accepts only messages whose 4-byte
prefix matches the one supplied at Kaspeak.create.
Set to false if you need to watch traffic from several Kaspeak-based
apps on the same node.
Parameters¶
enabled¶
boolean
– true to keep the filter on, false to turn it off.
Returns¶
void
setPriorityFee()¶
setPriorityFee(
feeKAS):void
Defined in: sdk/kaspeak.ts:158
Sets the priority fee in KAS (NOT SOMPI!) for transactions. The fee is converted to sompi (1 KAS = 1e8 sompi).
Parameters¶
feeKAS¶
number
The priority fee in KAS.
Returns¶
void
Throws¶
Error if the fee is negative.
setSignatureVerificationEnabled()¶
setSignatureVerificationEnabled(
enabled):void
Defined in: sdk/kaspeak.ts:130
Toggle Schnorr-signature verification for incoming payloads.
Verification (true) guarantees authenticity but costs CPU; skipping it
(false) boosts throughput at the expense of trust. Choose according
to your threat model.
Parameters¶
enabled¶
boolean
– true to verify every payload, false to skip checks.
Returns¶
void
setTransactionMaturityDAA()¶
setTransactionMaturityDAA(
maturityDAA):void
Defined in: sdk/kaspeak.ts:186
Parameters¶
maturityDAA¶
bigint
Returns¶
void
setWaitForConnectionEnabled()¶
setWaitForConnectionEnabled(
enabled):void
Defined in: sdk/kaspeak.ts:182
Toggle automatic waiting for an RPC connection.
When enabled (true), network-dependent methods such as
getBalance, createTransaction and sendTransaction
will silently await the internal “connect” event instead
of throwing Error: Node is not connected. Call connect() first.
Disabled (false, default) keeps the SDK in strict
fail-fast mode, making connectivity issues explicit.
Parameters¶
enabled¶
boolean
– true to wait for the connection,
false to throw immediately.
Returns¶
void
transferFunds()¶
transferFunds(
recipients):Promise\<string>
Defined in: sdk/kaspeak.ts:495
Sends an amount of KAS to one or several addresses.
To send messages, use: createTransaction → createPayload → sendTransaction.
Parameters¶
recipients¶
Array of objects { address, amountKas }, where amountKas is a number or string in KAS.
Returns¶
Promise\<string>
Promise
Errors: — invalid amount (cannot be converted to sompi); — no node connection (if auto-wait is disabled).
Example¶
create()¶
staticcreate(privateKey,prefix,networkId):Promise\<Kaspeak>
Defined in: sdk/kaspeak.ts:88
Parameters¶
privateKey¶
string | number | bigint | Uint8Array\<ArrayBufferLike>
prefix¶
string = "TEST"
networkId¶
NetworkId = DEFAULT_NETWORK_ID
Returns¶
Promise\<Kaspeak>