@vue-solana/core 3.0.0 → 4.0.0-rc.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.
Files changed (52) hide show
  1. package/README.md +38 -2
  2. package/dist/action.d.ts +10 -3
  3. package/dist/action.mjs +4 -4
  4. package/dist/address.d.ts +7 -2
  5. package/dist/address.mjs +8 -2
  6. package/dist/clusters.d.ts +1 -1
  7. package/dist/clusters.mjs +10 -1
  8. package/dist/errors.d.ts +1 -1
  9. package/dist/errors.mjs +4 -1
  10. package/dist/index.d.ts +4 -10
  11. package/dist/index.mjs +2 -14
  12. package/dist/ios-wallet.d.ts +1 -2
  13. package/dist/ios-wallet.mjs +659 -4
  14. package/dist/kit.d.ts +1 -1
  15. package/dist/kit.mjs +22 -9
  16. package/dist/mobile-wallet-support.d.ts +3 -0
  17. package/dist/mobile-wallet-support.mjs +5 -0
  18. package/dist/mobile-wallet.d.ts +13 -3
  19. package/dist/mobile-wallet.mjs +4 -9
  20. package/dist/rpc.d.ts +1 -1
  21. package/dist/rpc.mjs +0 -2
  22. package/dist/shared/{core.C9vxHRXl.d.mts → core.BhF1J_tt.d.ts} +40 -2
  23. package/dist/shared/{core.DaUlAmcN.mjs → core.BlqTJRXd.mjs} +56 -5
  24. package/dist/timeout.d.ts +22 -1
  25. package/dist/timeout.mjs +53 -17
  26. package/dist/token-accounts.d.ts +1 -1
  27. package/dist/token-accounts.mjs +31 -2
  28. package/dist/transaction.d.ts +9 -1
  29. package/dist/transaction.mjs +49 -10
  30. package/dist/types.d.ts +1 -1
  31. package/dist/wallet-standard.d.ts +11 -3
  32. package/dist/wallet-standard.mjs +1 -5
  33. package/dist/wallet.d.ts +1 -1
  34. package/package.json +17 -5
  35. package/dist/action.d.mts +0 -28
  36. package/dist/address.d.mts +0 -16
  37. package/dist/buffer-polyfill.d.mts +0 -7
  38. package/dist/clusters.d.mts +0 -10
  39. package/dist/errors.d.mts +0 -17
  40. package/dist/index.d.mts +0 -20
  41. package/dist/ios-wallet.d.mts +0 -62
  42. package/dist/kit.d.mts +0 -3
  43. package/dist/mobile-wallet.d.mts +0 -20
  44. package/dist/rpc.d.mts +0 -7
  45. package/dist/shared/core.C9vxHRXl.d.ts +0 -193
  46. package/dist/shared/core.DuQGQqnc.mjs +0 -575
  47. package/dist/timeout.d.mts +0 -4
  48. package/dist/token-accounts.d.mts +0 -36
  49. package/dist/transaction.d.mts +0 -18
  50. package/dist/types.d.mts +0 -3
  51. package/dist/wallet-standard.d.mts +0 -22
  52. package/dist/wallet.d.mts +0 -25
@@ -1,5 +1,5 @@
1
1
  import { WalletAccount, Wallet } from '@wallet-standard/base';
2
- import { a as SolanaChain, l as SolanaWalletInfo, k as SolanaWallet, c as SolanaCluster } from './shared/core.C9vxHRXl.js';
2
+ import { a as SolanaChain, k as SolanaWallet, l as SolanaWalletInfo, c as SolanaCluster } from './shared/core.BhF1J_tt.js';
3
3
  import '@solana/kit-plugin-rpc';
4
4
  import '@solana/kit';
5
5
 
@@ -8,7 +8,15 @@ interface AdaptSolanaWalletOptions {
8
8
  account?: WalletAccount;
9
9
  onChange?: () => void;
10
10
  }
11
- declare function adaptSolanaStandardWallet(walletInfo: SolanaWalletInfo, options?: AdaptSolanaWalletOptions): SolanaWallet;
11
+ /**
12
+ * A Wallet Standard wallet adapted to {@link SolanaWallet}. `dispose` is
13
+ * always present here (optional on the base interface, where plain
14
+ * caller-supplied wallets typically omit it).
15
+ */
16
+ interface AdaptedSolanaWallet extends SolanaWallet {
17
+ dispose(): void;
18
+ }
19
+ declare function adaptSolanaStandardWallet(walletInfo: SolanaWalletInfo, options?: AdaptSolanaWalletOptions): AdaptedSolanaWallet;
12
20
 
13
21
  declare const SOLANA_CHAINS: readonly SolanaChain[];
14
22
  declare function getSolanaChain(cluster: SolanaCluster): SolanaChain;
@@ -19,4 +27,4 @@ declare function getRegisteredSolanaWallets(): SolanaWalletInfo[];
19
27
  declare function subscribeSolanaWallets(listener: () => void): () => void;
20
28
 
21
29
  export { SOLANA_CHAINS, SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, adaptSolanaStandardWallet, getRegisteredSolanaWallets, getSolanaChain, isSolanaStandardWallet, subscribeSolanaWallets };
22
- export type { AdaptSolanaWalletOptions };
30
+ export type { AdaptSolanaWalletOptions, AdaptedSolanaWallet };
@@ -1,5 +1 @@
1
- export { S as SOLANA_CHAINS, a as SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, b as adaptSolanaStandardWallet, g as getRegisteredSolanaWallets, c as getSolanaChain, i as isSolanaStandardWallet, s as subscribeSolanaWallets } from './shared/core.DaUlAmcN.mjs';
2
- import '@wallet-standard/features';
3
- import '@solana/wallet-standard-features';
4
- import 'bs58';
5
- import '@wallet-standard/app';
1
+ export { S as SOLANA_CHAINS, a as SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, b as adaptSolanaStandardWallet, g as getRegisteredSolanaWallets, c as getSolanaChain, i as isSolanaStandardWallet, s as subscribeSolanaWallets } from './shared/core.BlqTJRXd.mjs';
package/dist/wallet.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { k as SolanaWallet } from './shared/core.C9vxHRXl.js';
1
+ import { k as SolanaWallet } from './shared/core.BhF1J_tt.js';
2
2
  import { SolanaError } from './errors.js';
3
3
  import '@solana/kit-plugin-rpc';
4
4
  import '@solana/kit';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vue-solana/core",
3
- "version": "3.0.0",
3
+ "version": "4.0.0-rc.0",
4
4
  "description": "Framework-agnostic primitives for Vue Solana libraries.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -65,6 +65,10 @@
65
65
  "types": "./dist/mobile-wallet.d.ts",
66
66
  "import": "./dist/mobile-wallet.mjs"
67
67
  },
68
+ "./mobile-wallet-support": {
69
+ "types": "./dist/mobile-wallet-support.d.ts",
70
+ "import": "./dist/mobile-wallet-support.mjs"
71
+ },
68
72
  "./rpc": {
69
73
  "types": "./dist/rpc.d.ts",
70
74
  "import": "./dist/rpc.mjs"
@@ -92,6 +96,7 @@
92
96
  },
93
97
  "files": [
94
98
  "dist",
99
+ "!dist/**/*.d.mts",
95
100
  "types"
96
101
  ],
97
102
  "publishConfig": {
@@ -99,24 +104,31 @@
99
104
  },
100
105
  "dependencies": {
101
106
  "@solana-mobile/wallet-standard-mobile": "^0.5.3",
102
- "@solana/kit": "^8.4.0",
107
+ "@solana/kit": "^8.5.0",
103
108
  "@solana/kit-plugin-rpc": "^0.19.0",
104
109
  "@solana/wallet-standard-features": "^1.3.0",
105
110
  "@wallet-standard/app": "^1.1.1",
106
111
  "@wallet-standard/base": "^1.1.1",
107
112
  "@wallet-standard/features": "^1.1.1",
108
- "bs58": "^6.0.0",
109
- "buffer": "^6.0.3",
110
113
  "tweetnacl": "^1.0.3"
111
114
  },
112
115
  "devDependencies": {
113
116
  "typescript": "^5.8.3",
114
117
  "unbuild": "^3.5.0"
115
118
  },
119
+ "peerDependencies": {
120
+ "buffer": "^6.0.3"
121
+ },
122
+ "peerDependenciesMeta": {
123
+ "buffer": {
124
+ "optional": true
125
+ }
126
+ },
116
127
  "scripts": {
117
128
  "build": "unbuild && node scripts/prepare-declarations.mjs",
118
129
  "dev": "unbuild --stub",
119
130
  "typecheck": "tsc --noEmit",
120
- "clean": "rm -rf dist"
131
+ "clean": "rm -rf dist",
132
+ "check:esm-map": "node ../../scripts/check-exports-map.mjs"
121
133
  }
122
134
  }
package/dist/action.d.mts DELETED
@@ -1,28 +0,0 @@
1
- import { ReactiveActionState, ReactiveActionStore } from '@solana/kit';
2
- export { isAbortError } from '@solana/kit';
3
-
4
- /**
5
- * Framework-agnostic action state machine for Solana async work.
6
- *
7
- * Wraps an async function receiving a fresh `AbortSignal` per call and exposes a
8
- * `{ getState, subscribe, dispatch, reset, withSignal }` store that UI frameworks
9
- * can bridge into reactive state (Vue composables, React hooks, etc.).
10
- *
11
- * - Each `dispatch` aborts the previous in-flight call (fresh signal per dispatch).
12
- * - Superseded calls reject with an abort error; real failures surface on state.
13
- * - `withSignal` composes a caller-provided cancellation source per dispatch
14
- * (per-attempt timeouts, shared kill switches).
15
- *
16
- * @see `createReactiveActionStore` from `@solana/kit`, which this wraps.
17
- */
18
- type SolanaActionStore<TArgs extends readonly unknown[], TResult> = ReactiveActionStore<TArgs, TResult>;
19
- declare function createSolanaActionStore<TArgs extends readonly unknown[], TResult>(fn: (signal: AbortSignal, ...args: TArgs) => Promise<TResult>): SolanaActionStore<TArgs, TResult>;
20
- /**
21
- * Snapshot shape bridged into reactive state by framework composables.
22
- */
23
- type SolanaActionState<TResult> = ReactiveActionState<TResult>;
24
-
25
- declare function isSolanaActionAborted(error: unknown): boolean;
26
-
27
- export { createSolanaActionStore, isSolanaActionAborted };
28
- export type { SolanaActionState, SolanaActionStore };
@@ -1,16 +0,0 @@
1
- import { Address } from '@solana/kit';
2
-
3
- type AddressInput = Address | string | null | undefined;
4
- type MaybeAddressInput = AddressInput | {
5
- value: AddressInput;
6
- } | (() => AddressInput);
7
- /**
8
- * Parse a Solana address from a Kit `Address`, string, ref, or getter.
9
- *
10
- * Valid strings are returned as `Address`; invalid input throws a
11
- * `SolanaError` with code `INVALID_ADDRESS`.
12
- */
13
- declare function parseAddress(value: MaybeAddressInput): Address | null;
14
-
15
- export { parseAddress };
16
- export type { AddressInput, MaybeAddressInput };
@@ -1,7 +0,0 @@
1
- /// <reference path="../types/buffer.d.ts" />
2
- import { Buffer } from 'buffer/';
3
- export { Buffer } from 'buffer/';
4
-
5
- declare function installSolanaBufferPolyfill(): typeof Buffer;
6
-
7
- export { installSolanaBufferPolyfill };
@@ -1,10 +0,0 @@
1
- import { c as SolanaCluster } from './shared/core.C9vxHRXl.mjs';
2
- import '@solana/kit-plugin-rpc';
3
- import '@solana/kit';
4
-
5
- declare const DEFAULT_CLUSTER: SolanaCluster;
6
- declare function getClusterEndpoint(cluster?: SolanaCluster): string;
7
- declare function getClusterWebSocketEndpoint(cluster?: SolanaCluster): string;
8
- declare function getWebSocketEndpoint(endpoint: string): string;
9
-
10
- export { DEFAULT_CLUSTER, getClusterEndpoint, getClusterWebSocketEndpoint, getWebSocketEndpoint };
package/dist/errors.d.mts DELETED
@@ -1,17 +0,0 @@
1
- type SolanaErrorCode = "NO_WALLET_SELECTED" | "WALLET_NOT_CONNECTED" | "WALLET_FEATURE_UNSUPPORTED" | "USER_REJECTED" | "INVALID_ADDRESS" | "TRANSACTION_TIMEOUT" | "RPC_FAILURE" | "STORAGE_FAILURE";
2
- interface SolanaErrorOptions {
3
- cause?: unknown;
4
- feature?: string;
5
- }
6
- declare class SolanaError extends Error {
7
- readonly code: SolanaErrorCode;
8
- readonly cause?: unknown;
9
- readonly feature?: string;
10
- constructor(code: SolanaErrorCode, message: string, options?: SolanaErrorOptions);
11
- }
12
- declare function createSolanaError(code: SolanaErrorCode, message: string, options?: SolanaErrorOptions): SolanaError;
13
- declare function isSolanaError(error: unknown): error is SolanaError;
14
- declare function normalizeSolanaError(cause: unknown, fallbackCode: SolanaErrorCode, fallbackMessage?: string, options?: Omit<SolanaErrorOptions, "cause">): SolanaError;
15
-
16
- export { SolanaError, createSolanaError, isSolanaError, normalizeSolanaError };
17
- export type { SolanaErrorCode, SolanaErrorOptions };
package/dist/index.d.mts DELETED
@@ -1,20 +0,0 @@
1
- /// <reference path="../types/buffer.d.ts" />
2
- export { SolanaActionState, SolanaActionStore, createSolanaActionStore, isSolanaActionAborted } from './action.mjs';
3
- export { DEFAULT_CLUSTER, getClusterEndpoint, getClusterWebSocketEndpoint, getWebSocketEndpoint } from './clusters.mjs';
4
- export { AddressInput, MaybeAddressInput, parseAddress } from './address.mjs';
5
- export { installSolanaBufferPolyfill } from './buffer-polyfill.mjs';
6
- export { SolanaError, SolanaErrorCode, SolanaErrorOptions, createSolanaError, isSolanaError, normalizeSolanaError } from './errors.mjs';
7
- export { C as ConfirmTransactionOptions, S as SendTransactionOptions, a as SolanaChain, b as SolanaClient, c as SolanaCluster, d as SolanaConfig, e as SolanaContext, f as SolanaSignInAccount, g as SolanaSignInInput, h as SolanaSignInResult, i as SolanaSignMessageResult, j as SolanaTransaction, k as SolanaWallet, l as SolanaWalletInfo, T as TransactionConfirmation, m as TransactionStatus, n as createSolanaClient } from './shared/core.C9vxHRXl.mjs';
8
- export { RegisterSolanaMobileWalletOptions, SolanaMobileWalletAppIdentity, getDefaultMobileWalletAppIdentity, isSolanaMobileWalletSupported, registerSolanaMobileWallet } from './mobile-wallet.mjs';
9
- export { createSolanaContext } from './rpc.mjs';
10
- export { TokenAccountInfo, TokenAccountsByOwnerOptions, TokenBalanceResult, getTokenAccount, getTokenAccountsByOwner, getTokenBalance } from './token-accounts.mjs';
11
- export { confirmTransactionSignature, signAndSendTransaction } from './transaction.mjs';
12
- export { withSolanaTimeout, withTimeout } from './timeout.mjs';
13
- export { SolanaWalletError, SolanaWalletErrorCode, assertWalletCanSign, assertWalletCanSignAndSendTransactions, assertWalletCanSignIn, assertWalletCanSignMessage, assertWalletCanSignTransactions, assertWalletConnected, createNoWalletSelectedError, isWalletConnected } from './wallet.mjs';
14
- export * from '@solana/kit';
15
- export { isAbortError } from '@solana/kit';
16
- export { AdaptSolanaIosWalletOptions, GetSolanaIosWalletsOptions, IosWalletCallbackResult, IosWalletInfo, IosWalletMethod, SolanaIosWalletAppIdentity, adaptSolanaIosWallet, getDefaultIosWalletAppIdentity, getDefaultIosWalletRedirectUrl, getSolanaIosWallets, handleSolanaIosWalletCallback, isIosBrowser, isSolanaIosBrowserWalletSupported, isSolanaIosWalletInfo } from './ios-wallet.mjs';
17
- export { AdaptSolanaWalletOptions, SOLANA_CHAINS, SOLANA_MOBILE_WALLET_ADAPTER_WALLET_NAME, adaptSolanaStandardWallet, getRegisteredSolanaWallets, getSolanaChain, isSolanaStandardWallet, subscribeSolanaWallets } from './wallet-standard.mjs';
18
- export { Buffer } from 'buffer/';
19
- import '@solana/kit-plugin-rpc';
20
- import '@wallet-standard/base';
@@ -1,62 +0,0 @@
1
- import { a as SolanaChain, c as SolanaCluster, l as SolanaWalletInfo, k as SolanaWallet } from './shared/core.C9vxHRXl.mjs';
2
- import '@solana/kit-plugin-rpc';
3
- import '@solana/kit';
4
-
5
- interface SolanaIosWalletAppIdentity {
6
- name: string;
7
- uri: string;
8
- icon?: string;
9
- }
10
- interface GetSolanaIosWalletsOptions {
11
- appIdentity?: SolanaIosWalletAppIdentity;
12
- redirectUrl?: string;
13
- chains?: readonly SolanaChain[];
14
- cluster?: SolanaCluster;
15
- }
16
- interface AdaptSolanaIosWalletOptions {
17
- appIdentity?: SolanaIosWalletAppIdentity;
18
- redirectUrl?: string;
19
- chain?: SolanaChain;
20
- cluster?: SolanaCluster;
21
- onChange?: () => void;
22
- }
23
- interface IosWalletDefinition {
24
- id: string;
25
- name: string;
26
- icon: string;
27
- appUrl: string;
28
- installUrl: string;
29
- encryptionPublicKeyParam: string;
30
- connectUrl: string;
31
- signTransactionUrl?: string;
32
- signAllTransactionsUrl?: string;
33
- signAndSendTransactionUrl?: string;
34
- }
35
- type IosWalletMethod = "connect" | "signTransaction" | "signAllTransactions" | "signAndSendTransaction";
36
- type IosWalletCallbackResult = {
37
- walletId: string;
38
- method: IosWalletMethod;
39
- publicKey?: string;
40
- signature?: string;
41
- transaction?: Uint8Array;
42
- transactions?: Uint8Array[];
43
- };
44
- type IosWalletInfo = SolanaWalletInfo & {
45
- wallet: IosWalletDefinition;
46
- };
47
-
48
- declare function getSolanaIosWallets(options?: GetSolanaIosWalletsOptions): SolanaWalletInfo[];
49
- declare function adaptSolanaIosWallet(walletInfo: SolanaWalletInfo, options?: AdaptSolanaIosWalletOptions): SolanaWallet;
50
- declare function isSolanaIosWalletInfo(walletInfo: SolanaWalletInfo): walletInfo is IosWalletInfo;
51
-
52
- declare function isSolanaIosBrowserWalletSupported(): boolean;
53
- declare function isIosBrowser(): boolean;
54
- declare function getDefaultIosWalletAppIdentity(): SolanaIosWalletAppIdentity;
55
- declare function getDefaultIosWalletRedirectUrl(): string;
56
-
57
- declare function handleSolanaIosWalletCallback(options?: {
58
- clearUrl?: boolean;
59
- }): IosWalletCallbackResult | null;
60
-
61
- export { adaptSolanaIosWallet, getDefaultIosWalletAppIdentity, getDefaultIosWalletRedirectUrl, getSolanaIosWallets, handleSolanaIosWalletCallback, isIosBrowser, isSolanaIosBrowserWalletSupported, isSolanaIosWalletInfo };
62
- export type { AdaptSolanaIosWalletOptions, GetSolanaIosWalletsOptions, IosWalletCallbackResult, IosWalletInfo, IosWalletMethod, SolanaIosWalletAppIdentity };
package/dist/kit.d.mts DELETED
@@ -1,3 +0,0 @@
1
- import '@solana/kit-plugin-rpc';
2
- export * from '@solana/kit';
3
- export { b as SolanaClient, n as createSolanaClient } from './shared/core.C9vxHRXl.mjs';
@@ -1,20 +0,0 @@
1
- import { a as SolanaChain } from './shared/core.C9vxHRXl.mjs';
2
- import '@solana/kit-plugin-rpc';
3
- import '@solana/kit';
4
-
5
- interface SolanaMobileWalletAppIdentity {
6
- name: string;
7
- uri: string;
8
- icon?: string;
9
- }
10
- interface RegisterSolanaMobileWalletOptions {
11
- appIdentity?: SolanaMobileWalletAppIdentity;
12
- chains?: readonly SolanaChain[];
13
- remoteHostAuthority?: string;
14
- }
15
- declare function registerSolanaMobileWallet(options?: RegisterSolanaMobileWalletOptions): boolean;
16
- declare function isSolanaMobileWalletSupported(): boolean;
17
- declare function getDefaultMobileWalletAppIdentity(): SolanaMobileWalletAppIdentity;
18
-
19
- export { getDefaultMobileWalletAppIdentity, isSolanaMobileWalletSupported, registerSolanaMobileWallet };
20
- export type { RegisterSolanaMobileWalletOptions, SolanaMobileWalletAppIdentity };
package/dist/rpc.d.mts DELETED
@@ -1,7 +0,0 @@
1
- import { d as SolanaConfig, e as SolanaContext } from './shared/core.C9vxHRXl.mjs';
2
- import '@solana/kit-plugin-rpc';
3
- import '@solana/kit';
4
-
5
- declare function createSolanaContext(config?: SolanaConfig): SolanaContext;
6
-
7
- export { createSolanaContext };
@@ -1,193 +0,0 @@
1
- import * as _solana_kit_plugin_rpc from '@solana/kit-plugin-rpc';
2
- import * as _solana_kit from '@solana/kit';
3
- import { Commitment, Slot, TransactionSigner, Address, ReadonlyUint8Array, Signature } from '@solana/kit';
4
-
5
- /**
6
- * Solana cluster names. `mainnet` is Solana's official mainnet cluster name.
7
- * The legacy `mainnet-beta` spelling is still accepted and redirects to the
8
- * same mainnet endpoint.
9
- */
10
- type SolanaCluster = "mainnet" | "mainnet-beta" | "testnet" | "devnet" | "localnet";
11
- type SolanaChain = "solana:mainnet" | "solana:testnet" | "solana:devnet" | "solana:localnet";
12
- interface SolanaConfig {
13
- cluster?: SolanaCluster;
14
- endpoint?: string;
15
- wsEndpoint?: string;
16
- commitment?: Commitment;
17
- autoConnect?: boolean;
18
- /**
19
- * Kit client signer used to pay fees and sign client-sent transactions
20
- * (e.g. `useSendTransaction()`). Install one for demo/relayer flows; never
21
- * ship a funded keypair to end-user browsers.
22
- */
23
- payer?: TransactionSigner;
24
- /**
25
- * Serializable variant of `payer`: a 64-byte Ed25519 keypair encoded as
26
- * base64 (secret key first). Resolved to a Kit `TransactionSigner` when the
27
- * client is created. Direct Vue/core demos only; Nuxt does not forward this
28
- * value through public runtime config. Dev/demos only; never ship a funded
29
- * secret to production browsers.
30
- */
31
- payerSecretKey?: string;
32
- }
33
- interface SolanaContext {
34
- cluster: SolanaCluster;
35
- endpoint: string;
36
- wsEndpoint: string;
37
- client: SolanaClient;
38
- }
39
- /**
40
- * Raw serialized wire bytes. Widened to Kit's `ReadonlyUint8Array` because
41
- * that is what `getTransactionEncoder().encode()` returns — typing it as
42
- * `Uint8Array` rejected the output of the encoder the docs tell you to use.
43
- */
44
- type SolanaTransaction = ReadonlyUint8Array;
45
- interface SolanaSignMessageResult {
46
- signedMessage: Uint8Array;
47
- signature: Uint8Array;
48
- }
49
- interface SolanaSignInAccount {
50
- address: Address;
51
- publicKey: Uint8Array;
52
- chains: string[];
53
- label?: string;
54
- icon?: string;
55
- }
56
- interface SolanaSignInResult {
57
- account: SolanaSignInAccount;
58
- signedMessage: Uint8Array;
59
- signature: Uint8Array;
60
- signatureType?: "ed25519";
61
- }
62
- interface SolanaSignInInput {
63
- domain?: string;
64
- address?: string;
65
- statement?: string;
66
- uri?: string;
67
- version?: string;
68
- chainId?: string;
69
- nonce?: string;
70
- issuedAt?: string;
71
- expirationTime?: string;
72
- notBefore?: string;
73
- requestId?: string;
74
- resources?: readonly string[];
75
- }
76
- interface SolanaWallet {
77
- publicKey: Address | null;
78
- connected: boolean;
79
- connecting?: boolean;
80
- disconnecting?: boolean;
81
- platform?: SolanaWalletInfo["platform"];
82
- source?: SolanaWalletInfo["source"];
83
- connect: () => Promise<void>;
84
- disconnect: () => Promise<void>;
85
- signMessage?: (message: Uint8Array) => Promise<SolanaSignMessageResult>;
86
- signIn?: (input?: SolanaSignInInput) => Promise<SolanaSignInResult>;
87
- signTransaction?: (transaction: SolanaTransaction) => Promise<SolanaTransaction>;
88
- signAllTransactions?: (transactions: SolanaTransaction[]) => Promise<SolanaTransaction[]>;
89
- signTransactions?: (transactions: SolanaTransaction[]) => Promise<SolanaTransaction[]>;
90
- signAndSendTransaction?: (transaction: SolanaTransaction, options?: SendTransactionOptions) => Promise<{
91
- signature: string;
92
- }>;
93
- signAndSendTransactions?: (transactions: SolanaTransaction[], options?: SendTransactionOptions) => Promise<string[]>;
94
- }
95
- interface SolanaWalletInfo {
96
- name: string;
97
- icon: string;
98
- chains: readonly string[];
99
- platform?: "browser" | "mobile" | "desktop";
100
- source?: "wallet-standard" | "mobile-wallet-adapter" | "deep-link" | "protocol-link";
101
- appUrl?: string;
102
- installUrl?: string;
103
- callbackUrl?: string;
104
- capabilities?: {
105
- connect?: boolean;
106
- disconnect?: boolean;
107
- signIn?: boolean;
108
- signMessage?: boolean;
109
- signTransaction?: boolean;
110
- signAllTransactions?: boolean;
111
- signAndSendTransaction?: boolean;
112
- };
113
- accounts: readonly {
114
- address: string;
115
- publicKey: Uint8Array;
116
- chains: readonly string[];
117
- label?: string;
118
- icon?: string;
119
- }[];
120
- wallet: unknown;
121
- }
122
- interface SendTransactionOptions {
123
- skipPreflight?: boolean;
124
- maxRetries?: bigint;
125
- minContextSlot?: Slot;
126
- preflightCommitment?: Commitment;
127
- }
128
- interface ConfirmTransactionOptions {
129
- commitment?: Commitment;
130
- timeoutMs?: number;
131
- }
132
- interface TransactionStatus {
133
- slot: Slot;
134
- confirmations: bigint | null;
135
- err: unknown | null;
136
- confirmationStatus: Commitment | null;
137
- }
138
- interface TransactionConfirmation {
139
- signature: Signature;
140
- commitment: Commitment;
141
- status: TransactionStatus;
142
- }
143
-
144
- declare function buildSolanaClient(endpoint: string, wsEndpoint: string, payer: TransactionSigner | undefined): _solana_kit.Client<{
145
- signTransactions: (input: _solana_kit.InstructionPlanInput | _solana_kit.TransactionPlanInput, config?: {
146
- abortSignal?: AbortSignal;
147
- }) => Promise<_solana_kit.TransactionPlanResult<_solana_kit_plugin_rpc.RpcSignContext>>;
148
- payer: TransactionSigner;
149
- rpc: _solana_kit.Rpc<_solana_kit.RequestAirdropApi & _solana_kit.GetAccountInfoApi & _solana_kit.GetAgGenesisCertApi & _solana_kit.GetBalanceApi & _solana_kit.GetBlockApi & _solana_kit.GetBlockCommitmentApi & _solana_kit.GetBlockHeightApi & _solana_kit.GetBlockProductionApi & _solana_kit.GetBlocksApi & _solana_kit.GetBlocksWithLimitApi & _solana_kit.GetBlockTimeApi & _solana_kit.GetClusterNodesApi & _solana_kit.GetEpochInfoApi & _solana_kit.GetEpochScheduleApi & _solana_kit.GetFeeForMessageApi & _solana_kit.GetFirstAvailableBlockApi & _solana_kit.GetGenesisHashApi & _solana_kit.GetHealthApi & _solana_kit.GetHighestSnapshotSlotApi & _solana_kit.GetIdentityApi & _solana_kit.GetInflationGovernorApi & _solana_kit.GetInflationRateApi & _solana_kit.GetInflationRewardApi & _solana_kit.GetLargestAccountsApi & _solana_kit.GetLatestBlockhashApi & _solana_kit.GetLeaderScheduleApi & _solana_kit.GetMaxRetransmitSlotApi & _solana_kit.GetMaxShredInsertSlotApi & _solana_kit.GetMinimumBalanceForRentExemptionApi & _solana_kit.GetMultipleAccountsApi & _solana_kit.GetProgramAccountsApi & _solana_kit.GetRecentPerformanceSamplesApi & _solana_kit.GetRecentPrioritizationFeesApi & _solana_kit.GetSignaturesForAddressApi & _solana_kit.GetSignatureStatusesApi & _solana_kit.GetSlotApi & _solana_kit.GetSlotLeaderApi & _solana_kit.GetSlotLeadersApi & _solana_kit.GetStakeMinimumDelegationApi & _solana_kit.GetSupplyApi & _solana_kit.GetTokenAccountBalanceApi & _solana_kit.GetTokenAccountsByDelegateApi & _solana_kit.GetTokenAccountsByOwnerApi & _solana_kit.GetTokenLargestAccountsApi & _solana_kit.GetTokenSupplyApi & _solana_kit.GetTransactionApi & _solana_kit.GetTransactionCountApi & _solana_kit.GetTransactionsForAddressApi & _solana_kit.GetVersionApi & _solana_kit.GetVoteAccountsApi & _solana_kit.IsBlockhashValidApi & _solana_kit.MinimumLedgerSlotApi & _solana_kit.SendTransactionApi & _solana_kit.SimulateTransactionApi>;
150
- rpcSubscriptions: _solana_kit.RpcSubscriptions<_solana_kit.SolanaRpcSubscriptionsApi>;
151
- getMinimumBalance: (space: number, config?: _solana_kit.GetMinimumBalanceConfig) => Promise<_solana_kit.Lamports>;
152
- transactionPlanner: _solana_kit.TransactionPlanner;
153
- planTransaction: (input: _solana_kit.InstructionPlanInput, config?: {
154
- abortSignal?: AbortSignal;
155
- }) => Promise<_solana_kit.SingleTransactionPlan["message"]>;
156
- planTransactions: (input: _solana_kit.InstructionPlanInput, config?: {
157
- abortSignal?: AbortSignal;
158
- }) => Promise<_solana_kit.TransactionPlan>;
159
- signTransaction: (input: _solana_kit.InstructionPlanInput | (_solana_kit.TransactionMessage & _solana_kit.TransactionMessageWithFeePayer<string>) | Readonly<{
160
- kind: "single";
161
- message: _solana_kit.TransactionMessage & _solana_kit.TransactionMessageWithFeePayer<string>;
162
- planType: "transactionPlan";
163
- }>, config?: {
164
- abortSignal?: AbortSignal;
165
- }) => Promise<_solana_kit.SuccessfulSingleTransactionPlanResult<_solana_kit_plugin_rpc.RpcSignContext>>;
166
- transactionPlanExecutor: _solana_kit.TransactionPlanExecutor<_solana_kit_plugin_rpc.RpcSendContext>;
167
- sendTransaction: (input: _solana_kit.InstructionPlanInput | (_solana_kit.TransactionMessage & _solana_kit.TransactionMessageWithFeePayer<string>) | Readonly<{
168
- kind: "single";
169
- message: _solana_kit.TransactionMessage & _solana_kit.TransactionMessageWithFeePayer<string>;
170
- planType: "transactionPlan";
171
- }>, config?: {
172
- abortSignal?: AbortSignal;
173
- }) => Promise<_solana_kit.SuccessfulSingleTransactionPlanResult<_solana_kit_plugin_rpc.RpcSendContext>>;
174
- sendTransactions: (input: _solana_kit.InstructionPlanInput | _solana_kit.TransactionPlanInput, config?: {
175
- abortSignal?: AbortSignal;
176
- }) => Promise<_solana_kit.TransactionPlanResult<_solana_kit_plugin_rpc.RpcSendContext>>;
177
- airdrop: (address: Address, amount: _solana_kit.Lamports, abortSignal?: AbortSignal) => Promise<_solana_kit.Signature | undefined>;
178
- }>;
179
- type SolanaClientWithPayer = ReturnType<typeof buildSolanaClient>;
180
- type SolanaClientWithOptionalPayer = Omit<SolanaClientWithPayer, "payer"> & {
181
- payer?: TransactionSigner;
182
- };
183
- type SolanaConfigWithPayer = SolanaConfig & ({
184
- payer: TransactionSigner;
185
- } | {
186
- payerSecretKey: string;
187
- });
188
- declare function createSolanaClient(config: SolanaConfigWithPayer): SolanaClientWithPayer;
189
- declare function createSolanaClient(config?: SolanaConfig): SolanaClientWithOptionalPayer;
190
- type SolanaClient = SolanaClientWithOptionalPayer;
191
-
192
- export { createSolanaClient as n };
193
- export type { ConfirmTransactionOptions as C, SendTransactionOptions as S, TransactionConfirmation as T, SolanaChain as a, SolanaClient as b, SolanaCluster as c, SolanaConfig as d, SolanaContext as e, SolanaSignInAccount as f, SolanaSignInInput as g, SolanaSignInResult as h, SolanaSignMessageResult as i, SolanaTransaction as j, SolanaWallet as k, SolanaWalletInfo as l, TransactionStatus as m };