sdk/client/Client.ts
Client overview
Table of contents
- constructors
- model
- AddressClient (type alias)
- AddressClientEffect (interface)
- BlockfrostConfig (interface)
- ClientAssembly (interface)
- KoiosConfig (interface)
- KupmiosConfig (interface)
- MaestroConfig (interface)
- OfflineSignerClient (type alias)
- OfflineSignerClientEffect (interface)
- PrivateKeyWalletConfig (interface)
- ReadClient (type alias)
- ReadOnlyClient (type alias)
- ReadOnlyClientEffect (interface)
- SeedWalletConfig (interface)
- SigningClient (type alias)
- SigningClientEffect (interface)
constructors
make
Construct a chain-scoped client assembly stage.
Signature
export declare const make: (chain?: Chain) => ClientAssemblyAdded in v2.1.0
model
AddressClient (type alias)
Address-capable client.
Signature
export type AddressClient = EffectToPromiseAPI<AddressClientEffect> & {
readonly chain: Chain
readonly withBlockfrost: (config: BlockfrostConfig) => ReadOnlyClient
readonly withKoios: (config: KoiosConfig) => ReadOnlyClient
readonly withKupmios: (config: KupmiosConfig) => ReadOnlyClient
readonly withMaestro: (config: MaestroConfig) => ReadOnlyClient
readonly effect: AddressClientEffect
}Added in v2.1.0
AddressClientEffect (interface)
Address capability Effect surface.
Signature
export interface AddressClientEffect extends Wallet.ReadOnlyWalletEffect {}Added in v2.1.0
BlockfrostConfig (interface)
Configuration for the Blockfrost provider.
Signature
export interface BlockfrostConfig {
readonly baseUrl: string
readonly projectId?: string
}Added in v2.1.0
ClientAssembly (interface)
Client assembly stage scoped to a chain.
Signature
export interface ClientAssembly {
readonly chain: Chain
readonly withBlockfrost: (config: BlockfrostConfig) => ReadClient
readonly withKoios: (config: KoiosConfig) => ReadClient
readonly withKupmios: (config: KupmiosConfig) => ReadClient
readonly withMaestro: (config: MaestroConfig) => ReadClient
readonly withAddress: (address: string, rewardAddress?: string) => AddressClient
readonly withSeed: (config: SeedWalletConfig) => OfflineSignerClient
readonly withPrivateKey: (config: PrivateKeyWalletConfig) => OfflineSignerClient
readonly withCip30: (api: Wallet.WalletApi) => OfflineSignerClient
}Added in v2.1.0
KoiosConfig (interface)
Configuration for the Koios provider.
Signature
export interface KoiosConfig {
readonly baseUrl: string
readonly token?: string
}Added in v2.1.0
KupmiosConfig (interface)
Configuration for the Kupmios provider (Kupo + Ogmios).
Signature
export interface KupmiosConfig {
readonly kupoUrl: string
readonly ogmiosUrl: string
readonly headers?: {
readonly ogmiosHeader?: Record<string, string>
readonly kupoHeader?: Record<string, string>
}
}Added in v2.1.0
MaestroConfig (interface)
Configuration for the Maestro provider.
Signature
export interface MaestroConfig {
readonly baseUrl: string
readonly apiKey: string
readonly turboSubmit?: boolean
}Added in v2.1.0
OfflineSignerClient (type alias)
Signing-capable client without read capability.
Signature
export type OfflineSignerClient = EffectToPromiseAPI<OfflineSignerClientEffect> & {
readonly chain: Chain
readonly withBlockfrost: (config: BlockfrostConfig) => SigningClient
readonly withKoios: (config: KoiosConfig) => SigningClient
readonly withKupmios: (config: KupmiosConfig) => SigningClient
readonly withMaestro: (config: MaestroConfig) => SigningClient
readonly effect: OfflineSignerClientEffect
}Added in v2.1.0
OfflineSignerClientEffect (interface)
Offline signing capability Effect surface.
Signature
export interface OfflineSignerClientEffect extends AddressClientEffect {
readonly signTx: (
tx: Parameters<Wallet.SigningWalletEffect["signTx"]>[0],
context?: Parameters<Wallet.SigningWalletEffect["signTx"]>[1]
) => ReturnType<Wallet.SigningWalletEffect["signTx"]>
/**
* Sign multiple transactions in batch (CIP-103).
* Falls back to sequential signTx if the wallet doesn't support batch signing.
*
* @since 2.2.0
*/
readonly signTxs: (
txs: Parameters<Wallet.SigningWalletEffect["signTxs"]>[0],
context?: Parameters<Wallet.SigningWalletEffect["signTxs"]>[1]
) => ReturnType<Wallet.SigningWalletEffect["signTxs"]>
readonly signMessage: Wallet.SigningWalletEffect["signMessage"]
}Added in v2.1.0
PrivateKeyWalletConfig (interface)
Configuration for the private key wallet.
Signature
export interface PrivateKeyWalletConfig {
readonly paymentKey: string
readonly stakeKey?: string
readonly addressType?: "Base" | "Enterprise"
}Added in v2.1.0
ReadClient (type alias)
Read-capable client.
Signature
export type ReadClient = EffectToPromiseAPI<Provider.ProviderEffect> & {
readonly chain: Chain
readonly withAddress: (address: string, rewardAddress?: string) => ReadOnlyClient
readonly withSeed: (config: SeedWalletConfig) => SigningClient
readonly withPrivateKey: (config: PrivateKeyWalletConfig) => SigningClient
readonly withCip30: (api: Wallet.WalletApi) => SigningClient
readonly newTx: () => ReadOnlyTransactionBuilder
readonly effect: Provider.ProviderEffect
}Added in v2.1.0
ReadOnlyClient (type alias)
Read-capable client with address resolution.
Signature
export type ReadOnlyClient = EffectToPromiseAPI<ReadOnlyClientEffect> & {
readonly chain: Chain
readonly newTx: () => ReadOnlyTransactionBuilder
readonly effect: ReadOnlyClientEffect
}Added in v2.1.0
ReadOnlyClientEffect (interface)
Read-only client Effect surface.
Signature
export interface ReadOnlyClientEffect extends Provider.ProviderEffect, AddressClientEffect {
readonly getWalletUtxos: () => Effect.Effect<
ReadonlyArray<CoreUTxO.UTxO>,
Wallet.WalletError | Provider.ProviderError
>
readonly getWalletDelegation: () => Effect.Effect<Provider.Delegation, Wallet.WalletError | Provider.ProviderError>
}Added in v2.1.0
SeedWalletConfig (interface)
Configuration for the seed phrase wallet.
Signature
export interface SeedWalletConfig {
readonly mnemonic: string
readonly accountIndex?: number
readonly paymentIndex?: number
readonly stakeIndex?: number
readonly addressType?: "Base" | "Enterprise"
readonly password?: string
}Added in v2.1.0
SigningClient (type alias)
Full signing client.
Signature
export type SigningClient = EffectToPromiseAPI<SigningClientEffect> & {
readonly chain: Chain
readonly newTx: () => SigningTransactionBuilder
readonly effect: SigningClientEffect
}Added in v2.1.0
SigningClientEffect (interface)
Signing client Effect surface.
Signature
export interface SigningClientEffect extends Provider.ProviderEffect, OfflineSignerClientEffect {
readonly getWalletUtxos: () => Effect.Effect<
ReadonlyArray<CoreUTxO.UTxO>,
Wallet.WalletError | Provider.ProviderError
>
readonly getWalletDelegation: () => Effect.Effect<Provider.Delegation, Wallet.WalletError | Provider.ProviderError>
}Added in v2.1.0