@vapi-network/core 0.3.0 → 0.7.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/README.md +406 -5
- package/dist/account-add.d.ts +94 -0
- package/dist/account-add.d.ts.map +1 -0
- package/dist/accounts.d.ts.map +1 -1
- package/dist/agent-link.d.ts +112 -0
- package/dist/agent-link.d.ts.map +1 -0
- package/dist/agent-link.js +1781 -0
- package/dist/agent-link.js.map +6 -0
- package/dist/agent-profile.d.ts +56 -0
- package/dist/agent-profile.d.ts.map +1 -0
- package/dist/allocation.d.ts +33 -0
- package/dist/allocation.d.ts.map +1 -0
- package/dist/api-key.d.ts +99 -0
- package/dist/api-key.d.ts.map +1 -0
- package/dist/api-key.js +20086 -0
- package/dist/api-key.js.map +6 -0
- package/dist/audit.d.ts +5 -3
- package/dist/audit.d.ts.map +1 -1
- package/dist/authorization-state.d.ts +58 -0
- package/dist/authorization-state.d.ts.map +1 -0
- package/dist/backup.d.ts +186 -0
- package/dist/backup.d.ts.map +1 -0
- package/dist/backup.js +47542 -0
- package/dist/backup.js.map +6 -0
- package/dist/call-contracts-wire.d.ts +151 -11
- package/dist/call-contracts-wire.d.ts.map +1 -1
- package/dist/ceiling.d.ts +90 -0
- package/dist/ceiling.d.ts.map +1 -0
- package/dist/cloud-backup.d.ts +125 -0
- package/dist/cloud-backup.d.ts.map +1 -0
- package/dist/cloud-backup.js +48402 -0
- package/dist/cloud-backup.js.map +6 -0
- package/dist/config.d.ts +7 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/device.d.ts +15 -0
- package/dist/device.d.ts.map +1 -0
- package/dist/discovery.d.ts +20 -2
- package/dist/discovery.d.ts.map +1 -1
- package/dist/distribute.d.ts +60 -0
- package/dist/distribute.d.ts.map +1 -0
- package/dist/index.d.ts +18 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8106 -1393
- package/dist/index.js.map +3 -3
- package/dist/keystore.d.ts +24 -1
- package/dist/keystore.d.ts.map +1 -1
- package/dist/marketplace-contracts.d.ts +448 -15
- package/dist/marketplace-contracts.d.ts.map +1 -1
- package/dist/movement.d.ts +102 -0
- package/dist/movement.d.ts.map +1 -0
- package/dist/networks.d.ts +17 -2
- package/dist/networks.d.ts.map +1 -1
- package/dist/receipts.d.ts +42 -0
- package/dist/receipts.d.ts.map +1 -1
- package/dist/router-client.d.ts +117 -0
- package/dist/router-client.d.ts.map +1 -0
- package/dist/router-client.js +46147 -0
- package/dist/router-client.js.map +6 -0
- package/dist/secret-store.d.ts +17 -5
- package/dist/secret-store.d.ts.map +1 -1
- package/dist/secrets.d.ts +1 -0
- package/dist/secrets.d.ts.map +1 -1
- package/dist/secrets.js +597 -25
- package/dist/secrets.js.map +3 -3
- package/dist/siblings.d.ts +41 -0
- package/dist/siblings.d.ts.map +1 -0
- package/dist/spend-policy.d.ts +12 -0
- package/dist/spend-policy.d.ts.map +1 -1
- package/dist/status.d.ts +73 -0
- package/dist/status.d.ts.map +1 -0
- package/dist/support-report.d.ts +1 -1
- package/dist/sweep.d.ts +4 -0
- package/dist/sweep.d.ts.map +1 -1
- package/dist/transfer.d.ts +62 -0
- package/dist/transfer.d.ts.map +1 -0
- package/dist/vault-key.d.ts +41 -0
- package/dist/vault-key.d.ts.map +1 -0
- package/dist/vault-migrate.d.ts +29 -0
- package/dist/vault-migrate.d.ts.map +1 -0
- package/dist/vault.d.ts +93 -0
- package/dist/vault.d.ts.map +1 -0
- package/dist/wallet-store.d.ts +141 -31
- package/dist/wallet-store.d.ts.map +1 -1
- package/dist/x402-networks.d.ts +6 -9
- package/dist/x402-networks.d.ts.map +1 -1
- package/dist/x402-pay.d.ts +136 -0
- package/dist/x402-pay.d.ts.map +1 -0
- package/dist/x402.d.ts +20 -1
- package/dist/x402.d.ts.map +1 -1
- package/package.json +21 -1
package/dist/wallet-store.d.ts
CHANGED
|
@@ -1,9 +1,38 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { type AuditRecord } from "./audit.js";
|
|
2
3
|
import { type SpendCaps } from "./config.js";
|
|
3
4
|
import { type VapiPaymentAccount } from "./keystore.js";
|
|
5
|
+
import { type SecretStore } from "./secret-store.js";
|
|
6
|
+
import { type PassphraseResolver } from "./vault-migrate.js";
|
|
4
7
|
import { type WalletName } from "./wallet-name.js";
|
|
5
8
|
export { DEFAULT_WALLET_NAME, isWalletName, walletNameSchema, WALLET_NAME_PATTERN, type WalletName, } from "./wallet-name.js";
|
|
6
|
-
|
|
9
|
+
export type AgentLink = {
|
|
10
|
+
apiBase: string;
|
|
11
|
+
clientId: string;
|
|
12
|
+
owner: `0x${string}`;
|
|
13
|
+
label: string;
|
|
14
|
+
scopes: string[];
|
|
15
|
+
linkedAt: string;
|
|
16
|
+
routerBaseUrl?: string;
|
|
17
|
+
};
|
|
18
|
+
export declare const ROUTER_TOPUP_TIERS: readonly [1, 5, 20, 50];
|
|
19
|
+
export type RouterTopupTier = (typeof ROUTER_TOPUP_TIERS)[number];
|
|
20
|
+
export type RouterRefill = {
|
|
21
|
+
belowUsd: number;
|
|
22
|
+
tierUsd: RouterTopupTier;
|
|
23
|
+
};
|
|
24
|
+
declare const ceilingSweepPendingSchema: z.ZodObject<{
|
|
25
|
+
owner: z.ZodString;
|
|
26
|
+
amountAtomic: z.ZodString;
|
|
27
|
+
nonce: z.ZodString;
|
|
28
|
+
createdAt: z.ZodISODateTime;
|
|
29
|
+
status: z.ZodEnum<{
|
|
30
|
+
unknown: "unknown";
|
|
31
|
+
planned: "planned";
|
|
32
|
+
}>;
|
|
33
|
+
}, z.core.$strict>;
|
|
34
|
+
export type WalletCeilingSweepPending = z.infer<typeof ceilingSweepPendingSchema>;
|
|
35
|
+
/** What `wallets.json` records about one wallet. Keys live in the vault or a legacy keystore. */
|
|
7
36
|
export declare const walletEntrySchema: z.ZodObject<{
|
|
8
37
|
createdAt: z.ZodISODateTime;
|
|
9
38
|
label: z.ZodOptional<z.ZodString>;
|
|
@@ -11,6 +40,20 @@ export declare const walletEntrySchema: z.ZodObject<{
|
|
|
11
40
|
perCallAtomic: z.ZodString;
|
|
12
41
|
perDayAtomic: z.ZodString;
|
|
13
42
|
}, z.core.$strip>;
|
|
43
|
+
ceilingAtomic: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
44
|
+
ceilingSweepAttemptedAt: z.ZodOptional<z.ZodISODateTime>;
|
|
45
|
+
ceilingSweepPending: z.ZodOptional<z.ZodObject<{
|
|
46
|
+
owner: z.ZodString;
|
|
47
|
+
amountAtomic: z.ZodString;
|
|
48
|
+
nonce: z.ZodString;
|
|
49
|
+
createdAt: z.ZodISODateTime;
|
|
50
|
+
status: z.ZodEnum<{
|
|
51
|
+
unknown: "unknown";
|
|
52
|
+
planned: "planned";
|
|
53
|
+
}>;
|
|
54
|
+
}, z.core.$strict>>;
|
|
55
|
+
routerRefill: z.ZodOptional<z.ZodType<RouterRefill, unknown, z.core.$ZodTypeInternals<RouterRefill, unknown>>>;
|
|
56
|
+
link: z.ZodOptional<z.ZodType<AgentLink, unknown, z.core.$ZodTypeInternals<AgentLink, unknown>>>;
|
|
14
57
|
}, z.core.$strip>;
|
|
15
58
|
export declare const walletRegistrySchema: z.ZodObject<{
|
|
16
59
|
version: z.ZodLiteral<1>;
|
|
@@ -22,10 +65,28 @@ export declare const walletRegistrySchema: z.ZodObject<{
|
|
|
22
65
|
perCallAtomic: z.ZodString;
|
|
23
66
|
perDayAtomic: z.ZodString;
|
|
24
67
|
}, z.core.$strip>;
|
|
68
|
+
ceilingAtomic: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
69
|
+
ceilingSweepAttemptedAt: z.ZodOptional<z.ZodISODateTime>;
|
|
70
|
+
ceilingSweepPending: z.ZodOptional<z.ZodObject<{
|
|
71
|
+
owner: z.ZodString;
|
|
72
|
+
amountAtomic: z.ZodString;
|
|
73
|
+
nonce: z.ZodString;
|
|
74
|
+
createdAt: z.ZodISODateTime;
|
|
75
|
+
status: z.ZodEnum<{
|
|
76
|
+
unknown: "unknown";
|
|
77
|
+
planned: "planned";
|
|
78
|
+
}>;
|
|
79
|
+
}, z.core.$strict>>;
|
|
80
|
+
routerRefill: z.ZodOptional<z.ZodType<RouterRefill, unknown, z.core.$ZodTypeInternals<RouterRefill, unknown>>>;
|
|
81
|
+
link: z.ZodOptional<z.ZodType<AgentLink, unknown, z.core.$ZodTypeInternals<AgentLink, unknown>>>;
|
|
25
82
|
}, z.core.$strip>>;
|
|
26
83
|
}, z.core.$strip>;
|
|
27
84
|
export type WalletEntry = z.infer<typeof walletEntrySchema>;
|
|
28
85
|
export type WalletRegistry = z.infer<typeof walletRegistrySchema>;
|
|
86
|
+
export type WalletCeilingCaps = {
|
|
87
|
+
ceilingAtomic: bigint | null;
|
|
88
|
+
effectiveCeilingAtomic: bigint | null;
|
|
89
|
+
};
|
|
29
90
|
/** How a caller names the wallet it wants; every field is optional. */
|
|
30
91
|
export type WalletSelection = {
|
|
31
92
|
/** An explicit name, from `--wallet` or an MCP argument. */
|
|
@@ -49,7 +110,7 @@ export type WalletInfo = ResolvedWallet & {
|
|
|
49
110
|
};
|
|
50
111
|
export type CreatedWallet = ResolvedWallet & {
|
|
51
112
|
account: VapiPaymentAccount;
|
|
52
|
-
recoveryPhrase
|
|
113
|
+
recoveryPhrase?: string;
|
|
53
114
|
};
|
|
54
115
|
export type ImportedWallet = ResolvedWallet & {
|
|
55
116
|
account: VapiPaymentAccount;
|
|
@@ -65,24 +126,34 @@ export type WalletBalanceReader = (address: string) => Promise<bigint>;
|
|
|
65
126
|
export type WalletStoreOptions = {
|
|
66
127
|
/** Injected clock, so `createdAt` is deterministic in tests. */
|
|
67
128
|
now?: () => Date;
|
|
129
|
+
/** OS secret store holding the device vault key and optional legacy passphrases. */
|
|
130
|
+
secrets?: SecretStore;
|
|
131
|
+
/** Environment used for vault and legacy-keystore passwords. */
|
|
132
|
+
env?: NodeJS.ProcessEnv;
|
|
133
|
+
/** Resolves a 0.5 keystore passphrase without prompting. */
|
|
134
|
+
resolvePassphrase?: PassphraseResolver;
|
|
135
|
+
/** Writes migration audit records. */
|
|
136
|
+
audit?: (record: AuditRecord) => Promise<unknown>;
|
|
68
137
|
};
|
|
69
138
|
export type LayoutMigration = {
|
|
70
139
|
moved: boolean;
|
|
71
140
|
from?: string;
|
|
72
141
|
to?: string;
|
|
73
142
|
};
|
|
143
|
+
export declare const VAULT_LOCKED_MESSAGE = "The vault is locked. Run vapi vault unlock, or set VAPI_VAULT_PASSWORD.";
|
|
74
144
|
/**
|
|
75
|
-
* The wallets on this machine:
|
|
76
|
-
*
|
|
77
|
-
* keystore files; the store only moves, names and caps them.
|
|
145
|
+
* The wallets on this machine: a vault of keys, a registry of settings, and the
|
|
146
|
+
* rules for picking the wallet a command acts on.
|
|
78
147
|
*
|
|
79
148
|
* Layout under the config home (`~/.vapi`, or `VAPI_HOME`):
|
|
80
149
|
*
|
|
81
150
|
* ```
|
|
151
|
+
* vault.json encrypted device vault and named accounts
|
|
82
152
|
* wallets.json registry: default wallet, per-wallet caps and labels
|
|
83
|
-
* wallets/<name>.json
|
|
84
|
-
* wallets
|
|
85
|
-
*
|
|
153
|
+
* wallets/<name>.json 0.5 keystores awaiting migration
|
|
154
|
+
* wallets.migrated/ migrated 0.5 keystores, retained as encrypted backups
|
|
155
|
+
* wallets/.trash/ removed accounts and their registry sidecars
|
|
156
|
+
* audit.log append-only local audit trail
|
|
86
157
|
* ```
|
|
87
158
|
*/
|
|
88
159
|
export declare class WalletStore {
|
|
@@ -90,13 +161,20 @@ export declare class WalletStore {
|
|
|
90
161
|
readonly home: string;
|
|
91
162
|
private readonly options;
|
|
92
163
|
private registry;
|
|
164
|
+
private readonly secrets;
|
|
165
|
+
private readonly environment;
|
|
166
|
+
private readonly passphraseResolver;
|
|
167
|
+
private readonly audit;
|
|
168
|
+
private cachedVault;
|
|
169
|
+
private vaultKey;
|
|
170
|
+
private balanceProbe;
|
|
93
171
|
private constructor();
|
|
94
172
|
/** Opens the store, migrating a 0.2.x single-keystore home on the way. */
|
|
95
173
|
static open(home?: string, options?: WalletStoreOptions): Promise<WalletStore>;
|
|
96
174
|
get registryPath(): string;
|
|
97
175
|
get walletsDirectory(): string;
|
|
98
176
|
get trashDirectory(): string;
|
|
99
|
-
/** The keystore path of a wallet, whether or not it exists
|
|
177
|
+
/** The legacy 0.5 keystore path of a wallet, whether or not it exists. */
|
|
100
178
|
pathFor(name: string): string;
|
|
101
179
|
/** The names this machine knows, in registry order. */
|
|
102
180
|
names(): WalletName[];
|
|
@@ -106,9 +184,11 @@ export declare class WalletStore {
|
|
|
106
184
|
hasRegistry(): boolean;
|
|
107
185
|
entry(name: string): WalletEntry | undefined;
|
|
108
186
|
has(name: string): boolean;
|
|
187
|
+
/** True only when the device vault currently contains an account with this name. */
|
|
188
|
+
hasVaultAccount(name: string): Promise<boolean>;
|
|
109
189
|
/** A copy of the registry as it was last read or written. */
|
|
110
190
|
snapshot(): WalletRegistry;
|
|
111
|
-
/** Re-reads `wallets.json` from disk. */
|
|
191
|
+
/** Re-reads `wallets.json` from disk and drops the process-local vault cache. */
|
|
112
192
|
reload(): Promise<WalletRegistry>;
|
|
113
193
|
/**
|
|
114
194
|
* Picks the wallet a command acts on: an explicit name first, then
|
|
@@ -120,37 +200,62 @@ export declare class WalletStore {
|
|
|
120
200
|
/** The stored Base address of a wallet, without its passphrase. */
|
|
121
201
|
readAddress(name: string): Promise<string | undefined>;
|
|
122
202
|
/**
|
|
123
|
-
* Creates a
|
|
124
|
-
* on a machine also becomes the default.
|
|
125
|
-
*
|
|
203
|
+
* Creates a vault account from a fresh or supplied recovery phrase. The first
|
|
204
|
+
* wallet on a machine also becomes the default. `passphrase` and
|
|
205
|
+
* `enableSolana` are accepted and ignored for one release. Every derived
|
|
206
|
+
* account returns the vault's shared phrase to preserve this method's public
|
|
207
|
+
* contract; callers decide whether their current flow may display it.
|
|
126
208
|
*/
|
|
127
209
|
create(name: string, passphrase: string, options?: {
|
|
128
210
|
phrase?: string;
|
|
129
211
|
enableSolana?: boolean;
|
|
130
212
|
label?: string;
|
|
131
213
|
spendCaps?: SpendCaps;
|
|
132
|
-
}): Promise<CreatedWallet
|
|
133
|
-
|
|
214
|
+
}): Promise<CreatedWallet & {
|
|
215
|
+
recoveryPhrase: string;
|
|
216
|
+
}>;
|
|
217
|
+
/** Imports a private key into the vault. `passphrase` is ignored for one release. */
|
|
134
218
|
importKey(name: string, passphrase: string, privateKey: string, options?: {
|
|
135
219
|
label?: string;
|
|
136
220
|
spendCaps?: SpendCaps;
|
|
137
221
|
}): Promise<ImportedWallet>;
|
|
138
|
-
/**
|
|
222
|
+
/** Returns one wallet's vault signer, migrating its legacy keystore if needed. */
|
|
139
223
|
unlock(name: string, passphrase: string): Promise<VapiPaymentAccount>;
|
|
140
224
|
setDefault(name: string): Promise<WalletRegistry>;
|
|
141
225
|
setSpendCaps(name: string, caps: SpendCaps): Promise<WalletEntry>;
|
|
226
|
+
/** Stores an explicit atomic ceiling, or null to disable automatic sweeps. */
|
|
227
|
+
setCeiling(name: string, ceilingAtomic: bigint | null): Promise<WalletEntry>;
|
|
228
|
+
/** Updates a ceiling from the latest value while holding the registry write lock. */
|
|
229
|
+
updateCeiling(name: string, update: (current: bigint | null) => bigint | null): Promise<WalletEntry>;
|
|
230
|
+
/** Reads the configured ceiling and the per-day-cap floor for one wallet. */
|
|
231
|
+
ceilingCaps(name: string): WalletCeilingCaps;
|
|
232
|
+
/**
|
|
233
|
+
* Atomically claims the ten-minute sweep window. The timestamp is written
|
|
234
|
+
* before authorization work, so failed attempts consume the window too.
|
|
235
|
+
*/
|
|
236
|
+
claimCeilingSweepAttempt(name: string, now: Date, guardMs?: number): Promise<boolean>;
|
|
237
|
+
/** Reads the durable authorization plan used to resume an uncertain sweep. */
|
|
238
|
+
ceilingSweepPending(name: string): WalletCeilingSweepPending | undefined;
|
|
239
|
+
/** Updates an uncertain sweep from the latest registry value under its lock. */
|
|
240
|
+
updateCeilingSweepPending(name: string, update: (current: Readonly<WalletCeilingSweepPending> | undefined) => WalletCeilingSweepPending | undefined): Promise<WalletCeilingSweepPending | undefined>;
|
|
241
|
+
/** Updates spend caps from the latest registry value while holding its write lock. */
|
|
242
|
+
updateSpendCaps(name: string, update: (current: Readonly<SpendCaps>) => SpendCaps): Promise<WalletEntry>;
|
|
243
|
+
setRouterRefill(name: string, refill: RouterRefill | null): Promise<WalletEntry>;
|
|
142
244
|
/** Sets or, with `undefined`, clears the human label of a wallet. */
|
|
143
245
|
setLabel(name: string, label: string | undefined): Promise<WalletEntry>;
|
|
246
|
+
setLink(name: WalletName, link: AgentLink): Promise<WalletEntry>;
|
|
247
|
+
clearLink(name: WalletName): Promise<WalletEntry>;
|
|
144
248
|
/**
|
|
145
|
-
* Renames a wallet everywhere its name is recorded: the
|
|
146
|
-
* registry, and the wallet field of its receipts.
|
|
147
|
-
* moved untouched.
|
|
249
|
+
* Renames a wallet everywhere its name is recorded: the vault or legacy
|
|
250
|
+
* keystore, the registry, and the wallet field of its receipts.
|
|
148
251
|
*/
|
|
149
|
-
rename(oldName: string, newName: string
|
|
252
|
+
rename(oldName: string, newName: string, options?: {
|
|
253
|
+
secrets?: SecretStore;
|
|
254
|
+
}): Promise<ResolvedWallet>;
|
|
150
255
|
/**
|
|
151
|
-
* Moves a wallet's
|
|
152
|
-
*
|
|
153
|
-
*
|
|
256
|
+
* Moves a wallet's encrypted vault record or legacy keystore to
|
|
257
|
+
* `wallets/.trash/`. The default wallet and a wallet that still holds USDC
|
|
258
|
+
* are refused unless forced.
|
|
154
259
|
*
|
|
155
260
|
* `allowDefault` exists for one caller: `vapi import --replace`, which puts a
|
|
156
261
|
* new wallet under the same name back in place immediately afterwards, so the
|
|
@@ -167,20 +272,19 @@ export declare class WalletStore {
|
|
|
167
272
|
listTrash(): Promise<TrashedWallet[]>;
|
|
168
273
|
/**
|
|
169
274
|
* Moves a 0.2.x home into the wallet layout, once: `keystore.json` becomes
|
|
170
|
-
* `wallets/main.json
|
|
171
|
-
*
|
|
172
|
-
* are never rewritten, and a home without a keystore migrates nothing.
|
|
275
|
+
* `wallets/main.json`, ready for vault migration. The keystore contents are
|
|
276
|
+
* never rewritten, and a home without a keystore migrates nothing.
|
|
173
277
|
*/
|
|
174
278
|
migrateLegacyLayout(): Promise<LayoutMigration>;
|
|
175
279
|
private now;
|
|
176
280
|
private newEntry;
|
|
177
281
|
private prepareNewWallet;
|
|
178
282
|
private registerWallet;
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
private
|
|
283
|
+
private get vaultPath();
|
|
284
|
+
private readVaultUnlocked;
|
|
285
|
+
private registerMissingVaultAccounts;
|
|
286
|
+
private openVault;
|
|
287
|
+
private dropVaultCache;
|
|
184
288
|
private update;
|
|
185
289
|
private readRegistry;
|
|
186
290
|
private writeRegistry;
|
|
@@ -190,6 +294,12 @@ export declare class WalletStore {
|
|
|
190
294
|
* registry yet — the legacy `config.spendCaps`, and otherwise the defaults.
|
|
191
295
|
*/
|
|
192
296
|
export declare function spendCapsForWallet(store: WalletStore, name?: WalletName): Promise<SpendCaps>;
|
|
297
|
+
/** Formats atomic USDC without floating point for JSON-facing cap objects. */
|
|
298
|
+
export declare function formatCeilingUsd(ceilingAtomic: bigint | null): string;
|
|
299
|
+
/** The JSON fragment used by account and caps output. */
|
|
300
|
+
export declare function ceilingCapsJson(caps: Pick<WalletCeilingCaps, "ceilingAtomic">): {
|
|
301
|
+
ceilingUsd: string;
|
|
302
|
+
};
|
|
193
303
|
/** Rejects anything that is not a wallet name, including path traversal. */
|
|
194
304
|
export declare function assertWalletName(value: string): WalletName;
|
|
195
305
|
//# sourceMappingURL=wallet-store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-store.d.ts","sourceRoot":"","sources":["../src/wallet-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wallet-store.d.ts","sourceRoot":"","sources":["../src/wallet-store.ts"],"names":[],"mappings":"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"}
|
package/dist/x402-networks.d.ts
CHANGED
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { type Address } from "viem";
|
|
2
2
|
export declare const BASE_MAINNET_CAIP2: "eip155:8453";
|
|
3
|
+
export declare const ARC_MAINNET_CAIP2: "eip155:5042";
|
|
3
4
|
export declare const ARC_TESTNET_CAIP2: "eip155:5042002";
|
|
4
|
-
/**
|
|
5
|
-
* Arc mainnet is not yet published by Arc or the x402 packages. Keep this
|
|
6
|
-
* non-routable placeholder so callers do not mistake viem's reserved chain ID
|
|
7
|
-
* for a usable x402 network.
|
|
8
|
-
*
|
|
9
|
-
* TODO: replace only after Arc publishes a mainnet RPC and canonical USDC.
|
|
10
|
-
*/
|
|
11
|
-
export declare const ARC_MAINNET_CAIP2_PLACEHOLDER: null;
|
|
12
5
|
/** Full Solana mainnet genesis hash requested by the persisted vAPI config. */
|
|
13
6
|
export declare const SOLANA_MAINNET_CAIP2: "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d";
|
|
14
7
|
/** CAIP-2 identifier emitted by the x402 reference packages. */
|
|
15
8
|
export declare const X402_SOLANA_MAINNET_CAIP2: "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp";
|
|
16
9
|
export declare const SOLANA_MAINNET_USDC: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";
|
|
17
|
-
export type CanonicalX402UsdcNetwork = typeof BASE_MAINNET_CAIP2 | typeof ARC_TESTNET_CAIP2;
|
|
10
|
+
export type CanonicalX402UsdcNetwork = typeof BASE_MAINNET_CAIP2 | typeof ARC_MAINNET_CAIP2 | typeof ARC_TESTNET_CAIP2;
|
|
18
11
|
export type X402TokenDomain = Readonly<{
|
|
19
12
|
name: string;
|
|
20
13
|
version: string;
|
|
@@ -35,6 +28,10 @@ export declare const CANONICAL_X402_USDC_NETWORKS: Readonly<{
|
|
|
35
28
|
usdc: Address;
|
|
36
29
|
eip712Domain: X402TokenDomain;
|
|
37
30
|
}>;
|
|
31
|
+
"eip155:5042": Readonly<{
|
|
32
|
+
usdc: Address;
|
|
33
|
+
eip712Domain: X402TokenDomain;
|
|
34
|
+
}>;
|
|
38
35
|
"eip155:5042002": Readonly<{
|
|
39
36
|
usdc: Address;
|
|
40
37
|
eip712Domain: X402TokenDomain;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x402-networks.d.ts","sourceRoot":"","sources":["../src/x402-networks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAEhD,eAAO,MAAM,kBAAkB,EAAG,aAAsB,CAAC;AACzD,eAAO,MAAM,iBAAiB,EAAG,
|
|
1
|
+
{"version":3,"file":"x402-networks.d.ts","sourceRoot":"","sources":["../src/x402-networks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAEhD,eAAO,MAAM,kBAAkB,EAAG,aAAsB,CAAC;AACzD,eAAO,MAAM,iBAAiB,EAAG,aAAsB,CAAC;AACxD,eAAO,MAAM,iBAAiB,EAAG,gBAAyB,CAAC;AAE3D,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,EAAG,qDAA8D,CAAC;AACnG,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,EAAG,yCAAkD,CAAC;AAC5F,eAAO,MAAM,mBAAmB,EAAG,8CAAuD,CAAC;AAE3F,MAAM,MAAM,wBAAwB,GAClC,OAAO,kBAAkB,GAAG,OAAO,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAElF,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC;IAC/C,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,eAAe,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CACtC,MAAM,CACJ,MAAM,EACN,QAAQ,CAAC;IACP,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC,CAAC,CACH,CACF,CAAC;AAyBF,qFAAqF;AACrF,eAAO,MAAM,4BAA4B;;cAxCjC,OAAO;sBACC,eAAe;;;cADvB,OAAO;sBACC,eAAe;;;cADvB,OAAO;sBACC,eAAe;;EA2CmD,CAAC;AAEnF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,yBAAyB,GAAG,SAAS,CAK3F;AAUD,8EAA8E;AAC9E,eAAO,MAAM,mCAAmC,EAAE,iBAIhD,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { type CeilingSweepHook } from "./ceiling.js";
|
|
2
|
+
import type { SpendCaps, VapiConfig } from "./config.js";
|
|
3
|
+
import type { VapiPaymentAccount } from "./keystore.js";
|
|
4
|
+
import { type LookupFn } from "./net-guard.js";
|
|
5
|
+
import { type Receipt } from "./receipts.js";
|
|
6
|
+
import type { WalletName } from "./wallet-name.js";
|
|
7
|
+
import { type X402Quote, type X402SettlementOutcome } from "./x402.js";
|
|
8
|
+
export type PayRequestArgs = {
|
|
9
|
+
url: string;
|
|
10
|
+
init: RequestInit;
|
|
11
|
+
account: VapiPaymentAccount;
|
|
12
|
+
wallet: WalletName;
|
|
13
|
+
caps: SpendCaps;
|
|
14
|
+
config: VapiConfig;
|
|
15
|
+
fetchImpl: typeof fetch;
|
|
16
|
+
paths?: {
|
|
17
|
+
ledgerPath?: string;
|
|
18
|
+
receiptsPath?: string;
|
|
19
|
+
};
|
|
20
|
+
maxAtomic?: bigint;
|
|
21
|
+
preferNetworks?: string[];
|
|
22
|
+
paymentId?: string;
|
|
23
|
+
now?: Date;
|
|
24
|
+
nowMs?: () => number;
|
|
25
|
+
source?: string;
|
|
26
|
+
lookup?: LookupFn;
|
|
27
|
+
/** Optional settled-call hook; omitted or false keeps payment tests and custom SDK flows inert. */
|
|
28
|
+
ceilingSweep?: CeilingSweepHook | false;
|
|
29
|
+
};
|
|
30
|
+
export type PayRequestResult = {
|
|
31
|
+
response: Response;
|
|
32
|
+
receipt: Receipt;
|
|
33
|
+
};
|
|
34
|
+
export type X402PaymentAttempt = {
|
|
35
|
+
response: Response;
|
|
36
|
+
request: Request;
|
|
37
|
+
finish(): void;
|
|
38
|
+
waitFor<T>(operation: Promise<T>, response: Response): Promise<T>;
|
|
39
|
+
};
|
|
40
|
+
export type X402PossibleSettlement = {
|
|
41
|
+
network: string;
|
|
42
|
+
asset: string;
|
|
43
|
+
amountAtomic: string;
|
|
44
|
+
payTo: string;
|
|
45
|
+
payer: string;
|
|
46
|
+
paymentId?: string;
|
|
47
|
+
authorizationNonce?: string;
|
|
48
|
+
authorizationExpiresAt?: string;
|
|
49
|
+
authorizationTransaction?: string;
|
|
50
|
+
receipt: unknown | null;
|
|
51
|
+
};
|
|
52
|
+
export type X402PaymentTrace = {
|
|
53
|
+
phases: {
|
|
54
|
+
quoteMs?: number;
|
|
55
|
+
signMs?: number;
|
|
56
|
+
requestMs?: number;
|
|
57
|
+
settleMs?: number;
|
|
58
|
+
};
|
|
59
|
+
quote?: NonNullable<Receipt["quote"]>;
|
|
60
|
+
payer?: string;
|
|
61
|
+
paymentId?: string;
|
|
62
|
+
authorization?: NonNullable<Receipt["authorization"]>;
|
|
63
|
+
settlement?: NonNullable<Receipt["settlement"]>;
|
|
64
|
+
status?: number;
|
|
65
|
+
capsApplied: boolean;
|
|
66
|
+
};
|
|
67
|
+
export declare class X402PaymentError extends Error {
|
|
68
|
+
readonly code: "payment_rejected" | "response_unreadable" | "settlement_unknown";
|
|
69
|
+
readonly possibleSettlement?: X402PossibleSettlement | undefined;
|
|
70
|
+
readonly name = "X402PaymentError";
|
|
71
|
+
constructor(code: "payment_rejected" | "response_unreadable" | "settlement_unknown", message: string, possibleSettlement?: X402PossibleSettlement | undefined, options?: ErrorOptions & {
|
|
72
|
+
paymentRejection?: {
|
|
73
|
+
httpStatus: number;
|
|
74
|
+
receipt: unknown;
|
|
75
|
+
};
|
|
76
|
+
confirmedSettlement?: {
|
|
77
|
+
httpStatus: number;
|
|
78
|
+
receipt: unknown;
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
readonly paymentRejection?: {
|
|
82
|
+
httpStatus: number;
|
|
83
|
+
receipt: unknown;
|
|
84
|
+
};
|
|
85
|
+
readonly confirmedSettlement?: {
|
|
86
|
+
httpStatus: number;
|
|
87
|
+
receipt: unknown;
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export type CompleteX402PaymentArgs<T = undefined> = {
|
|
91
|
+
challenge: X402PaymentAttempt;
|
|
92
|
+
account: VapiPaymentAccount;
|
|
93
|
+
caps: SpendCaps;
|
|
94
|
+
config: VapiConfig;
|
|
95
|
+
send(request: Request): Promise<X402PaymentAttempt>;
|
|
96
|
+
consumeResponse?: (response: Response) => Promise<T>;
|
|
97
|
+
fetchImpl?: typeof fetch;
|
|
98
|
+
ledgerPath?: string;
|
|
99
|
+
wallet?: WalletName;
|
|
100
|
+
maxAtomic?: bigint;
|
|
101
|
+
maxPriceUsd?: number | string;
|
|
102
|
+
preferNetworks?: string[];
|
|
103
|
+
requiredNetwork?: string;
|
|
104
|
+
expectedPayTo?: string;
|
|
105
|
+
paymentId?: string;
|
|
106
|
+
now?: Date;
|
|
107
|
+
nowMs?: () => number;
|
|
108
|
+
quoteStartedMs?: number;
|
|
109
|
+
trace?: X402PaymentTrace;
|
|
110
|
+
/** Runs only after a successful, decisively settled paid result is ready. */
|
|
111
|
+
ceilingSweep?: CeilingSweepHook | false;
|
|
112
|
+
};
|
|
113
|
+
export type CompleteX402PaymentResult<T = undefined> = {
|
|
114
|
+
response: Response;
|
|
115
|
+
request: Request;
|
|
116
|
+
body: T | undefined;
|
|
117
|
+
quote: X402Quote;
|
|
118
|
+
payer: string;
|
|
119
|
+
paymentId?: string;
|
|
120
|
+
settlement: unknown | null;
|
|
121
|
+
settlementOutcome: X402SettlementOutcome;
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Sends one request and, only when it receives HTTP 402, completes the exact
|
|
125
|
+
* x402 payment flow. A non-402 response is returned with a receipt that has no
|
|
126
|
+
* quote, payer, authorization, or settlement fields. The existing receipt
|
|
127
|
+
* vocabulary records a successful unpaid response as `paid`.
|
|
128
|
+
*/
|
|
129
|
+
export declare function payRequest(args: PayRequestArgs): Promise<PayRequestResult>;
|
|
130
|
+
/**
|
|
131
|
+
* Completes an already-received HTTP 402 challenge. The transport seam keeps
|
|
132
|
+
* redirect validation and timeout ownership with the caller while this module
|
|
133
|
+
* owns quote selection, policy, signing, paid replay, and settlement handling.
|
|
134
|
+
*/
|
|
135
|
+
export declare function completeX402Payment<T = undefined>(args: CompleteX402PaymentArgs<T>): Promise<CompleteX402PaymentResult<T>>;
|
|
136
|
+
//# sourceMappingURL=x402-pay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"x402-pay.d.ts","sourceRoot":"","sources":["../src/x402-pay.ts"],"names":[],"mappings":"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"}
|
package/dist/x402.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ import { type Address, type Hex } from "viem";
|
|
|
2
2
|
import { ExactSvmScheme } from "@x402/svm/exact/client";
|
|
3
3
|
import { type X402NetworkConfig } from "./x402-networks.js";
|
|
4
4
|
export type { Address, Hex } from "viem";
|
|
5
|
-
export {
|
|
5
|
+
export { ARC_MAINNET_CAIP2, ARC_TESTNET_CAIP2, BASE_MAINNET_CAIP2, BROWSER_ENABLED_X402_NETWORK_CONFIG, CANONICAL_X402_USDC_NETWORKS, SOLANA_MAINNET_CAIP2, SOLANA_MAINNET_USDC, X402_SOLANA_MAINNET_CAIP2, getCanonicalX402Usdc, type CanonicalX402UsdcIdentity, type CanonicalX402UsdcNetwork, type X402NetworkConfig, type X402TokenDomain, } from "./x402-networks.js";
|
|
6
|
+
export declare const VAPI_BUILDER_CODE = "vapi";
|
|
6
7
|
export declare const EIP3009_AUTHORIZATION_TYPES: {
|
|
7
8
|
readonly TransferWithAuthorization: readonly [{
|
|
8
9
|
readonly name: "from";
|
|
@@ -119,6 +120,18 @@ export declare class X402Error extends Error {
|
|
|
119
120
|
readonly code: "invalid_challenge" | "unsupported_challenge" | "max_price_exceeded";
|
|
120
121
|
constructor(code: "invalid_challenge" | "unsupported_challenge" | "max_price_exceeded", message: string, options?: ErrorOptions);
|
|
121
122
|
}
|
|
123
|
+
/** Returns whether a value is a valid x402 payment-identifier id. */
|
|
124
|
+
export declare function isValidPaymentId(value: unknown): value is string;
|
|
125
|
+
/** Creates a fresh x402 payment-identifier id from 16 random bytes. */
|
|
126
|
+
export declare function createPaymentId(randomBytes?: (bytes: Uint8Array<ArrayBuffer>) => void): string;
|
|
127
|
+
/**
|
|
128
|
+
* Builds the extensions sent in a payment payload without mutating the
|
|
129
|
+
* server-declared extensions. A payment id is required only when the server
|
|
130
|
+
* advertised payment-identifier.
|
|
131
|
+
*/
|
|
132
|
+
export declare function buildPaymentExtensions(serverExtensions: Readonly<Record<string, unknown>> | undefined, options?: Readonly<{
|
|
133
|
+
paymentId?: string;
|
|
134
|
+
}>): Record<string, unknown>;
|
|
122
135
|
export declare function parse402Challenge(challenge: unknown, configuredNetworks: X402NetworkConfig, fallbackResourceUrl?: string, requiredNetwork?: string, expectedPayTo?: string): X402Quote;
|
|
123
136
|
/**
|
|
124
137
|
* Drop a response body without waiting. Awaiting cancel() on a body that has
|
|
@@ -126,6 +139,8 @@ export declare function parse402Challenge(challenge: unknown, configuredNetworks
|
|
|
126
139
|
* callers that only want to discard the bytes must not block on it.
|
|
127
140
|
*/
|
|
128
141
|
export declare function discardBody(response: Response | null | undefined): void;
|
|
142
|
+
/** Decodes a `PAYMENT-REQUIRED` header: base64 of the JSON payment offer. Throws when it is not. */
|
|
143
|
+
export declare function decodePaymentRequiredHeader(value: string): unknown;
|
|
129
144
|
export declare function parse402Response(response: Response, configuredNetworks: X402NetworkConfig, requiredNetwork?: string, expectedPayTo?: string): Promise<X402Quote>;
|
|
130
145
|
export declare function buildEip3009TypedData(args: {
|
|
131
146
|
from: Address;
|
|
@@ -142,9 +157,11 @@ export declare function buildX402Payment(args: {
|
|
|
142
157
|
nowSeconds?: number;
|
|
143
158
|
nonce?: Hex;
|
|
144
159
|
fetchImpl?: typeof fetch;
|
|
160
|
+
paymentId?: string;
|
|
145
161
|
}): Promise<{
|
|
146
162
|
payload: X402PaymentPayload;
|
|
147
163
|
headers: X402PaymentHeaders;
|
|
164
|
+
paymentId?: string;
|
|
148
165
|
}>;
|
|
149
166
|
/** Adds the older X-PAYMENT header while keeping PAYMENT-SIGNATURE canonical. */
|
|
150
167
|
export declare function buildCompatibleX402Payment(args: {
|
|
@@ -153,9 +170,11 @@ export declare function buildCompatibleX402Payment(args: {
|
|
|
153
170
|
nowSeconds?: number;
|
|
154
171
|
nonce?: Hex;
|
|
155
172
|
fetchImpl?: typeof fetch;
|
|
173
|
+
paymentId?: string;
|
|
156
174
|
}): Promise<{
|
|
157
175
|
payload: X402PaymentPayload;
|
|
158
176
|
headers: X402CompatiblePaymentHeaders;
|
|
177
|
+
paymentId?: string;
|
|
159
178
|
}>;
|
|
160
179
|
export declare function assertMaxPrice(amountAtomic: bigint, maxPriceUsd: number | string | undefined): void;
|
|
161
180
|
export declare function usdToAtomic(value: number | string): bigint;
|
package/dist/x402.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../src/x402.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAUxD,OAAO,EAAwB,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAElF,YAAY,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEzC,OAAO,EACL,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../src/x402.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vapi-network/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Non-custodial x402 protocol, wallet policy, discovery, and receipts core",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -26,6 +26,26 @@
|
|
|
26
26
|
"./secrets": {
|
|
27
27
|
"types": "./dist/secrets.d.ts",
|
|
28
28
|
"import": "./dist/secrets.js"
|
|
29
|
+
},
|
|
30
|
+
"./backup": {
|
|
31
|
+
"types": "./dist/backup.d.ts",
|
|
32
|
+
"import": "./dist/backup.js"
|
|
33
|
+
},
|
|
34
|
+
"./cloud-backup": {
|
|
35
|
+
"types": "./dist/cloud-backup.d.ts",
|
|
36
|
+
"import": "./dist/cloud-backup.js"
|
|
37
|
+
},
|
|
38
|
+
"./api-key": {
|
|
39
|
+
"types": "./dist/api-key.d.ts",
|
|
40
|
+
"import": "./dist/api-key.js"
|
|
41
|
+
},
|
|
42
|
+
"./agent-link": {
|
|
43
|
+
"types": "./dist/agent-link.d.ts",
|
|
44
|
+
"import": "./dist/agent-link.js"
|
|
45
|
+
},
|
|
46
|
+
"./router-client": {
|
|
47
|
+
"types": "./dist/router-client.d.ts",
|
|
48
|
+
"import": "./dist/router-client.js"
|
|
29
49
|
}
|
|
30
50
|
},
|
|
31
51
|
"dependencies": {},
|