@rhinestone/1auth 0.6.8 → 0.6.9
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 +171 -12
- package/dist/chunk-IHBVEU33.mjs +20 -0
- package/dist/chunk-IHBVEU33.mjs.map +1 -0
- package/dist/chunk-IIACVHR3.mjs +28 -0
- package/dist/chunk-IIACVHR3.mjs.map +1 -0
- package/dist/chunk-N6KE5CII.mjs +72 -0
- package/dist/chunk-N6KE5CII.mjs.map +1 -0
- package/dist/{chunk-SXISYG2P.mjs → chunk-VZYHCFEH.mjs} +195 -140
- package/dist/chunk-VZYHCFEH.mjs.map +1 -0
- package/dist/{client-BrMrhetG.d.mts → client-BNluVe4_.d.ts} +305 -849
- package/dist/{client-BrMrhetG.d.ts → client-CLCdahyj.d.mts} +305 -849
- package/dist/headless.d.mts +90 -0
- package/dist/headless.d.ts +90 -0
- package/dist/headless.js +327 -0
- package/dist/headless.js.map +1 -0
- package/dist/headless.mjs +280 -0
- package/dist/headless.mjs.map +1 -0
- package/dist/index.d.mts +96 -144
- package/dist/index.d.ts +96 -144
- package/dist/index.js +2984 -718
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2740 -627
- package/dist/index.mjs.map +1 -1
- package/dist/{provider-CDl9wYEc.d.mts → provider-BgD9PeDX.d.ts} +6 -5
- package/dist/{provider-Dgv533YQ.d.ts → provider-hxHGb6SX.d.mts} +6 -5
- package/dist/react.d.mts +42 -2
- package/dist/react.d.ts +42 -2
- package/dist/react.js +92 -2
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +66 -1
- package/dist/react.mjs.map +1 -1
- package/dist/server.d.mts +118 -0
- package/dist/server.d.ts +118 -0
- package/dist/server.js +356 -0
- package/dist/server.js.map +1 -0
- package/dist/server.mjs +282 -0
- package/dist/server.mjs.map +1 -0
- package/dist/types-1BMD1PSH.d.mts +1425 -0
- package/dist/types-1BMD1PSH.d.ts +1425 -0
- package/dist/verify-CZe-m_Vf.d.ts +150 -0
- package/dist/verify-D3FaLeAi.d.mts +150 -0
- package/dist/wagmi.d.mts +5 -2
- package/dist/wagmi.d.ts +5 -2
- package/dist/wagmi.js +138 -43
- package/dist/wagmi.js.map +1 -1
- package/dist/wagmi.mjs +2 -1
- package/dist/wagmi.mjs.map +1 -1
- package/package.json +15 -2
- package/dist/chunk-SXISYG2P.mjs.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,71 @@
|
|
|
1
|
-
import { O as OneAuthClient
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { O as OneAuthClient } from './client-BNluVe4_.js';
|
|
2
|
+
import { Abi, Address, LocalAccount, WalletClient, Hash, Chain } from 'viem';
|
|
3
|
+
import { Permission } from '@rhinestone/sdk';
|
|
4
|
+
export { Permission } from '@rhinestone/sdk';
|
|
5
|
+
import { h as IntentCall, i as SendIntentResult } from './types-1BMD1PSH.js';
|
|
6
|
+
export { a7 as AssetBalance, a8 as AssetBalanceBucket, a9 as AssetsResponse, u as AuthFlow, A as AuthResult, v as AuthWithModalOptions, z as AuthenticateOptions, B as AuthenticateResult, R as BalanceRequirement, ap as BatchIntentItem, as as BatchIntentItemResult, ad as CheckConsentOptions, ae as CheckConsentResult, a0 as CloseOnStatus, y as ConnectResult, ac as ConsentData, ab as ConsentField, w as CreateAccountWithModalOptions, C as CreateCrossChainPermissionInput, r as CreateSigningRequestResponse, k as CrossChainPermit, l as CrossChainSettlementLayer, M as EIP712Domain, O as EIP712TypeField, N as EIP712Types, E as EmbedOptions, a2 as ExecuteIntentResponse, a6 as GetAssetsOptions, an as GrantPermissionContractMetadata, ah as GrantPermissionsOptions, ai as GrantPermissionsResult, a4 as IntentHistoryItem, a3 as IntentHistoryOptions, a5 as IntentHistoryResult, Z as IntentQuote, _ as IntentStatus, X as IntentTokenRequest, aj as ListSessionGrantsOptions, ak as ListSessionGrantsResult, L as LoginWithModalOptions, ax as OneAuthTelemetryAttributeValue, ay as OneAuthTelemetryAttributes, az as OneAuthTelemetryConfig, aA as OneAuthTelemetryEvent, aB as OneAuthTelemetryEventName, aC as OneAuthTelemetryFlow, aD as OneAuthTelemetryTraceContext, $ as OrchestratorStatus, t as PasskeyCredential, P as PasskeyProviderConfig, au as PrepareBatchIntentResponse, a1 as PrepareIntentResponse, at as PreparedBatchIntent, af as RequestConsentOptions, ag as RequestConsentResult, aq as SendBatchIntentOptions, ar as SendBatchIntentResult, Y as SendIntentOptions, am as SessionGrantChain, al as SessionGrantRecord, F as SignMessageOptions, G as SignMessageResult, J as SignTypedDataOptions, K as SignTypedDataResult, x as SignerType, p as SigningError, q as SigningErrorCode, m as SigningRequestOptions, s as SigningRequestStatus, n as SigningResult, D as SigningResultBase, o as SigningSuccess, ao as SmartSessionPolicy, av as SponsorshipCallbackConfig, S as SponsorshipConfig, aw as SponsorshipUrlConfig, aa as ThemeConfig, T as TransactionAction, V as TransactionDetails, Q as TransactionFees, U as UserPasskeysResponse, W as WebAuthnSignature, j as createCrossChainPermission } from './types-1BMD1PSH.js';
|
|
7
|
+
export { O as OneAuthProvider, a as OneAuthProviderOptions, c as createOneAuthProvider } from './provider-BgD9PeDX.js';
|
|
8
|
+
import { P as PasskeyWalletClientConfig, S as SendCallsParams } from './verify-CZe-m_Vf.js';
|
|
9
|
+
export { E as ETHEREUM_MESSAGE_PREFIX, T as TransactionCall, e as encodeWebAuthnSignature, h as hashCalls, a as hashMessage, v as verifyMessageHash } from './verify-CZe-m_Vf.js';
|
|
5
10
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
6
11
|
import * as React from 'react';
|
|
7
|
-
|
|
12
|
+
|
|
13
|
+
type DefinePermissionsConfig<TAbi extends Abi> = Permission<TAbi> & {
|
|
14
|
+
/** Optional human-readable name surfaced in the review UI. */
|
|
15
|
+
name?: string;
|
|
16
|
+
};
|
|
17
|
+
interface DefinedPermissions<TAbi extends Abi = Abi> {
|
|
18
|
+
/**
|
|
19
|
+
* v2 SmartSession permissions, ready to pass to
|
|
20
|
+
* `OneAuthClient.grantPermissions({ ...definePermissions(...) })`.
|
|
21
|
+
*
|
|
22
|
+
* Always a single-element array so the `...spread` pattern works cleanly
|
|
23
|
+
* with `grantPermissions`, which accepts `permissions: Permission[]`.
|
|
24
|
+
*
|
|
25
|
+
* Widened to `Permission<Abi>` (rather than `Permission<TAbi>`) so the
|
|
26
|
+
* spread composes with `GrantPermissionsOptions.permissions: Permission<Abi>[]`.
|
|
27
|
+
* The SDK's v2 `Permission<TAbi>` includes conditional `SpendingLimitField<TFn>` /
|
|
28
|
+
* `ValueLimitField<TFn>` types that break covariance over `TAbi`, so an inferred
|
|
29
|
+
* narrow `Permission<erc20Abi>` is no longer assignable to `Permission<Abi>`.
|
|
30
|
+
* We keep `TAbi` on the type parameter so `contracts[].abi` retains its
|
|
31
|
+
* narrow shape for the review UI.
|
|
32
|
+
*/
|
|
33
|
+
permissions: [Permission<Abi>];
|
|
34
|
+
/**
|
|
35
|
+
* Contract metadata for the permission review UI. The address and ABI
|
|
36
|
+
* here mirror the entry in `permissions[0]`; `name` is optional and
|
|
37
|
+
* purely cosmetic (it's never sent to a contract).
|
|
38
|
+
*/
|
|
39
|
+
contracts: Array<{
|
|
40
|
+
address: Address;
|
|
41
|
+
name?: string;
|
|
42
|
+
abi: TAbi;
|
|
43
|
+
}>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Build a v2 SmartSession `Permission` from an ABI + function map.
|
|
47
|
+
*
|
|
48
|
+
* The Rhinestone SDK derives function selectors and universal-action
|
|
49
|
+
* calldata offsets from the ABI internally, so app code no longer needs
|
|
50
|
+
* to spell out raw 4-byte selectors or parameter indices. The accepted
|
|
51
|
+
* shape is the SDK's own `Permission<TAbi>` plus an optional `name` for
|
|
52
|
+
* the review UI.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* const permissions = definePermissions({
|
|
56
|
+
* address: USDC,
|
|
57
|
+
* abi: erc20Abi,
|
|
58
|
+
* name: "USDC",
|
|
59
|
+
* functions: {
|
|
60
|
+
* transfer: {
|
|
61
|
+
* params: { to: { condition: "equal", value: RECIPIENT } },
|
|
62
|
+
* },
|
|
63
|
+
* },
|
|
64
|
+
* });
|
|
65
|
+
*
|
|
66
|
+
* await oneAuth.grantPermissions({ ...permissions, sessionKeyAddress });
|
|
67
|
+
*/
|
|
68
|
+
declare function definePermissions<const TAbi extends Abi>(config: DefinePermissionsConfig<TAbi>): DefinedPermissions<TAbi>;
|
|
8
69
|
|
|
9
70
|
/**
|
|
10
71
|
* viem LocalAccount adapter for 1auth passkey-controlled smart accounts.
|
|
@@ -18,7 +79,10 @@ export { getTokenAddress, getTokenDecimals } from '@rhinestone/sdk';
|
|
|
18
79
|
*/
|
|
19
80
|
|
|
20
81
|
type PasskeyAccount = LocalAccount<"1auth"> & {
|
|
21
|
-
username
|
|
82
|
+
/** Optional username hint retained for legacy integrations. */
|
|
83
|
+
username?: string;
|
|
84
|
+
/** Smart account address used as the canonical signer identity. */
|
|
85
|
+
accountAddress: Address;
|
|
22
86
|
};
|
|
23
87
|
/**
|
|
24
88
|
* Creates a viem `LocalAccount` that delegates signing to the 1auth passkey service.
|
|
@@ -34,9 +98,8 @@ type PasskeyAccount = LocalAccount<"1auth"> & {
|
|
|
34
98
|
*
|
|
35
99
|
* @param client - A configured `OneAuthClient` instance
|
|
36
100
|
* @param params.address - The EVM address of the user's smart account
|
|
37
|
-
* @param params.username -
|
|
38
|
-
*
|
|
39
|
-
* @returns A `PasskeyAccount` extending `LocalAccount<"1auth">` with a `username` field
|
|
101
|
+
* @param params.username - Optional 1auth username hint for older accounts
|
|
102
|
+
* @returns A `PasskeyAccount` extending `LocalAccount<"1auth">`
|
|
40
103
|
*
|
|
41
104
|
* @example
|
|
42
105
|
* ```typescript
|
|
@@ -47,7 +110,6 @@ type PasskeyAccount = LocalAccount<"1auth"> & {
|
|
|
47
110
|
* const client = new OneAuthClient({ clientId: "my-app" });
|
|
48
111
|
* const account = createPasskeyAccount(client, {
|
|
49
112
|
* address: "0xYourSmartAccountAddress",
|
|
50
|
-
* username: "alice",
|
|
51
113
|
* });
|
|
52
114
|
*
|
|
53
115
|
* const walletClient = createWalletClient({
|
|
@@ -61,82 +123,8 @@ type PasskeyAccount = LocalAccount<"1auth"> & {
|
|
|
61
123
|
*/
|
|
62
124
|
declare function createPasskeyAccount(client: OneAuthClient, params: {
|
|
63
125
|
address: Address;
|
|
64
|
-
username: string;
|
|
65
|
-
}): PasskeyAccount;
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Configuration for creating a passkey-enabled WalletClient
|
|
69
|
-
*/
|
|
70
|
-
interface PasskeyWalletClientConfig {
|
|
71
|
-
/** User's smart account address */
|
|
72
|
-
accountAddress: Address;
|
|
73
|
-
/** Username for the passkey provider (defaults to accountAddress) */
|
|
74
126
|
username?: string;
|
|
75
|
-
|
|
76
|
-
providerUrl?: string;
|
|
77
|
-
/** Client identifier for this application */
|
|
78
|
-
clientId: string;
|
|
79
|
-
/** Optional URL of the dialog UI */
|
|
80
|
-
dialogUrl?: string;
|
|
81
|
-
/** Chain configuration */
|
|
82
|
-
chain: Chain;
|
|
83
|
-
/** Transport (e.g., http(), webSocket()) */
|
|
84
|
-
transport: Transport;
|
|
85
|
-
/** Wait for a transaction hash before resolving send calls. */
|
|
86
|
-
waitForHash?: boolean;
|
|
87
|
-
/** Maximum time to wait for a transaction hash in ms. */
|
|
88
|
-
hashTimeoutMs?: number;
|
|
89
|
-
/** Poll interval for transaction hash in ms. */
|
|
90
|
-
hashIntervalMs?: number;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* A single call in a batch transaction
|
|
94
|
-
*/
|
|
95
|
-
interface TransactionCall {
|
|
96
|
-
/** Target contract address */
|
|
97
|
-
to: Address;
|
|
98
|
-
/** Calldata to send */
|
|
99
|
-
data?: Hex;
|
|
100
|
-
/** Value in wei to send */
|
|
101
|
-
value?: bigint;
|
|
102
|
-
/** Optional label for the transaction review UI (e.g., "Swap ETH for USDC") */
|
|
103
|
-
label?: string;
|
|
104
|
-
/** Optional sublabel for additional context (e.g., "1 ETH → 2,500 USDC") */
|
|
105
|
-
sublabel?: string;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Parameters for sendCalls (batched transactions)
|
|
109
|
-
*/
|
|
110
|
-
interface SendCallsParams {
|
|
111
|
-
/** Array of calls to execute */
|
|
112
|
-
calls: TransactionCall[];
|
|
113
|
-
/** Optional chain id override */
|
|
114
|
-
chainId?: number;
|
|
115
|
-
/** Optional token requests for orchestrator output (what tokens/amounts to deliver) */
|
|
116
|
-
tokenRequests?: {
|
|
117
|
-
token: string;
|
|
118
|
-
amount: bigint;
|
|
119
|
-
}[];
|
|
120
|
-
/** Constrain which tokens the orchestrator can use as input/payment */
|
|
121
|
-
sourceAssets?: string[];
|
|
122
|
-
/** Which chain to look for source assets on */
|
|
123
|
-
sourceChainId?: number;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
/**
|
|
127
|
-
* Encode a WebAuthn signature for ERC-1271 verification on-chain
|
|
128
|
-
*
|
|
129
|
-
* @param sig - The WebAuthn signature from the passkey
|
|
130
|
-
* @returns ABI-encoded signature bytes
|
|
131
|
-
*/
|
|
132
|
-
declare function encodeWebAuthnSignature(sig: WebAuthnSignature): Hex;
|
|
133
|
-
/**
|
|
134
|
-
* Hash an array of transaction calls for signing
|
|
135
|
-
*
|
|
136
|
-
* @param calls - Array of transaction calls
|
|
137
|
-
* @returns keccak256 hash of the encoded calls
|
|
138
|
-
*/
|
|
139
|
-
declare function hashCalls(calls: TransactionCall[]): Hex;
|
|
127
|
+
}): PasskeyAccount;
|
|
140
128
|
|
|
141
129
|
/**
|
|
142
130
|
* @file viem WalletClient factory backed by passkey signing.
|
|
@@ -196,6 +184,13 @@ type PasskeyWalletClient = WalletClient & {
|
|
|
196
184
|
*/
|
|
197
185
|
declare function createPasskeyWalletClient(config: PasskeyWalletClientConfig): PasskeyWalletClient;
|
|
198
186
|
|
|
187
|
+
/** Identity used to sign a queued batch. Account address is the canonical path. */
|
|
188
|
+
interface BatchQueueIdentity {
|
|
189
|
+
/** Optional username hint for legacy accounts. */
|
|
190
|
+
username?: string;
|
|
191
|
+
/** Smart account address of the signer. */
|
|
192
|
+
accountAddress?: string;
|
|
193
|
+
}
|
|
199
194
|
/**
|
|
200
195
|
* A batched call in the queue
|
|
201
196
|
*/
|
|
@@ -228,7 +223,7 @@ interface BatchQueueContextValue {
|
|
|
228
223
|
/** Clear all calls from the batch */
|
|
229
224
|
clearBatch: () => void;
|
|
230
225
|
/** Sign and execute all batched calls */
|
|
231
|
-
signAll: (
|
|
226
|
+
signAll: (identity?: string | BatchQueueIdentity) => Promise<SendIntentResult>;
|
|
232
227
|
/** Whether the widget is expanded */
|
|
233
228
|
isExpanded: boolean;
|
|
234
229
|
/** Set widget expanded state */
|
|
@@ -245,15 +240,17 @@ declare function useBatchQueue(): BatchQueueContextValue;
|
|
|
245
240
|
interface BatchQueueProviderProps {
|
|
246
241
|
/** The OneAuthClient instance */
|
|
247
242
|
client: OneAuthClient;
|
|
248
|
-
/** Optional username for localStorage persistence
|
|
243
|
+
/** Optional username for legacy localStorage persistence and account lookup. */
|
|
249
244
|
username?: string;
|
|
245
|
+
/** Optional account address for address-only sessions and persistence. */
|
|
246
|
+
accountAddress?: string;
|
|
250
247
|
/** Children to render */
|
|
251
248
|
children: React.ReactNode;
|
|
252
249
|
}
|
|
253
250
|
/**
|
|
254
251
|
* Provider component for the batch queue
|
|
255
252
|
*/
|
|
256
|
-
declare function BatchQueueProvider({ client, username, children, }: BatchQueueProviderProps): react_jsx_runtime.JSX.Element;
|
|
253
|
+
declare function BatchQueueProvider({ client, username, accountAddress, children, }: BatchQueueProviderProps): react_jsx_runtime.JSX.Element;
|
|
257
254
|
|
|
258
255
|
/**
|
|
259
256
|
* @file Floating UI widget for the 1auth batch transaction queue.
|
|
@@ -268,7 +265,7 @@ declare function BatchQueueProvider({ client, username, children, }: BatchQueueP
|
|
|
268
265
|
* consumer's bundler.
|
|
269
266
|
*/
|
|
270
267
|
interface BatchQueueWidgetProps {
|
|
271
|
-
/** Callback when "Sign All" is clicked
|
|
268
|
+
/** Callback when "Sign All" is clicked. */
|
|
272
269
|
onSignAll: () => void;
|
|
273
270
|
}
|
|
274
271
|
/**
|
|
@@ -287,18 +284,19 @@ interface BatchQueueWidgetProps {
|
|
|
287
284
|
* Must be rendered inside a `BatchQueueProvider`.
|
|
288
285
|
*
|
|
289
286
|
* @param props.onSignAll - Called when the user clicks "Sign All". The
|
|
290
|
-
* implementor is responsible for resolving the
|
|
291
|
-
* `useBatchQueue().signAll(username)`.
|
|
287
|
+
* implementor is responsible for resolving the account identity and passing
|
|
288
|
+
* it to `useBatchQueue().signAll({ accountAddress, username })`.
|
|
292
289
|
*/
|
|
293
290
|
declare function BatchQueueWidget({ onSignAll }: BatchQueueWidgetProps): react_jsx_runtime.JSX.Element | null;
|
|
294
291
|
|
|
295
292
|
/**
|
|
296
293
|
* @file Chain and token registry for the 1auth SDK.
|
|
297
294
|
*
|
|
298
|
-
* Wraps `@rhinestone/
|
|
299
|
-
* definitions to expose a filtered, testnet-aware registry.
|
|
300
|
-
* look up supported chains and tokens, resolve token addresses
|
|
301
|
-
* retrieve chain metadata such as explorer URLs and default RPC
|
|
295
|
+
* Wraps `@rhinestone/shared-configs` chain/token data and combines it with
|
|
296
|
+
* viem's chain definitions to expose a filtered, testnet-aware registry.
|
|
297
|
+
* Consumers can look up supported chains and tokens, resolve token addresses
|
|
298
|
+
* by symbol, and retrieve chain metadata such as explorer URLs and default RPC
|
|
299
|
+
* endpoints.
|
|
302
300
|
*
|
|
303
301
|
* Testnet inclusion is controlled by the `includeTestnets` option on each
|
|
304
302
|
* function or, as a project-wide default, by the environment variables
|
|
@@ -309,8 +307,6 @@ type TokenConfig = {
|
|
|
309
307
|
symbol: string;
|
|
310
308
|
address: Address;
|
|
311
309
|
decimals: number;
|
|
312
|
-
supportsMultichain?: boolean;
|
|
313
|
-
[key: string]: unknown;
|
|
314
310
|
};
|
|
315
311
|
type ChainFilterOptions = {
|
|
316
312
|
includeTestnets?: boolean;
|
|
@@ -327,55 +323,11 @@ declare function getChainExplorerUrl(chainId: number): string | undefined;
|
|
|
327
323
|
declare function getChainRpcUrl(chainId: number): string | undefined;
|
|
328
324
|
declare function getSupportedTokens(chainId: number): TokenConfig[];
|
|
329
325
|
declare function getSupportedTokenSymbols(chainId: number): string[];
|
|
326
|
+
declare function getTokenAddress(symbolOrAddress: string, chainId: number): Address;
|
|
327
|
+
declare function getTokenDecimals(symbolOrAddress: string, chainId: number): number;
|
|
330
328
|
declare function resolveTokenAddress(token: string, chainId: number): Address;
|
|
331
329
|
declare function isTestnet(chainId: number): boolean;
|
|
332
330
|
declare function getTokenSymbol(tokenAddress: Address, chainId: number): string;
|
|
333
331
|
declare function isTokenAddressSupported(tokenAddress: Address, chainId: number): boolean;
|
|
334
332
|
|
|
335
|
-
|
|
336
|
-
* The EIP-191 prefix used for personal message signing.
|
|
337
|
-
* This is the standard Ethereum message prefix for `personal_sign`.
|
|
338
|
-
*/
|
|
339
|
-
declare const ETHEREUM_MESSAGE_PREFIX = "\u0019Ethereum Signed Message:\n";
|
|
340
|
-
/**
|
|
341
|
-
* Hash a message with the EIP-191 Ethereum prefix.
|
|
342
|
-
*
|
|
343
|
-
* This is the same hashing function used by the passkey sign dialog.
|
|
344
|
-
* Use this to verify that the `signedHash` returned from `signMessage()`
|
|
345
|
-
* matches your original message.
|
|
346
|
-
*
|
|
347
|
-
* Format: keccak256("\x19Ethereum Signed Message:\n" + len + message)
|
|
348
|
-
*
|
|
349
|
-
* @example
|
|
350
|
-
* ```typescript
|
|
351
|
-
* const message = "Sign in to MyApp\nTimestamp: 1234567890";
|
|
352
|
-
* const result = await client.signMessage({ username: 'alice', message });
|
|
353
|
-
*
|
|
354
|
-
* // Verify the hash matches
|
|
355
|
-
* const expectedHash = hashMessage(message);
|
|
356
|
-
* if (result.signedHash === expectedHash) {
|
|
357
|
-
* console.log('Hash matches - signature is for this message');
|
|
358
|
-
* }
|
|
359
|
-
* ```
|
|
360
|
-
*/
|
|
361
|
-
declare function hashMessage(message: string): `0x${string}`;
|
|
362
|
-
/**
|
|
363
|
-
* Verify that a signedHash matches the expected message.
|
|
364
|
-
*
|
|
365
|
-
* This is a convenience wrapper around `hashMessage()` that returns
|
|
366
|
-
* a boolean. For full cryptographic verification of the P256 signature,
|
|
367
|
-
* use on-chain verification via the WebAuthn.sol contract.
|
|
368
|
-
*
|
|
369
|
-
* @example
|
|
370
|
-
* ```typescript
|
|
371
|
-
* const result = await client.signMessage({ username: 'alice', message });
|
|
372
|
-
*
|
|
373
|
-
* if (result.success && verifyMessageHash(message, result.signedHash)) {
|
|
374
|
-
* // The signature is for this exact message
|
|
375
|
-
* // For full verification, verify the P256 signature on-chain or server-side
|
|
376
|
-
* }
|
|
377
|
-
* ```
|
|
378
|
-
*/
|
|
379
|
-
declare function verifyMessageHash(message: string, signedHash: string | undefined): boolean;
|
|
380
|
-
|
|
381
|
-
export { type BatchQueueContextValue, BatchQueueProvider, type BatchQueueProviderProps, BatchQueueWidget, type BatchQueueWidgetProps, type BatchedCall, type ChainFilterOptions, ETHEREUM_MESSAGE_PREFIX, IntentCall, OneAuthClient, type PasskeyAccount, type PasskeyWalletClient, type PasskeyWalletClientConfig, type SendCallsParams, SendIntentResult, type TokenConfig, type TransactionCall, WebAuthnSignature, createPasskeyAccount, createPasskeyWalletClient, encodeWebAuthnSignature, getAllSupportedChainsAndTokens, getChainById, getChainExplorerUrl, getChainName, getChainRpcUrl, getSupportedChainIds, getSupportedChains, getSupportedTokenSymbols, getSupportedTokens, getTokenSymbol, hashCalls, hashMessage, isTestnet, isTokenAddressSupported, resolveTokenAddress, useBatchQueue, verifyMessageHash };
|
|
333
|
+
export { type BatchQueueContextValue, type BatchQueueIdentity, BatchQueueProvider, type BatchQueueProviderProps, BatchQueueWidget, type BatchQueueWidgetProps, type BatchedCall, type ChainFilterOptions, type DefinePermissionsConfig, type DefinedPermissions, IntentCall, OneAuthClient, type PasskeyAccount, type PasskeyWalletClient, PasskeyWalletClientConfig, SendCallsParams, SendIntentResult, type TokenConfig, createPasskeyAccount, createPasskeyWalletClient, definePermissions, getAllSupportedChainsAndTokens, getChainById, getChainExplorerUrl, getChainName, getChainRpcUrl, getSupportedChainIds, getSupportedChains, getSupportedTokenSymbols, getSupportedTokens, getTokenAddress, getTokenDecimals, getTokenSymbol, isTestnet, isTokenAddressSupported, resolveTokenAddress, useBatchQueue };
|