@oobe-protocol-labs/synapse-sap-sdk 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 +21 -0
- package/README.md +882 -0
- package/dist/cjs/constants/index.js +43 -0
- package/dist/cjs/constants/index.js.map +1 -0
- package/dist/cjs/constants/limits.js +161 -0
- package/dist/cjs/constants/limits.js.map +1 -0
- package/dist/cjs/constants/programs.js +78 -0
- package/dist/cjs/constants/programs.js.map +1 -0
- package/dist/cjs/constants/seeds.js +57 -0
- package/dist/cjs/constants/seeds.js.map +1 -0
- package/dist/cjs/core/client.js +391 -0
- package/dist/cjs/core/client.js.map +1 -0
- package/dist/cjs/core/connection.js +319 -0
- package/dist/cjs/core/connection.js.map +1 -0
- package/dist/cjs/core/index.js +24 -0
- package/dist/cjs/core/index.js.map +1 -0
- package/dist/cjs/errors/index.js +334 -0
- package/dist/cjs/errors/index.js.map +1 -0
- package/dist/cjs/events/index.js +136 -0
- package/dist/cjs/events/index.js.map +1 -0
- package/dist/cjs/idl/index.js +63 -0
- package/dist/cjs/idl/index.js.map +1 -0
- package/dist/cjs/idl/synapse_agent_sap.json +9710 -0
- package/dist/cjs/index.js +147 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/modules/agent.js +272 -0
- package/dist/cjs/modules/agent.js.map +1 -0
- package/dist/cjs/modules/attestation.js +147 -0
- package/dist/cjs/modules/attestation.js.map +1 -0
- package/dist/cjs/modules/base.js +128 -0
- package/dist/cjs/modules/base.js.map +1 -0
- package/dist/cjs/modules/escrow.js +246 -0
- package/dist/cjs/modules/escrow.js.map +1 -0
- package/dist/cjs/modules/feedback.js +166 -0
- package/dist/cjs/modules/feedback.js.map +1 -0
- package/dist/cjs/modules/index.js +35 -0
- package/dist/cjs/modules/index.js.map +1 -0
- package/dist/cjs/modules/indexing.js +375 -0
- package/dist/cjs/modules/indexing.js.map +1 -0
- package/dist/cjs/modules/ledger.js +234 -0
- package/dist/cjs/modules/ledger.js.map +1 -0
- package/dist/cjs/modules/tools.js +319 -0
- package/dist/cjs/modules/tools.js.map +1 -0
- package/dist/cjs/modules/vault.js +410 -0
- package/dist/cjs/modules/vault.js.map +1 -0
- package/dist/cjs/pda/index.js +377 -0
- package/dist/cjs/pda/index.js.map +1 -0
- package/dist/cjs/plugin/index.js +934 -0
- package/dist/cjs/plugin/index.js.map +1 -0
- package/dist/cjs/plugin/protocols.js +282 -0
- package/dist/cjs/plugin/protocols.js.map +1 -0
- package/dist/cjs/plugin/schemas.js +831 -0
- package/dist/cjs/plugin/schemas.js.map +1 -0
- package/dist/cjs/postgres/adapter.js +715 -0
- package/dist/cjs/postgres/adapter.js.map +1 -0
- package/dist/cjs/postgres/index.js +50 -0
- package/dist/cjs/postgres/index.js.map +1 -0
- package/dist/cjs/postgres/serializers.js +381 -0
- package/dist/cjs/postgres/serializers.js.map +1 -0
- package/dist/cjs/postgres/sync.js +221 -0
- package/dist/cjs/postgres/sync.js.map +1 -0
- package/dist/cjs/postgres/types.js +44 -0
- package/dist/cjs/postgres/types.js.map +1 -0
- package/dist/cjs/registries/builder.js +414 -0
- package/dist/cjs/registries/builder.js.map +1 -0
- package/dist/cjs/registries/discovery.js +362 -0
- package/dist/cjs/registries/discovery.js.map +1 -0
- package/dist/cjs/registries/index.js +51 -0
- package/dist/cjs/registries/index.js.map +1 -0
- package/dist/cjs/registries/session.js +433 -0
- package/dist/cjs/registries/session.js.map +1 -0
- package/dist/cjs/registries/x402.js +577 -0
- package/dist/cjs/registries/x402.js.map +1 -0
- package/dist/cjs/types/accounts.js +13 -0
- package/dist/cjs/types/accounts.js.map +1 -0
- package/dist/cjs/types/common.js +13 -0
- package/dist/cjs/types/common.js.map +1 -0
- package/dist/cjs/types/enums.js +174 -0
- package/dist/cjs/types/enums.js.map +1 -0
- package/dist/cjs/types/index.js +36 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/instructions.js +92 -0
- package/dist/cjs/types/instructions.js.map +1 -0
- package/dist/cjs/utils/hash.js +58 -0
- package/dist/cjs/utils/hash.js.map +1 -0
- package/dist/cjs/utils/index.js +27 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/serialization.js +105 -0
- package/dist/cjs/utils/serialization.js.map +1 -0
- package/dist/cjs/utils/validation.js +36 -0
- package/dist/cjs/utils/validation.js.map +1 -0
- package/dist/esm/constants/index.js +29 -0
- package/dist/esm/constants/index.js.map +1 -0
- package/dist/esm/constants/limits.js +158 -0
- package/dist/esm/constants/limits.js.map +1 -0
- package/dist/esm/constants/programs.js +75 -0
- package/dist/esm/constants/programs.js.map +1 -0
- package/dist/esm/constants/seeds.js +54 -0
- package/dist/esm/constants/seeds.js.map +1 -0
- package/dist/esm/core/client.js +384 -0
- package/dist/esm/core/client.js.map +1 -0
- package/dist/esm/core/connection.js +315 -0
- package/dist/esm/core/connection.js.map +1 -0
- package/dist/esm/core/index.js +19 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/errors/index.js +325 -0
- package/dist/esm/errors/index.js.map +1 -0
- package/dist/esm/events/index.js +132 -0
- package/dist/esm/events/index.js.map +1 -0
- package/dist/esm/idl/index.js +57 -0
- package/dist/esm/idl/index.js.map +1 -0
- package/dist/esm/idl/synapse_agent_sap.json +9710 -0
- package/dist/esm/index.js +70 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/modules/agent.js +268 -0
- package/dist/esm/modules/agent.js.map +1 -0
- package/dist/esm/modules/attestation.js +143 -0
- package/dist/esm/modules/attestation.js.map +1 -0
- package/dist/esm/modules/base.js +124 -0
- package/dist/esm/modules/base.js.map +1 -0
- package/dist/esm/modules/escrow.js +242 -0
- package/dist/esm/modules/escrow.js.map +1 -0
- package/dist/esm/modules/feedback.js +162 -0
- package/dist/esm/modules/feedback.js.map +1 -0
- package/dist/esm/modules/index.js +23 -0
- package/dist/esm/modules/index.js.map +1 -0
- package/dist/esm/modules/indexing.js +371 -0
- package/dist/esm/modules/indexing.js.map +1 -0
- package/dist/esm/modules/ledger.js +230 -0
- package/dist/esm/modules/ledger.js.map +1 -0
- package/dist/esm/modules/tools.js +315 -0
- package/dist/esm/modules/tools.js.map +1 -0
- package/dist/esm/modules/vault.js +406 -0
- package/dist/esm/modules/vault.js.map +1 -0
- package/dist/esm/pda/index.js +357 -0
- package/dist/esm/pda/index.js.map +1 -0
- package/dist/esm/plugin/index.js +927 -0
- package/dist/esm/plugin/index.js.map +1 -0
- package/dist/esm/plugin/protocols.js +279 -0
- package/dist/esm/plugin/protocols.js.map +1 -0
- package/dist/esm/plugin/schemas.js +828 -0
- package/dist/esm/plugin/schemas.js.map +1 -0
- package/dist/esm/postgres/adapter.js +678 -0
- package/dist/esm/postgres/adapter.js.map +1 -0
- package/dist/esm/postgres/index.js +27 -0
- package/dist/esm/postgres/index.js.map +1 -0
- package/dist/esm/postgres/serializers.js +362 -0
- package/dist/esm/postgres/serializers.js.map +1 -0
- package/dist/esm/postgres/sync.js +217 -0
- package/dist/esm/postgres/sync.js.map +1 -0
- package/dist/esm/postgres/types.js +41 -0
- package/dist/esm/postgres/types.js.map +1 -0
- package/dist/esm/registries/builder.js +410 -0
- package/dist/esm/registries/builder.js.map +1 -0
- package/dist/esm/registries/discovery.js +358 -0
- package/dist/esm/registries/discovery.js.map +1 -0
- package/dist/esm/registries/index.js +44 -0
- package/dist/esm/registries/index.js.map +1 -0
- package/dist/esm/registries/session.js +429 -0
- package/dist/esm/registries/session.js.map +1 -0
- package/dist/esm/registries/x402.js +573 -0
- package/dist/esm/registries/x402.js.map +1 -0
- package/dist/esm/types/accounts.js +12 -0
- package/dist/esm/types/accounts.js.map +1 -0
- package/dist/esm/types/common.js +12 -0
- package/dist/esm/types/common.js.map +1 -0
- package/dist/esm/types/enums.js +171 -0
- package/dist/esm/types/enums.js.map +1 -0
- package/dist/esm/types/index.js +25 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/instructions.js +89 -0
- package/dist/esm/types/instructions.js.map +1 -0
- package/dist/esm/utils/hash.js +53 -0
- package/dist/esm/utils/hash.js.map +1 -0
- package/dist/esm/utils/index.js +19 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/serialization.js +98 -0
- package/dist/esm/utils/serialization.js.map +1 -0
- package/dist/esm/utils/validation.js +33 -0
- package/dist/esm/utils/validation.js.map +1 -0
- package/dist/types/constants/index.d.ts +27 -0
- package/dist/types/constants/index.d.ts.map +1 -0
- package/dist/types/constants/limits.d.ts +149 -0
- package/dist/types/constants/limits.d.ts.map +1 -0
- package/dist/types/constants/programs.d.ts +69 -0
- package/dist/types/constants/programs.d.ts.map +1 -0
- package/dist/types/constants/seeds.d.ts +61 -0
- package/dist/types/constants/seeds.d.ts.map +1 -0
- package/dist/types/core/client.d.ts +323 -0
- package/dist/types/core/client.d.ts.map +1 -0
- package/dist/types/core/connection.d.ts +279 -0
- package/dist/types/core/connection.d.ts.map +1 -0
- package/dist/types/core/index.d.ts +20 -0
- package/dist/types/core/index.d.ts.map +1 -0
- package/dist/types/errors/index.d.ts +276 -0
- package/dist/types/errors/index.d.ts.map +1 -0
- package/dist/types/events/index.d.ts +248 -0
- package/dist/types/events/index.d.ts.map +1 -0
- package/dist/types/idl/index.d.ts +70 -0
- package/dist/types/idl/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +68 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/modules/agent.d.ts +166 -0
- package/dist/types/modules/agent.d.ts.map +1 -0
- package/dist/types/modules/attestation.d.ts +96 -0
- package/dist/types/modules/attestation.d.ts.map +1 -0
- package/dist/types/modules/base.d.ts +126 -0
- package/dist/types/modules/base.d.ts.map +1 -0
- package/dist/types/modules/escrow.d.ts +151 -0
- package/dist/types/modules/escrow.d.ts.map +1 -0
- package/dist/types/modules/feedback.d.ts +105 -0
- package/dist/types/modules/feedback.d.ts.map +1 -0
- package/dist/types/modules/index.d.ts +24 -0
- package/dist/types/modules/index.d.ts.map +1 -0
- package/dist/types/modules/indexing.d.ts +200 -0
- package/dist/types/modules/indexing.d.ts.map +1 -0
- package/dist/types/modules/ledger.d.ts +150 -0
- package/dist/types/modules/ledger.d.ts.map +1 -0
- package/dist/types/modules/tools.d.ts +182 -0
- package/dist/types/modules/tools.d.ts.map +1 -0
- package/dist/types/modules/vault.d.ts +240 -0
- package/dist/types/modules/vault.d.ts.map +1 -0
- package/dist/types/pda/index.d.ts +296 -0
- package/dist/types/pda/index.d.ts.map +1 -0
- package/dist/types/plugin/index.d.ts +171 -0
- package/dist/types/plugin/index.d.ts.map +1 -0
- package/dist/types/plugin/protocols.d.ts +152 -0
- package/dist/types/plugin/protocols.d.ts.map +1 -0
- package/dist/types/plugin/schemas.d.ts +823 -0
- package/dist/types/plugin/schemas.d.ts.map +1 -0
- package/dist/types/postgres/adapter.d.ts +355 -0
- package/dist/types/postgres/adapter.d.ts.map +1 -0
- package/dist/types/postgres/index.d.ts +24 -0
- package/dist/types/postgres/index.d.ts.map +1 -0
- package/dist/types/postgres/serializers.d.ts +30 -0
- package/dist/types/postgres/serializers.d.ts.map +1 -0
- package/dist/types/postgres/sync.d.ts +132 -0
- package/dist/types/postgres/sync.d.ts.map +1 -0
- package/dist/types/postgres/types.d.ts +167 -0
- package/dist/types/postgres/types.d.ts.map +1 -0
- package/dist/types/registries/builder.d.ts +340 -0
- package/dist/types/registries/builder.d.ts.map +1 -0
- package/dist/types/registries/discovery.d.ts +333 -0
- package/dist/types/registries/discovery.d.ts.map +1 -0
- package/dist/types/registries/index.d.ts +48 -0
- package/dist/types/registries/index.d.ts.map +1 -0
- package/dist/types/registries/session.d.ts +323 -0
- package/dist/types/registries/session.d.ts.map +1 -0
- package/dist/types/registries/x402.d.ts +463 -0
- package/dist/types/registries/x402.d.ts.map +1 -0
- package/dist/types/types/accounts.d.ts +565 -0
- package/dist/types/types/accounts.d.ts.map +1 -0
- package/dist/types/types/common.d.ts +166 -0
- package/dist/types/types/common.d.ts.map +1 -0
- package/dist/types/types/enums.d.ts +238 -0
- package/dist/types/types/enums.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +28 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/instructions.d.ts +366 -0
- package/dist/types/types/instructions.d.ts.map +1 -0
- package/dist/types/utils/hash.d.ts +48 -0
- package/dist/types/utils/hash.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +19 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/serialization.d.ts +69 -0
- package/dist/types/utils/serialization.d.ts.map +1 -0
- package/dist/types/utils/validation.d.ts +29 -0
- package/dist/types/utils/validation.d.ts.map +1 -0
- package/package.json +178 -0
- package/src/constants/index.ts +44 -0
- package/src/constants/limits.ts +165 -0
- package/src/constants/programs.ts +83 -0
- package/src/constants/seeds.ts +66 -0
- package/src/core/client.ts +416 -0
- package/src/core/connection.ts +409 -0
- package/src/core/index.ts +20 -0
- package/src/errors/index.ts +346 -0
- package/src/events/index.ts +335 -0
- package/src/idl/index.ts +76 -0
- package/src/idl/synapse_agent_sap.json +9710 -0
- package/src/index.ts +253 -0
- package/src/modules/agent.ts +319 -0
- package/src/modules/attestation.ts +168 -0
- package/src/modules/base.ts +158 -0
- package/src/modules/escrow.ts +308 -0
- package/src/modules/feedback.ts +186 -0
- package/src/modules/index.ts +24 -0
- package/src/modules/indexing.ts +444 -0
- package/src/modules/ledger.ts +262 -0
- package/src/modules/tools.ts +411 -0
- package/src/modules/vault.ts +533 -0
- package/src/pda/index.ts +512 -0
- package/src/plugin/index.ts +1202 -0
- package/src/plugin/protocols.ts +404 -0
- package/src/plugin/schemas.ts +909 -0
- package/src/postgres/adapter.ts +904 -0
- package/src/postgres/index.ts +59 -0
- package/src/postgres/schema.sql +683 -0
- package/src/postgres/serializers.ts +485 -0
- package/src/postgres/sync.ts +254 -0
- package/src/postgres/types.ts +245 -0
- package/src/registries/builder.ts +607 -0
- package/src/registries/discovery.ts +572 -0
- package/src/registries/index.ts +77 -0
- package/src/registries/session.ts +613 -0
- package/src/registries/x402.ts +906 -0
- package/src/types/accounts.ts +618 -0
- package/src/types/common.ts +187 -0
- package/src/types/enums.ts +214 -0
- package/src/types/index.ts +92 -0
- package/src/types/instructions.ts +413 -0
- package/src/utils/hash.ts +57 -0
- package/src/utils/index.ts +19 -0
- package/src/utils/serialization.ts +98 -0
- package/src/utils/validation.ts +36 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module core/connection
|
|
3
|
+
* @description RPC connection factory for SAP v2 SDK.
|
|
4
|
+
*
|
|
5
|
+
* Provides a high-level, synapse-client-sdk–compatible entry point
|
|
6
|
+
* for creating {@link SapClient} instances from an RPC URL and wallet.
|
|
7
|
+
*
|
|
8
|
+
* @category Core
|
|
9
|
+
* @since v0.1.0
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { SapConnection } from "@synapse-sap/sdk";
|
|
14
|
+
*
|
|
15
|
+
* // Quick start — RPC URL + Keypair
|
|
16
|
+
* const sap = SapConnection.fromKeypair("https://api.devnet.solana.com", keypair);
|
|
17
|
+
* const agent = await sap.client.agent.fetch();
|
|
18
|
+
*
|
|
19
|
+
* // Or build step-by-step
|
|
20
|
+
* const conn = new SapConnection({
|
|
21
|
+
* rpcUrl: "https://us-1-mainnet.oobeprotocol.ai/rpc?api_key=xxx",
|
|
22
|
+
* cluster: "mainnet-beta",
|
|
23
|
+
* commitment: "confirmed",
|
|
24
|
+
* });
|
|
25
|
+
* const client = conn.createClient(wallet);
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
import { Connection, type Commitment, Keypair, type PublicKey } from "@solana/web3.js";
|
|
29
|
+
import { Wallet } from "@coral-xyz/anchor";
|
|
30
|
+
import { SapClient } from "./client";
|
|
31
|
+
/**
|
|
32
|
+
* @name SapCluster
|
|
33
|
+
* @description Supported Solana cluster names used to select the RPC endpoint
|
|
34
|
+
* and corresponding SAP program ID.
|
|
35
|
+
* @category Core
|
|
36
|
+
* @since v0.1.0
|
|
37
|
+
*/
|
|
38
|
+
export type SapCluster = "mainnet-beta" | "devnet" | "localnet";
|
|
39
|
+
/**
|
|
40
|
+
* @interface SapConnectionConfig
|
|
41
|
+
* @description Configuration object used to initialise a {@link SapConnection}.
|
|
42
|
+
* @category Core
|
|
43
|
+
* @since v0.1.0
|
|
44
|
+
* @see {@link SapConnection}
|
|
45
|
+
*/
|
|
46
|
+
export interface SapConnectionConfig {
|
|
47
|
+
/**
|
|
48
|
+
* @property {string} rpcUrl
|
|
49
|
+
* @description Solana JSON-RPC endpoint URL (e.g. `https://api.devnet.solana.com`).
|
|
50
|
+
*/
|
|
51
|
+
rpcUrl: string;
|
|
52
|
+
/**
|
|
53
|
+
* @property {string} [wsUrl]
|
|
54
|
+
* @description WebSocket endpoint URL. When omitted the SDK derives it
|
|
55
|
+
* automatically from {@link rpcUrl} by swapping the protocol scheme.
|
|
56
|
+
*/
|
|
57
|
+
wsUrl?: string;
|
|
58
|
+
/**
|
|
59
|
+
* @property {Commitment} [commitment]
|
|
60
|
+
* @description Commitment level for queries and transaction confirmations.
|
|
61
|
+
* Defaults to `"confirmed"` when not provided.
|
|
62
|
+
*/
|
|
63
|
+
commitment?: Commitment;
|
|
64
|
+
/**
|
|
65
|
+
* @property {SapCluster} [cluster]
|
|
66
|
+
* @description Cluster hint (`mainnet-beta` | `devnet` | `localnet`).
|
|
67
|
+
* When omitted the SDK infers it from {@link rpcUrl} via
|
|
68
|
+
* {@link SapConnection.detectCluster}.
|
|
69
|
+
*/
|
|
70
|
+
cluster?: SapCluster;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* @name SapConnection
|
|
74
|
+
* @description Lightweight RPC connection wrapper that creates
|
|
75
|
+
* properly-configured {@link SapClient} instances.
|
|
76
|
+
*
|
|
77
|
+
* Compatible with the `synapse-client-sdk` connection model:
|
|
78
|
+
* start from an RPC URL, attach a wallet, get a typed client.
|
|
79
|
+
*
|
|
80
|
+
* @category Core
|
|
81
|
+
* @since v0.1.0
|
|
82
|
+
* @see {@link SapClient}
|
|
83
|
+
* @see {@link SapConnectionConfig}
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* // Factory shortcut for devnet
|
|
88
|
+
* const conn = SapConnection.devnet();
|
|
89
|
+
* const client = conn.createClient(wallet);
|
|
90
|
+
*
|
|
91
|
+
* // One-liner with Keypair
|
|
92
|
+
* const { client } = SapConnection.fromKeypair(
|
|
93
|
+
* "https://api.devnet.solana.com",
|
|
94
|
+
* keypair,
|
|
95
|
+
* );
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export declare class SapConnection {
|
|
99
|
+
/**
|
|
100
|
+
* @readonly
|
|
101
|
+
* @description Raw Solana {@link Connection}. Exposed for advanced
|
|
102
|
+
* use-cases that need direct RPC access.
|
|
103
|
+
*/
|
|
104
|
+
readonly connection: Connection;
|
|
105
|
+
/**
|
|
106
|
+
* @readonly
|
|
107
|
+
* @description The resolved Solana cluster for this connection,
|
|
108
|
+
* either explicitly provided or auto-detected from the RPC URL.
|
|
109
|
+
*/
|
|
110
|
+
readonly cluster: SapCluster;
|
|
111
|
+
/**
|
|
112
|
+
* @readonly
|
|
113
|
+
* @description Commitment level used for all queries and
|
|
114
|
+
* transaction confirmations on this connection.
|
|
115
|
+
*/
|
|
116
|
+
readonly commitment: Commitment;
|
|
117
|
+
/**
|
|
118
|
+
* @readonly
|
|
119
|
+
* @description The SAP on-chain program {@link PublicKey} resolved
|
|
120
|
+
* for the current {@link cluster}.
|
|
121
|
+
* @see {@link SapConnection.programIdForCluster}
|
|
122
|
+
*/
|
|
123
|
+
readonly programId: PublicKey;
|
|
124
|
+
constructor(config: SapConnectionConfig);
|
|
125
|
+
/**
|
|
126
|
+
* Create a {@link SapConnection} for **devnet** with sensible defaults.
|
|
127
|
+
*
|
|
128
|
+
* @static
|
|
129
|
+
* @param {Commitment} [commitment="confirmed"] — Commitment level.
|
|
130
|
+
* @returns {SapConnection} A connection targeting Solana devnet.
|
|
131
|
+
* @since v0.1.0
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```ts
|
|
135
|
+
* const conn = SapConnection.devnet();
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
static devnet(commitment?: Commitment): SapConnection;
|
|
139
|
+
/**
|
|
140
|
+
* Create a {@link SapConnection} for **mainnet-beta** with sensible defaults.
|
|
141
|
+
*
|
|
142
|
+
* @static
|
|
143
|
+
* @param {string} [rpcUrl="https://api.mainnet-beta.solana.com"] — Custom RPC URL.
|
|
144
|
+
* @param {Commitment} [commitment="confirmed"] — Commitment level.
|
|
145
|
+
* @returns {SapConnection} A connection targeting Solana mainnet-beta.
|
|
146
|
+
* @since v0.1.0
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```ts
|
|
150
|
+
* const conn = SapConnection.mainnet("https://my-rpc.example.com");
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
static mainnet(rpcUrl?: string, commitment?: Commitment): SapConnection;
|
|
154
|
+
/**
|
|
155
|
+
* Create a {@link SapConnection} for **localnet** (`localhost:8899`).
|
|
156
|
+
*
|
|
157
|
+
* @static
|
|
158
|
+
* @param {Commitment} [commitment="confirmed"] — Commitment level.
|
|
159
|
+
* @returns {SapConnection} A connection targeting a local validator.
|
|
160
|
+
* @since v0.1.0
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```ts
|
|
164
|
+
* const conn = SapConnection.localnet();
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
static localnet(commitment?: Commitment): SapConnection;
|
|
168
|
+
/**
|
|
169
|
+
* One-liner: create a {@link SapConnection} + {@link SapClient} from
|
|
170
|
+
* an RPC URL and a `Keypair`. Perfect for scripts and CLI tools.
|
|
171
|
+
*
|
|
172
|
+
* @static
|
|
173
|
+
* @param {string} rpcUrl — Solana JSON-RPC endpoint.
|
|
174
|
+
* @param {Keypair} keypair — Signer keypair.
|
|
175
|
+
* @param {object} [opts] — Optional overrides.
|
|
176
|
+
* @param {Commitment} [opts.commitment] — Commitment level.
|
|
177
|
+
* @param {SapCluster} [opts.cluster] — Explicit cluster hint.
|
|
178
|
+
* @returns {SapConnection & { readonly client: SapClient }} Connection with an attached client.
|
|
179
|
+
* @since v0.1.0
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* ```ts
|
|
183
|
+
* const { client, connection } = SapConnection.fromKeypair(
|
|
184
|
+
* "https://api.devnet.solana.com",
|
|
185
|
+
* Keypair.generate(),
|
|
186
|
+
* );
|
|
187
|
+
* ```
|
|
188
|
+
*/
|
|
189
|
+
static fromKeypair(rpcUrl: string, keypair: Keypair, opts?: {
|
|
190
|
+
commitment?: Commitment;
|
|
191
|
+
cluster?: SapCluster;
|
|
192
|
+
}): SapConnection & {
|
|
193
|
+
readonly client: SapClient;
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* Create a {@link SapClient} from an Anchor {@link Wallet} (signer).
|
|
197
|
+
*
|
|
198
|
+
* @param {Wallet} wallet — An Anchor-compatible wallet/signer.
|
|
199
|
+
* @returns {SapClient} A fully-configured SAP client.
|
|
200
|
+
* @since v0.1.0
|
|
201
|
+
*
|
|
202
|
+
* @example
|
|
203
|
+
* ```ts
|
|
204
|
+
* const client = conn.createClient(new Wallet(keypair));
|
|
205
|
+
* ```
|
|
206
|
+
*/
|
|
207
|
+
createClient(wallet: Wallet): SapClient;
|
|
208
|
+
/**
|
|
209
|
+
* Create a {@link SapClient} from a raw {@link Keypair}.
|
|
210
|
+
*
|
|
211
|
+
* @param {Keypair} keypair — The signer keypair.
|
|
212
|
+
* @returns {SapClient} A fully-configured SAP client.
|
|
213
|
+
* @since v0.1.0
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* ```ts
|
|
217
|
+
* const client = conn.fromKeypair(Keypair.generate());
|
|
218
|
+
* ```
|
|
219
|
+
*/
|
|
220
|
+
fromKeypair(keypair: Keypair): SapClient;
|
|
221
|
+
/**
|
|
222
|
+
* Request an airdrop (devnet / localnet only).
|
|
223
|
+
*
|
|
224
|
+
* @param {PublicKey} to — Recipient public key.
|
|
225
|
+
* @param {number} solAmount — Amount of SOL to airdrop.
|
|
226
|
+
* @returns {Promise<string>} The confirmed transaction signature.
|
|
227
|
+
* @throws {Error} If the airdrop request or confirmation fails (e.g. on mainnet).
|
|
228
|
+
* @since v0.1.0
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```ts
|
|
232
|
+
* const sig = await conn.airdrop(wallet.publicKey, 2);
|
|
233
|
+
* ```
|
|
234
|
+
*/
|
|
235
|
+
airdrop(to: PublicKey, solAmount: number): Promise<string>;
|
|
236
|
+
/**
|
|
237
|
+
* Get the SOL balance of an address in **lamports**.
|
|
238
|
+
*
|
|
239
|
+
* @param {PublicKey} address — The account to query.
|
|
240
|
+
* @returns {Promise<number>} Balance in lamports.
|
|
241
|
+
* @since v0.1.0
|
|
242
|
+
*/
|
|
243
|
+
getBalance(address: PublicKey): Promise<number>;
|
|
244
|
+
/**
|
|
245
|
+
* Get the SOL balance of an address in **SOL** (human-readable).
|
|
246
|
+
*
|
|
247
|
+
* @param {PublicKey} address — The account to query.
|
|
248
|
+
* @returns {Promise<number>} Balance in SOL.
|
|
249
|
+
* @since v0.1.0
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* ```ts
|
|
253
|
+
* const sol = await conn.getBalanceSol(wallet.publicKey);
|
|
254
|
+
* console.log(`Balance: ${sol} SOL`);
|
|
255
|
+
* ```
|
|
256
|
+
*/
|
|
257
|
+
getBalanceSol(address: PublicKey): Promise<number>;
|
|
258
|
+
/**
|
|
259
|
+
* Infer the {@link SapCluster} from an RPC URL by inspecting
|
|
260
|
+
* well-known substrings (`devnet`, `localhost`, `:8899`).
|
|
261
|
+
*
|
|
262
|
+
* @static
|
|
263
|
+
* @param {string} rpcUrl — The RPC endpoint to inspect.
|
|
264
|
+
* @returns {SapCluster} The detected cluster, defaulting to `"mainnet-beta"`.
|
|
265
|
+
* @since v0.1.0
|
|
266
|
+
*/
|
|
267
|
+
static detectCluster(rpcUrl: string): SapCluster;
|
|
268
|
+
/**
|
|
269
|
+
* Map a {@link SapCluster} to the canonical SAP on-chain program ID.
|
|
270
|
+
*
|
|
271
|
+
* @static
|
|
272
|
+
* @param {SapCluster} cluster — Target cluster.
|
|
273
|
+
* @returns {PublicKey} The program {@link PublicKey} for the given cluster.
|
|
274
|
+
* @since v0.1.0
|
|
275
|
+
* @see {@link SAP_PROGRAM_ID}
|
|
276
|
+
*/
|
|
277
|
+
static programIdForCluster(cluster: SapCluster): PublicKey;
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/core/connection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EACL,UAAU,EACV,KAAK,UAAU,EACf,OAAO,EACP,KAAK,SAAS,EAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAkB,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAO3D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAMrC;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,UAAU,CAAC;CACtB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,aAAa;IACxB;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAE7B;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;gBAElB,MAAM,EAAE,mBAAmB;IAevC;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,MAAM,CAAC,UAAU,GAAE,UAAwB,GAAG,aAAa;IAQlE;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,OAAO,CACZ,MAAM,SAAwC,EAC9C,UAAU,GAAE,UAAwB,GACnC,aAAa;IAIhB;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAE,UAAwB,GAAG,aAAa;IAQpE;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,WAAW,CAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,UAAU,CAAC;QAAC,OAAO,CAAC,EAAE,UAAU,CAAA;KAAE,GACvD,aAAa,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;KAAE;IAcjD;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS;IAOvC;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS;IAQxC;;;;;;;;;;;;;OAaG;IACG,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAShE;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrD;;;;;;;;;;;;OAYG;IACG,aAAa,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IASxD;;;;;;;;OAQG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAYhD;;;;;;;;OAQG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS;CAY3D"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module core
|
|
3
|
+
* @description Core infrastructure — client creation and RPC connection.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { SapClient, SapConnection } from "@synapse-sap/sdk";
|
|
8
|
+
*
|
|
9
|
+
* // From Anchor provider
|
|
10
|
+
* const client = SapClient.from(provider);
|
|
11
|
+
*
|
|
12
|
+
* // From RPC URL + keypair (synapse-client-sdk compatible)
|
|
13
|
+
* const conn = SapConnection.devnet();
|
|
14
|
+
* const client2 = conn.fromKeypair(keypair);
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export { SapClient } from "./client";
|
|
18
|
+
export { SapConnection } from "./connection";
|
|
19
|
+
export type { SapCluster, SapConnectionConfig } from "./connection";
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module errors
|
|
3
|
+
* @description Typed error classes for the SAP v2 SDK.
|
|
4
|
+
*
|
|
5
|
+
* All SDK errors extend {@link SapError} to allow catch-all handling,
|
|
6
|
+
* while concrete subclasses enable fine-grained error matching.
|
|
7
|
+
*
|
|
8
|
+
* @category Errors
|
|
9
|
+
* @since v0.1.0
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { SapError, SapRpcError, SapAccountNotFoundError } from "@synapse-sap/sdk/errors";
|
|
14
|
+
*
|
|
15
|
+
* try {
|
|
16
|
+
* const agent = await client.agent.fetch();
|
|
17
|
+
* } catch (err) {
|
|
18
|
+
* if (err instanceof SapAccountNotFoundError) {
|
|
19
|
+
* console.log("Agent not registered yet");
|
|
20
|
+
* } else if (err instanceof SapRpcError) {
|
|
21
|
+
* console.error("RPC failure:", err.rpcCode);
|
|
22
|
+
* } else if (err instanceof SapError) {
|
|
23
|
+
* console.error("SAP error:", err.message);
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @see {@link SapError}
|
|
29
|
+
* @see {@link SapValidationError}
|
|
30
|
+
* @see {@link SapRpcError}
|
|
31
|
+
* @see {@link SapAccountNotFoundError}
|
|
32
|
+
* @see {@link SapTimeoutError}
|
|
33
|
+
* @see {@link SapPermissionError}
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* @name SapError
|
|
37
|
+
* @description Base class for all SAP SDK errors.
|
|
38
|
+
*
|
|
39
|
+
* Extends `Error` and sets `name` automatically so `instanceof`
|
|
40
|
+
* checks work correctly in both CJS and ESM environments.
|
|
41
|
+
*
|
|
42
|
+
* @category Errors
|
|
43
|
+
* @since v0.1.0
|
|
44
|
+
* @extends {Error}
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* try {
|
|
49
|
+
* await client.agent.fetch();
|
|
50
|
+
* } catch (err) {
|
|
51
|
+
* if (err instanceof SapError) {
|
|
52
|
+
* console.error(`[${err.code}] ${err.message}`);
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @see {@link SapValidationError}
|
|
58
|
+
* @see {@link SapRpcError}
|
|
59
|
+
* @see {@link SapAccountNotFoundError}
|
|
60
|
+
* @see {@link SapTimeoutError}
|
|
61
|
+
* @see {@link SapPermissionError}
|
|
62
|
+
*/
|
|
63
|
+
export declare class SapError extends Error {
|
|
64
|
+
/**
|
|
65
|
+
* @description Machine-readable error code for programmatic handling.
|
|
66
|
+
* @readonly
|
|
67
|
+
*/
|
|
68
|
+
readonly code: string;
|
|
69
|
+
/**
|
|
70
|
+
* @param message - A human-readable description of the error.
|
|
71
|
+
* @param code - Machine-readable error code (defaults to `"SAP_ERROR"`).
|
|
72
|
+
*/
|
|
73
|
+
constructor(message: string, code?: string);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* @name SapValidationError
|
|
77
|
+
* @description Thrown when SDK-side input validation fails before sending a
|
|
78
|
+
* transaction or making an RPC call.
|
|
79
|
+
*
|
|
80
|
+
* @category Errors
|
|
81
|
+
* @since v0.1.0
|
|
82
|
+
* @extends {SapError}
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* try {
|
|
87
|
+
* await client.agent.register({ name: "" });
|
|
88
|
+
* } catch (err) {
|
|
89
|
+
* if (err instanceof SapValidationError) {
|
|
90
|
+
* console.error(`Validation failed on field "${err.field}": ${err.message}`);
|
|
91
|
+
* }
|
|
92
|
+
* }
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* @see {@link SapError}
|
|
96
|
+
*/
|
|
97
|
+
export declare class SapValidationError extends SapError {
|
|
98
|
+
/**
|
|
99
|
+
* @description Field or parameter that failed validation (if applicable).
|
|
100
|
+
* @readonly
|
|
101
|
+
*/
|
|
102
|
+
readonly field?: string;
|
|
103
|
+
/**
|
|
104
|
+
* @param message - A human-readable description of the validation failure.
|
|
105
|
+
* @param field - The name of the field or parameter that failed validation.
|
|
106
|
+
*/
|
|
107
|
+
constructor(message: string, field?: string);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* @name SapRpcError
|
|
111
|
+
* @description Wraps Solana RPC or Anchor transaction errors with additional
|
|
112
|
+
* context (error code, logs).
|
|
113
|
+
*
|
|
114
|
+
* @category Errors
|
|
115
|
+
* @since v0.1.0
|
|
116
|
+
* @extends {SapError}
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```ts
|
|
120
|
+
* try {
|
|
121
|
+
* await client.agent.register(params);
|
|
122
|
+
* } catch (err) {
|
|
123
|
+
* if (err instanceof SapRpcError) {
|
|
124
|
+
* console.error(`RPC error ${err.rpcCode}: ${err.message}`);
|
|
125
|
+
* err.logs?.forEach((log) => console.debug(log));
|
|
126
|
+
* }
|
|
127
|
+
* }
|
|
128
|
+
* ```
|
|
129
|
+
*
|
|
130
|
+
* @see {@link SapRpcError.fromAnchor}
|
|
131
|
+
* @see {@link SapError}
|
|
132
|
+
*/
|
|
133
|
+
export declare class SapRpcError extends SapError {
|
|
134
|
+
/**
|
|
135
|
+
* @description Anchor / program error code, if available.
|
|
136
|
+
* @readonly
|
|
137
|
+
*/
|
|
138
|
+
readonly rpcCode?: number;
|
|
139
|
+
/**
|
|
140
|
+
* @description Transaction logs returned by the RPC node.
|
|
141
|
+
* @readonly
|
|
142
|
+
*/
|
|
143
|
+
readonly logs?: readonly string[];
|
|
144
|
+
/**
|
|
145
|
+
* @param message - A human-readable description of the RPC or transaction error.
|
|
146
|
+
* @param opts - Optional additional context.
|
|
147
|
+
* @param opts.rpcCode - Anchor or Solana program error code.
|
|
148
|
+
* @param opts.logs - Raw transaction logs from the RPC node.
|
|
149
|
+
*/
|
|
150
|
+
constructor(message: string, opts?: {
|
|
151
|
+
rpcCode?: number;
|
|
152
|
+
logs?: readonly string[];
|
|
153
|
+
});
|
|
154
|
+
/**
|
|
155
|
+
* @static
|
|
156
|
+
* @description Create a {@link SapRpcError} from an Anchor-style error object.
|
|
157
|
+
* Extracts `code` and `logs` automatically from the Anchor error shape.
|
|
158
|
+
*
|
|
159
|
+
* @param err - The raw Anchor or Solana error object.
|
|
160
|
+
* @returns A new {@link SapRpcError} populated with extracted code, logs, and message.
|
|
161
|
+
*
|
|
162
|
+
* @example
|
|
163
|
+
* ```ts
|
|
164
|
+
* try {
|
|
165
|
+
* await program.methods.registerAgent(args).rpc();
|
|
166
|
+
* } catch (raw) {
|
|
167
|
+
* throw SapRpcError.fromAnchor(raw);
|
|
168
|
+
* }
|
|
169
|
+
* ```
|
|
170
|
+
*
|
|
171
|
+
* @see {@link SapRpcError}
|
|
172
|
+
*/
|
|
173
|
+
static fromAnchor(err: any): SapRpcError;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* @name SapAccountNotFoundError
|
|
177
|
+
* @description Thrown when an expected on-chain account does not exist or has
|
|
178
|
+
* been closed.
|
|
179
|
+
*
|
|
180
|
+
* @category Errors
|
|
181
|
+
* @since v0.1.0
|
|
182
|
+
* @extends {SapError}
|
|
183
|
+
*
|
|
184
|
+
* @example
|
|
185
|
+
* ```ts
|
|
186
|
+
* try {
|
|
187
|
+
* const agent = await client.agent.fetch(agentPda);
|
|
188
|
+
* } catch (err) {
|
|
189
|
+
* if (err instanceof SapAccountNotFoundError) {
|
|
190
|
+
* console.warn(`Missing ${err.accountType ?? "account"}: ${err.address}`);
|
|
191
|
+
* }
|
|
192
|
+
* }
|
|
193
|
+
* ```
|
|
194
|
+
*
|
|
195
|
+
* @see {@link SapError}
|
|
196
|
+
*/
|
|
197
|
+
export declare class SapAccountNotFoundError extends SapError {
|
|
198
|
+
/**
|
|
199
|
+
* @description The base-58 encoded account address that was not found.
|
|
200
|
+
* @readonly
|
|
201
|
+
*/
|
|
202
|
+
readonly address: string;
|
|
203
|
+
/**
|
|
204
|
+
* @description The expected account type (e.g. `"AgentRecord"`, `"VaultAccount"`).
|
|
205
|
+
* @readonly
|
|
206
|
+
*/
|
|
207
|
+
readonly accountType?: string;
|
|
208
|
+
/**
|
|
209
|
+
* @param address - The base-58 encoded address of the missing account.
|
|
210
|
+
* @param accountType - Optional label for the expected account type.
|
|
211
|
+
*/
|
|
212
|
+
constructor(address: string, accountType?: string);
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* @name SapTimeoutError
|
|
216
|
+
* @description Thrown when an operation (e.g., transaction confirmation) exceeds
|
|
217
|
+
* the configured timeout.
|
|
218
|
+
*
|
|
219
|
+
* @category Errors
|
|
220
|
+
* @since v0.1.0
|
|
221
|
+
* @extends {SapError}
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```ts
|
|
225
|
+
* try {
|
|
226
|
+
* await client.agent.register(params, { timeoutMs: 30_000 });
|
|
227
|
+
* } catch (err) {
|
|
228
|
+
* if (err instanceof SapTimeoutError) {
|
|
229
|
+
* console.error(`Timed out after ${err.timeoutMs}ms: ${err.message}`);
|
|
230
|
+
* }
|
|
231
|
+
* }
|
|
232
|
+
* ```
|
|
233
|
+
*
|
|
234
|
+
* @see {@link SapError}
|
|
235
|
+
*/
|
|
236
|
+
export declare class SapTimeoutError extends SapError {
|
|
237
|
+
/**
|
|
238
|
+
* @description Timeout duration in milliseconds that was exceeded.
|
|
239
|
+
* @readonly
|
|
240
|
+
*/
|
|
241
|
+
readonly timeoutMs: number;
|
|
242
|
+
/**
|
|
243
|
+
* @param message - A human-readable description of the timeout.
|
|
244
|
+
* @param timeoutMs - The timeout threshold in milliseconds.
|
|
245
|
+
*/
|
|
246
|
+
constructor(message: string, timeoutMs: number);
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* @name SapPermissionError
|
|
250
|
+
* @description Thrown when the current wallet lacks the required permission
|
|
251
|
+
* (authority, delegate, etc.) for an operation.
|
|
252
|
+
*
|
|
253
|
+
* @category Errors
|
|
254
|
+
* @since v0.1.0
|
|
255
|
+
* @extends {SapError}
|
|
256
|
+
*
|
|
257
|
+
* @example
|
|
258
|
+
* ```ts
|
|
259
|
+
* try {
|
|
260
|
+
* await client.agent.update(agentPda, updates);
|
|
261
|
+
* } catch (err) {
|
|
262
|
+
* if (err instanceof SapPermissionError) {
|
|
263
|
+
* console.error(`Permission denied: ${err.message}`);
|
|
264
|
+
* }
|
|
265
|
+
* }
|
|
266
|
+
* ```
|
|
267
|
+
*
|
|
268
|
+
* @see {@link SapError}
|
|
269
|
+
*/
|
|
270
|
+
export declare class SapPermissionError extends SapError {
|
|
271
|
+
/**
|
|
272
|
+
* @param message - A human-readable description of the permission failure.
|
|
273
|
+
*/
|
|
274
|
+
constructor(message: string);
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAMH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,IAAI,SAAc;CAOhD;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAK5C;AAMD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,WAAY,SAAQ,QAAQ;IACvC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAElC;;;;;OAKG;gBAED,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE;IAQvD;;;;;;;;;;;;;;;;;;OAkBG;IAEH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW;CAOzC;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,uBAAwB,SAAQ,QAAQ;IACnD;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;CAOlD;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAK/C;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C;;OAEG;gBACS,OAAO,EAAE,MAAM;CAI5B"}
|