Client SDKsTypescript client SDK

Typescript client SDK

A typescript SDK to interact with on-chain Superstream program. Developers would use this typically when they want to create a typescript app and integrate streams into that. It's compatible with browsers and native envs (like React Native).

Licencenpm

Installation

npm install @superstream/client
npm install @superstream/client

Usage

  • Create a SuperstreamClientSuperstreamClient. For more information, view the API documentation
superstream.ts
import {
createSuperstreamClient,
} from "@superstream/client";
const client = createSuperstreamClient("devnet", wallet);
// For mainnet-beta, use:
//
// const client = createSuperstreamClient(
// "mainnet-beta",
// wallet,
// );
// If you don't need to execute instructions (like creating
// or cancelling a stream), you can omit the wallet:
//
// const client = createSuperstreamClient("devnet");
import {
createSuperstreamClient,
} from "@superstream/client";
const client = createSuperstreamClient("devnet", wallet);
// For mainnet-beta, use:
//
// const client = createSuperstreamClient(
// "mainnet-beta",
// wallet,
// );
// If you don't need to execute instructions (like creating
// or cancelling a stream), you can omit the wallet:
//
// const client = createSuperstreamClient("devnet");
  • Fetch streams and do other operations using the client. For more information, view the API documentation
superstream.ts
const streams = await client
.getAllStreams({
isPrepaid: true,
recipient: new PublicKey("public-key-base-58"),
});
const streams = await client
.getAllStreams({
isPrepaid: true,
recipient: new PublicKey("public-key-base-58"),
});
superstream.ts
const stream = streams[0]
// Get stream public key
stream.getStreamPublicKey()
// Check is current wallet is this stream's sender
stream.isSender()
// ... and other operations
// Get current on-chain time to do even more operations on
// streams
const currentTime = await client.mustGetCurrentTime()
// Check if stream has stopped
stream.hasStopped()
// Check if stream is solvent
stream.isSolvent()
// Cancel stream
await stream.cancel()
// ... and other operations
const stream = streams[0]
// Get stream public key
stream.getStreamPublicKey()
// Check is current wallet is this stream's sender
stream.isSender()
// ... and other operations
// Get current on-chain time to do even more operations on
// streams
const currentTime = await client.mustGetCurrentTime()
// Check if stream has stopped
stream.hasStopped()
// Check if stream is solvent
stream.isSolvent()
// Cancel stream
await stream.cancel()
// ... and other operations