@otim/sdk-core 0.0.10 → 0.0.12
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/dist/abi-C34qVuOe.d.cts +339 -0
- package/dist/abi-C34qVuOe.d.cts.map +1 -0
- package/dist/abi-DJLWbdqc.d.mts +339 -0
- package/dist/abi-DJLWbdqc.d.mts.map +1 -0
- package/dist/account/index.d.cts +5 -0
- package/dist/account/index.d.mts +5 -0
- package/dist/account/index.mjs +3 -0
- package/dist/account-DTvmNvta.mjs +26 -0
- package/dist/account-DTvmNvta.mjs.map +1 -0
- package/dist/authorization-BnF84ABo.d.cts +210 -0
- package/dist/authorization-BnF84ABo.d.cts.map +1 -0
- package/dist/authorization-C5pDhI13.d.mts +210 -0
- package/dist/authorization-C5pDhI13.d.mts.map +1 -0
- package/dist/clients/index.d.cts +7 -0
- package/dist/clients/index.d.mts +7 -0
- package/dist/clients/index.mjs +5 -0
- package/dist/clients-CXg-xZcK.mjs +243 -0
- package/dist/clients-CXg-xZcK.mjs.map +1 -0
- package/dist/config/index.d.cts +3 -0
- package/dist/config/index.d.mts +3 -0
- package/dist/config/index.mjs +3 -0
- package/dist/config-C6ygfZaM.mjs +67 -0
- package/dist/config-C6ygfZaM.mjs.map +1 -0
- package/dist/context/index.d.cts +2 -0
- package/dist/context/index.d.mts +2 -0
- package/dist/context/index.mjs +3 -0
- package/dist/context-GO0kqi9m.mjs +20 -0
- package/dist/context-GO0kqi9m.mjs.map +1 -0
- package/dist/index-BPJie3fa.d.cts +104 -0
- package/dist/index-BPJie3fa.d.cts.map +1 -0
- package/dist/index-Bii-p3Pv.d.mts +20 -0
- package/dist/index-Bii-p3Pv.d.mts.map +1 -0
- package/dist/index-BnmB_Auh.d.cts +27 -0
- package/dist/index-BnmB_Auh.d.cts.map +1 -0
- package/dist/index-CChHQZDA.d.mts +48 -0
- package/dist/index-CChHQZDA.d.mts.map +1 -0
- package/dist/index-CUbzbOtB.d.cts +20 -0
- package/dist/index-CUbzbOtB.d.cts.map +1 -0
- package/dist/index-D6ncjdSF.d.mts +420 -0
- package/dist/index-D6ncjdSF.d.mts.map +1 -0
- package/dist/index-DcGsW5Uz.d.cts +48 -0
- package/dist/index-DcGsW5Uz.d.cts.map +1 -0
- package/dist/index-DgzYsb1k.d.mts +104 -0
- package/dist/index-DgzYsb1k.d.mts.map +1 -0
- package/dist/index-_2bU9FSx.d.cts +420 -0
- package/dist/index-_2bU9FSx.d.cts.map +1 -0
- package/dist/index-bgGeSOyj.d.mts +27 -0
- package/dist/index-bgGeSOyj.d.mts.map +1 -0
- package/dist/index.d.cts +10 -0
- package/dist/index.d.mts +10 -0
- package/dist/index.mjs +8 -0
- package/dist/rpc-BWDaWzVn.d.mts +6885 -0
- package/dist/rpc-BWDaWzVn.d.mts.map +1 -0
- package/dist/rpc-C-51kawS.d.cts +6885 -0
- package/dist/rpc-C-51kawS.d.cts.map +1 -0
- package/dist/signing/index.d.cts +5 -0
- package/dist/signing/index.d.mts +5 -0
- package/dist/signing/index.mjs +3 -0
- package/dist/signing-BGCR53df.mjs +1049 -0
- package/dist/signing-BGCR53df.mjs.map +1 -0
- package/dist/utils/index.d.cts +4 -0
- package/dist/utils/index.d.mts +4 -0
- package/dist/utils/index.mjs +3 -0
- package/dist/vrs-DZWmrbGk.mjs +81 -0
- package/dist/vrs-DZWmrbGk.mjs.map +1 -0
- package/dist/vrs-DlTE_vd4.d.mts +14 -0
- package/dist/vrs-DlTE_vd4.d.mts.map +1 -0
- package/dist/vrs-w6WBVdSJ.d.cts +14 -0
- package/dist/vrs-w6WBVdSJ.d.cts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
import { i as AbiParameter } from "./abi-C34qVuOe.cjs";
|
|
2
|
+
import { a as Chain, c as RpcSchema, i as WalletActions, l as WalletRpcSchema, n as Client, o as Transport, r as PublicActions, s as PublicRpcSchema, t as Account } from "./rpc-C-51kawS.cjs";
|
|
3
|
+
import { D as Prettify } from "./authorization-BnF84ABo.cjs";
|
|
4
|
+
import { PaymentResponseWithActionNames } from "@otim/utils/payments";
|
|
5
|
+
import { Address, HexString } from "@otim/utils/schemas";
|
|
6
|
+
import { EthereumWalletInterface, WalletType } from "@turnkey/wallet-stamper";
|
|
7
|
+
|
|
8
|
+
//#region ../../node_modules/.pnpm/viem@2.39.3_bufferutil@4.0.9_typescript@5.9.3_utf-8-validate@5.0.10_zod@4.3.6/node_modules/viem/_types/clients/createPublicClient.d.ts
|
|
9
|
+
|
|
10
|
+
type PublicClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | undefined = undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Client<transport, chain, accountOrAddress, rpcSchema extends RpcSchema ? [...PublicRpcSchema, ...rpcSchema] : PublicRpcSchema, PublicActions<transport, chain>>>;
|
|
11
|
+
//#endregion
|
|
12
|
+
//#region ../../node_modules/.pnpm/viem@2.39.3_bufferutil@4.0.9_typescript@5.9.3_utf-8-validate@5.0.10_zod@4.3.6/node_modules/viem/_types/clients/createWalletClient.d.ts
|
|
13
|
+
type WalletClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Client<transport, chain, account, rpcSchema extends RpcSchema ? [...WalletRpcSchema, ...rpcSchema] : WalletRpcSchema, WalletActions<chain, account>>>;
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/signing/types.d.ts
|
|
16
|
+
/**
|
|
17
|
+
* Cryptographic signature components from Turnkey signing operations.
|
|
18
|
+
*/
|
|
19
|
+
interface Signature {
|
|
20
|
+
r: string;
|
|
21
|
+
s: string;
|
|
22
|
+
v: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* EIP-2098 formatted signature for on-chain verification.
|
|
26
|
+
*/
|
|
27
|
+
interface FormattedSignature {
|
|
28
|
+
yParity: number;
|
|
29
|
+
r: `0x${string}`;
|
|
30
|
+
s: `0x${string}`;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Configuration for polling Turnkey activity status.
|
|
34
|
+
*/
|
|
35
|
+
interface ActivityPollingConfig {
|
|
36
|
+
/** Maximum number of polling attempts before timeout. Defaults to 30. */
|
|
37
|
+
maxAttempts?: number;
|
|
38
|
+
/** Interval between polling attempts in milliseconds. Defaults to 1000. */
|
|
39
|
+
pollInterval?: number;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Common interface for all signing service implementations.
|
|
43
|
+
*
|
|
44
|
+
* Each signing strategy (wallet client, passkey, API key, server wallet)
|
|
45
|
+
* implements this interface to provide a consistent signing contract.
|
|
46
|
+
*/
|
|
47
|
+
interface ISigningService {
|
|
48
|
+
/**
|
|
49
|
+
* Signs multiple payloads using the configured authentication method.
|
|
50
|
+
*
|
|
51
|
+
* @param payloads - Array of hex-encoded payloads to sign
|
|
52
|
+
* @param ephemeralSubOrgId - The ephemeral sub-organization ID from the build response
|
|
53
|
+
* @param ephemeralWalletAddress - The ephemeral wallet address from the build response
|
|
54
|
+
* @returns Promise resolving to array of signatures with r, s, v components
|
|
55
|
+
*/
|
|
56
|
+
signPayloads(payloads: `0x${string}`[], ephemeralSubOrgId: string, ephemeralWalletAddress: `0x${string}`): Promise<Signature[]>;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Parameters for signing with server-side wallet (EthereumWalletInterface).
|
|
60
|
+
*/
|
|
61
|
+
interface ServerWalletActivationParameters {
|
|
62
|
+
buildResponse: PaymentResponseWithActionNames;
|
|
63
|
+
wallet: EthereumWalletInterface;
|
|
64
|
+
publicClient: PublicClient;
|
|
65
|
+
delegateAddressMap: Map<number, Address>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Parameters for signing with API key credentials (server-side automation).
|
|
69
|
+
*/
|
|
70
|
+
interface ApiKeyClientActivationParameters {
|
|
71
|
+
buildResponse: PaymentResponseWithActionNames;
|
|
72
|
+
publicKey: string;
|
|
73
|
+
privateKey: string;
|
|
74
|
+
publicClient: PublicClient;
|
|
75
|
+
delegateAddressMap: Map<number, Address>;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* A signed instruction ready for on-chain execution.
|
|
79
|
+
*/
|
|
80
|
+
interface SignedInstruction {
|
|
81
|
+
actionName?: string;
|
|
82
|
+
chainId: number;
|
|
83
|
+
address: Address;
|
|
84
|
+
salt: HexString;
|
|
85
|
+
maxExecutions: HexString;
|
|
86
|
+
action: Address;
|
|
87
|
+
arguments: HexString;
|
|
88
|
+
activationSignature: FormattedSignature;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Configuration for the UnifiedPaymentSigner.
|
|
92
|
+
*/
|
|
93
|
+
interface SignerConfig {
|
|
94
|
+
buildResponse: PaymentResponseWithActionNames;
|
|
95
|
+
signingService: ISigningService;
|
|
96
|
+
publicClient: PublicClient;
|
|
97
|
+
delegateAddressMap: Map<number, Address>;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Result of the signing operation.
|
|
101
|
+
*/
|
|
102
|
+
interface SignatureResult {
|
|
103
|
+
signedAuthorization: Address;
|
|
104
|
+
completionInstructions: SignedInstruction[];
|
|
105
|
+
instructions: SignedInstruction[];
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Internal result from digest computation.
|
|
109
|
+
*/
|
|
110
|
+
interface DigestComputationResult {
|
|
111
|
+
payloads: `0x${string}`[];
|
|
112
|
+
nonce: number;
|
|
113
|
+
authDelegateAddress: Address;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Result of a successful payment request signing operation.
|
|
117
|
+
*/
|
|
118
|
+
interface ActivationResult {
|
|
119
|
+
/** RLP-encoded EIP-7702 authorization signature */
|
|
120
|
+
signedAuthorization: Address;
|
|
121
|
+
/** Signed instructions for the payment */
|
|
122
|
+
instructions: SignedInstruction[];
|
|
123
|
+
/** Signed completion instructions for the payment */
|
|
124
|
+
completionInstructions: SignedInstruction[];
|
|
125
|
+
}
|
|
126
|
+
//#endregion
|
|
127
|
+
//#region src/signing/services/api-key-client.d.ts
|
|
128
|
+
/**
|
|
129
|
+
* Signing service using Turnkey API key credentials.
|
|
130
|
+
*
|
|
131
|
+
* This strategy enables federated signing using API key authentication,
|
|
132
|
+
* following the same pattern as PasskeyClientSigningService but suitable
|
|
133
|
+
* for server-side or automated workflows.
|
|
134
|
+
*
|
|
135
|
+
* @implements {ISigningService}
|
|
136
|
+
*/
|
|
137
|
+
declare class ApiKeyClientSigningService implements ISigningService {
|
|
138
|
+
private readonly apiClient;
|
|
139
|
+
private readonly publicKey;
|
|
140
|
+
private readonly privateKey;
|
|
141
|
+
constructor(publicKey: string, privateKey: string);
|
|
142
|
+
/**
|
|
143
|
+
* Creates a stamp for any request payload.
|
|
144
|
+
* This is used for both signing requests and polling operations.
|
|
145
|
+
*/
|
|
146
|
+
private createStamp;
|
|
147
|
+
/**
|
|
148
|
+
* Signs multiple payloads using the API key stamping flow.
|
|
149
|
+
*
|
|
150
|
+
* This follows the federated access pattern where:
|
|
151
|
+
* 1. We create a request payload for Turnkey's sign_raw_payloads API
|
|
152
|
+
* 2. We sign the request with our API key to create a stamp
|
|
153
|
+
* 3. We submit the stamped request to Turnkey's API
|
|
154
|
+
*
|
|
155
|
+
* @param payloads - Array of hex-encoded payloads to sign
|
|
156
|
+
* @param ephemeralSubOrgId - Ephemeral sub org ID (from buildResponse)
|
|
157
|
+
* @param ephemeralWalletAddress - Ephemeral wallet address (from buildResponse)
|
|
158
|
+
* @returns Array of signatures with r, s, v components
|
|
159
|
+
*/
|
|
160
|
+
signPayloads(payloads: `0x${string}`[], ephemeralSubOrgId: string, ephemeralWalletAddress: `0x${string}`): Promise<Signature[]>;
|
|
161
|
+
/**
|
|
162
|
+
* Builds the request payload for Turnkey's sign_raw_payloads API.
|
|
163
|
+
* Uses the ephemeral wallet's sub org and address for signing the payloads.
|
|
164
|
+
*/
|
|
165
|
+
private buildSignRawPayloadsRequest;
|
|
166
|
+
/**
|
|
167
|
+
* Stamps the request payload using API key credentials (EIP-191 signing).
|
|
168
|
+
* Delegates to createStamp for consistency.
|
|
169
|
+
*/
|
|
170
|
+
private stampRequest;
|
|
171
|
+
}
|
|
172
|
+
//#endregion
|
|
173
|
+
//#region src/signing/services/server-wallet.d.ts
|
|
174
|
+
/**
|
|
175
|
+
* Signing service using an Ethereum wallet interface.
|
|
176
|
+
*
|
|
177
|
+
* This strategy enables signing using any wallet that implements the
|
|
178
|
+
* EthereumWalletInterface. It uses the Turnkey WalletStamper to authenticate
|
|
179
|
+
* requests with the wallet's signature.
|
|
180
|
+
*
|
|
181
|
+
* @implements {ISigningService}
|
|
182
|
+
*/
|
|
183
|
+
declare class ServerWalletSigningService implements ISigningService {
|
|
184
|
+
private readonly apiClient;
|
|
185
|
+
private readonly walletStamper;
|
|
186
|
+
constructor(wallet: EthereumWalletInterface);
|
|
187
|
+
/**
|
|
188
|
+
* Creates a ServerWalletSigningService from a Viem WalletClient.
|
|
189
|
+
*
|
|
190
|
+
* This is a convenience factory method that handles the adapter creation
|
|
191
|
+
* internally, allowing you to pass a Viem WalletClient directly.
|
|
192
|
+
*
|
|
193
|
+
* @param walletClient - Viem WalletClient with an account
|
|
194
|
+
* @returns New ServerWalletSigningService instance
|
|
195
|
+
*/
|
|
196
|
+
static fromViemWallet(walletClient: WalletClient): ServerWalletSigningService;
|
|
197
|
+
/**
|
|
198
|
+
* Signs multiple payloads using the wallet stamping flow.
|
|
199
|
+
*
|
|
200
|
+
* This follows the federated access pattern where:
|
|
201
|
+
* 1. We create a request payload for Turnkey's sign_raw_payloads API
|
|
202
|
+
* 2. We sign the request with the wallet to create a stamp
|
|
203
|
+
* 3. We submit the stamped request to Turnkey's API
|
|
204
|
+
*
|
|
205
|
+
* @param payloads - Array of hex-encoded payloads to sign
|
|
206
|
+
* @param ephemeralSubOrgId - Ephemeral sub org ID (from buildResponse)
|
|
207
|
+
* @param ephemeralWalletAddress - Ephemeral wallet address (from buildResponse)
|
|
208
|
+
* @returns Array of signatures with r, s, v components
|
|
209
|
+
*/
|
|
210
|
+
signPayloads(payloads: `0x${string}`[], ephemeralSubOrgId: string, ephemeralWalletAddress: `0x${string}`): Promise<Signature[]>;
|
|
211
|
+
/**
|
|
212
|
+
* Builds the request payload for Turnkey's sign_raw_payloads API.
|
|
213
|
+
* Uses the ephemeral wallet's sub org and address for signing the payloads.
|
|
214
|
+
*/
|
|
215
|
+
private buildSignRawPayloadsRequest;
|
|
216
|
+
/**
|
|
217
|
+
* Stamps the request payload using the wallet.
|
|
218
|
+
*
|
|
219
|
+
* This creates an X-Stamp header that authenticates the request to Turnkey's API.
|
|
220
|
+
*
|
|
221
|
+
* The WalletStamper handles:
|
|
222
|
+
* 1. Signing the request payload string with the wallet's private key
|
|
223
|
+
* 2. Recovering the public key from the signature
|
|
224
|
+
* 3. Creating a stamp object with the appropriate scheme (EVM or Solana)
|
|
225
|
+
* 4. Encoding the stamp for the X-Stamp header
|
|
226
|
+
*/
|
|
227
|
+
private stampRequest;
|
|
228
|
+
}
|
|
229
|
+
//#endregion
|
|
230
|
+
//#region src/signing/unified-payment-signer.d.ts
|
|
231
|
+
/**
|
|
232
|
+
* Orchestrates EIP-7702 authorization and instruction signing for payment requests.
|
|
233
|
+
*
|
|
234
|
+
* This class coordinates the complete signing workflow:
|
|
235
|
+
* 1. Computes digests for authorization and all instructions
|
|
236
|
+
* 2. Batches all payloads for efficient signing via the signing service
|
|
237
|
+
* 3. Formats signatures for on-chain verification
|
|
238
|
+
*
|
|
239
|
+
* The signer is agnostic to the authentication method - it delegates actual
|
|
240
|
+
* signing to the provided {@link ISigningService} implementation.
|
|
241
|
+
*/
|
|
242
|
+
declare class UnifiedPaymentSigner {
|
|
243
|
+
private readonly config;
|
|
244
|
+
private readonly authDigestComputer;
|
|
245
|
+
private readonly instructionDigestComputer;
|
|
246
|
+
private readonly signatureFormatter;
|
|
247
|
+
private readonly signingService;
|
|
248
|
+
constructor(config: SignerConfig);
|
|
249
|
+
/**
|
|
250
|
+
* Signs all components of a payment request.
|
|
251
|
+
*
|
|
252
|
+
* @returns The signed authorization and all signed instructions
|
|
253
|
+
*/
|
|
254
|
+
signAll(): Promise<SignatureResult>;
|
|
255
|
+
private computeAllDigests;
|
|
256
|
+
private formatAllSignatures;
|
|
257
|
+
private validateDelegateAddresses;
|
|
258
|
+
private validateSignatureCount;
|
|
259
|
+
private extractDelegateAddress;
|
|
260
|
+
private getDelegateAddressForChain;
|
|
261
|
+
private computeAuthorizationDigest;
|
|
262
|
+
private computeInstructionDigests;
|
|
263
|
+
private formatInstructions;
|
|
264
|
+
}
|
|
265
|
+
//#endregion
|
|
266
|
+
//#region src/signing/utils/authorization-digest.d.ts
|
|
267
|
+
interface AuthorizationDigestResult {
|
|
268
|
+
digest: HexString;
|
|
269
|
+
nonce: number;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Computes EIP-7702 authorization digests for payment signing.
|
|
273
|
+
*
|
|
274
|
+
* This class handles the computation of authorization hashes that are signed
|
|
275
|
+
* to delegate control to the Otim delegate contract.
|
|
276
|
+
*/
|
|
277
|
+
declare class AuthorizationDigestComputer {
|
|
278
|
+
/**
|
|
279
|
+
* Computes the authorization digest for an ephemeral wallet.
|
|
280
|
+
*
|
|
281
|
+
* @param ephemeralWalletAddress - The ephemeral wallet address
|
|
282
|
+
* @param delegateAddress - The delegate contract address
|
|
283
|
+
* @param publicClient - Viem public client for blockchain queries
|
|
284
|
+
* @returns The digest hash and current nonce
|
|
285
|
+
*/
|
|
286
|
+
compute(ephemeralWalletAddress: Address, delegateAddress: Address, publicClient: PublicClient): Promise<AuthorizationDigestResult>;
|
|
287
|
+
private fetchNonce;
|
|
288
|
+
}
|
|
289
|
+
//#endregion
|
|
290
|
+
//#region src/signing/utils/instruction-digest.d.ts
|
|
291
|
+
interface InstructionTypeDefinition {
|
|
292
|
+
abi: readonly AbiParameter[];
|
|
293
|
+
eip712Types: {
|
|
294
|
+
types: {
|
|
295
|
+
[key: string]: ReadonlyArray<{
|
|
296
|
+
name: string;
|
|
297
|
+
type: string;
|
|
298
|
+
}>;
|
|
299
|
+
Instruction: ReadonlyArray<{
|
|
300
|
+
name: string;
|
|
301
|
+
type: string;
|
|
302
|
+
}>;
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
interface InstructionRegistry {
|
|
307
|
+
get(actionName: string): InstructionTypeDefinition;
|
|
308
|
+
}
|
|
309
|
+
interface UnsignedInstruction$1 {
|
|
310
|
+
chainId: number;
|
|
311
|
+
salt: `0x${string}`;
|
|
312
|
+
maxExecutions: `0x${string}`;
|
|
313
|
+
action: `0x${string}`;
|
|
314
|
+
arguments: `0x${string}`;
|
|
315
|
+
actionName?: string;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Computes EIP-712 typed data digests for instruction signing.
|
|
319
|
+
*
|
|
320
|
+
* This class handles the computation of instruction hashes following
|
|
321
|
+
* the EIP-712 standard for structured data signing.
|
|
322
|
+
*/
|
|
323
|
+
declare class InstructionDigestComputer {
|
|
324
|
+
private readonly instructionRegistry;
|
|
325
|
+
constructor(instructionRegistry: InstructionRegistry);
|
|
326
|
+
/**
|
|
327
|
+
* Computes the EIP-712 digest for an instruction.
|
|
328
|
+
*
|
|
329
|
+
* @param instruction - The unsigned instruction to compute digest for
|
|
330
|
+
* @param delegateAddress - The delegate contract address (verifying contract)
|
|
331
|
+
* @returns The EIP-712 digest hash
|
|
332
|
+
*/
|
|
333
|
+
compute(instruction: UnsignedInstruction$1, delegateAddress: `0x${string}`): Promise<`0x${string}`>;
|
|
334
|
+
private validateInstruction;
|
|
335
|
+
private decodeInstruction;
|
|
336
|
+
private createDomain;
|
|
337
|
+
private extractActionFieldName;
|
|
338
|
+
}
|
|
339
|
+
//#endregion
|
|
340
|
+
//#region src/signing/utils/signature-formatter.d.ts
|
|
341
|
+
/**
|
|
342
|
+
* Creates an RLP-encoded authorization for EIP-7702 delegation.
|
|
343
|
+
*
|
|
344
|
+
* @param chainId - The chain ID for the authorization
|
|
345
|
+
* @param delegateAddress - The delegate contract address
|
|
346
|
+
* @param nonce - The account nonce
|
|
347
|
+
* @param yParity - The signature y-parity (0 or 1)
|
|
348
|
+
* @param r - The signature r component
|
|
349
|
+
* @param s - The signature s component
|
|
350
|
+
* @returns RLP-encoded authorization as hex string
|
|
351
|
+
*/
|
|
352
|
+
declare const createRlpEncodedAuthorization: (chainId: number, delegateAddress: string, nonce: number, yParity: number, r: `0x${string}`, s: `0x${string}`) => `0x${string}`;
|
|
353
|
+
interface UnsignedInstruction {
|
|
354
|
+
actionName?: string;
|
|
355
|
+
chainId: number;
|
|
356
|
+
salt: HexString;
|
|
357
|
+
maxExecutions: HexString;
|
|
358
|
+
action: Address;
|
|
359
|
+
arguments: HexString;
|
|
360
|
+
}
|
|
361
|
+
interface FormattedInstruction {
|
|
362
|
+
actionName?: string;
|
|
363
|
+
address: Address;
|
|
364
|
+
chainId: number;
|
|
365
|
+
salt: HexString;
|
|
366
|
+
maxExecutions: HexString;
|
|
367
|
+
action: Address;
|
|
368
|
+
arguments: HexString;
|
|
369
|
+
activationSignature: FormattedSignature;
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Formats signatures for on-chain verification.
|
|
373
|
+
*
|
|
374
|
+
* This class handles the conversion of raw signatures to formats
|
|
375
|
+
* required for EIP-7702 authorization and instruction activation.
|
|
376
|
+
*/
|
|
377
|
+
declare class SignatureFormatter {
|
|
378
|
+
/**
|
|
379
|
+
* Formats an authorization signature as RLP-encoded data.
|
|
380
|
+
*
|
|
381
|
+
* @param signature - The raw signature
|
|
382
|
+
* @param nonce - The account nonce
|
|
383
|
+
* @param delegateAddress - The delegate contract address
|
|
384
|
+
* @returns RLP-encoded authorization
|
|
385
|
+
*/
|
|
386
|
+
formatAuthorization(signature: Signature, nonce: number, delegateAddress: `0x${string}`): `0x${string}`;
|
|
387
|
+
/**
|
|
388
|
+
* Formats an instruction with its activation signature.
|
|
389
|
+
*
|
|
390
|
+
* @param instruction - The unsigned instruction
|
|
391
|
+
* @param signature - The raw signature
|
|
392
|
+
* @param ephemeralWalletAddress - The ephemeral wallet address
|
|
393
|
+
* @returns The formatted instruction with signature
|
|
394
|
+
*/
|
|
395
|
+
formatInstruction(instruction: UnsignedInstruction, signature: Signature, ephemeralWalletAddress: `0x${string}`): FormattedInstruction;
|
|
396
|
+
private formatToEIP2098;
|
|
397
|
+
private encodeNonce;
|
|
398
|
+
private encodeYParity;
|
|
399
|
+
}
|
|
400
|
+
//#endregion
|
|
401
|
+
//#region src/signing/adapters/ethereum-wallet-adapter.d.ts
|
|
402
|
+
/**
|
|
403
|
+
* Ethereum Wallet Adapter
|
|
404
|
+
*
|
|
405
|
+
* Adapts a Viem WalletClient to implement Turnkey's EthereumWalletInterface
|
|
406
|
+
* for use with WalletStamper. This allows using any Viem-compatible wallet
|
|
407
|
+
* (e.g., private key accounts, hardware wallets) for server-side authentication
|
|
408
|
+
* with Turnkey's API.
|
|
409
|
+
*/
|
|
410
|
+
declare class EthereumWalletAdapter implements EthereumWalletInterface {
|
|
411
|
+
private readonly walletClient;
|
|
412
|
+
readonly type = WalletType.Ethereum;
|
|
413
|
+
constructor(walletClient: WalletClient);
|
|
414
|
+
signMessage(message: string): Promise<string>;
|
|
415
|
+
getPublicKey(): Promise<string>;
|
|
416
|
+
recoverPublicKey(message: string, signature: string): Promise<string>;
|
|
417
|
+
}
|
|
418
|
+
//#endregion
|
|
419
|
+
export { Signature as _, InstructionDigestComputer as a, SignerConfig as b, ServerWalletSigningService as c, ActivityPollingConfig as d, ApiKeyClientActivationParameters as f, ServerWalletActivationParameters as g, ISigningService as h, createRlpEncodedAuthorization as i, ApiKeyClientSigningService as l, FormattedSignature as m, FormattedInstruction as n, AuthorizationDigestComputer as o, DigestComputationResult as p, SignatureFormatter as r, UnifiedPaymentSigner as s, EthereumWalletAdapter as t, ActivationResult as u, SignatureResult as v, PublicClient as x, SignedInstruction as y };
|
|
420
|
+
//# sourceMappingURL=index-_2bU9FSx.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-_2bU9FSx.d.cts","names":["Address","ErrorType","Account","ParseAccount","Chain","PublicRpcSchema","RpcSchema","Prettify","Client","ClientConfig","CreateClientErrorType","PublicActions","Transport","PublicClientConfig","transport","chain","accountOrAddress","rpcSchema","Pick","PublicClient","CreatePublicClientErrorType","createPublicClient","Address","Account","ErrorType","ParseAccount","Chain","RpcSchema","WalletRpcSchema","Prettify","Client","ClientConfig","CreateClientErrorType","WalletActions","Transport","WalletClientConfig","transport","chain","accountOrAddress","rpcSchema","Pick","WalletClient","account","CreateWalletClientErrorType","createWalletClient"],"sources":["../../../node_modules/.pnpm/viem@2.39.3_bufferutil@4.0.9_typescript@5.9.3_utf-8-validate@5.0.10_zod@4.3.6/node_modules/viem/_types/clients/createPublicClient.d.ts","../../../node_modules/.pnpm/viem@2.39.3_bufferutil@4.0.9_typescript@5.9.3_utf-8-validate@5.0.10_zod@4.3.6/node_modules/viem/_types/clients/createWalletClient.d.ts","../src/signing/types.ts","../src/signing/services/api-key-client.ts","../src/signing/services/server-wallet.ts","../src/signing/unified-payment-signer.ts","../src/signing/utils/authorization-digest.ts","../src/signing/utils/instruction-digest.ts","../src/signing/utils/signature-formatter.ts","../src/signing/adapters/ethereum-wallet-adapter.ts"],"sourcesContent":["import type { Address } from 'abitype';\nimport type { ErrorType } from '../errors/utils.js';\nimport type { Account, ParseAccount } from '../types/account.js';\nimport type { Chain } from '../types/chain.js';\nimport type { PublicRpcSchema, RpcSchema } from '../types/eip1193.js';\nimport type { Prettify } from '../types/utils.js';\nimport { type Client, type ClientConfig, type CreateClientErrorType } from './createClient.js';\nimport { type PublicActions } from './decorators/public.js';\nimport type { Transport } from './transports/createTransport.js';\nexport type PublicClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress, rpcSchema>, 'batch' | 'cacheTime' | 'ccipRead' | 'chain' | 'experimental_blockTag' | 'key' | 'name' | 'pollingInterval' | 'rpcSchema' | 'transport'>>;\nexport type PublicClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | undefined = undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Client<transport, chain, accountOrAddress, rpcSchema extends RpcSchema ? [...PublicRpcSchema, ...rpcSchema] : PublicRpcSchema, PublicActions<transport, chain>>>;\nexport type CreatePublicClientErrorType = CreateClientErrorType | ErrorType;\n/**\n * Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).\n *\n * - Docs: https://viem.sh/docs/clients/public\n *\n * A Public Client is an interface to \"public\" [JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc/) methods such as retrieving block numbers, transactions, reading from smart contracts, etc through [Public Actions](/docs/actions/public/introduction).\n *\n * @param config - {@link PublicClientConfig}\n * @returns A Public Client. {@link PublicClient}\n *\n * @example\n * import { createPublicClient, http } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createPublicClient({\n * chain: mainnet,\n * transport: http(),\n * })\n */\nexport declare function createPublicClient<transport extends Transport, chain extends Chain | undefined = undefined, accountOrAddress extends Account | Address | undefined = undefined, rpcSchema extends RpcSchema | undefined = undefined>(parameters: PublicClientConfig<transport, chain, accountOrAddress, rpcSchema>): PublicClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema>;\n//# sourceMappingURL=createPublicClient.d.ts.map","import type { Address } from 'abitype';\nimport type { Account } from '../accounts/types.js';\nimport type { ErrorType } from '../errors/utils.js';\nimport type { ParseAccount } from '../types/account.js';\nimport type { Chain } from '../types/chain.js';\nimport type { RpcSchema, WalletRpcSchema } from '../types/eip1193.js';\nimport type { Prettify } from '../types/utils.js';\nimport { type Client, type ClientConfig, type CreateClientErrorType } from './createClient.js';\nimport { type WalletActions } from './decorators/wallet.js';\nimport type { Transport } from './transports/createTransport.js';\nexport type WalletClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress, rpcSchema>, 'account' | 'cacheTime' | 'ccipRead' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'rpcSchema' | 'transport'>>;\nexport type WalletClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, rpcSchema extends RpcSchema | undefined = undefined> = Prettify<Client<transport, chain, account, rpcSchema extends RpcSchema ? [...WalletRpcSchema, ...rpcSchema] : WalletRpcSchema, WalletActions<chain, account>>>;\nexport type CreateWalletClientErrorType = CreateClientErrorType | ErrorType;\n/**\n * Creates a Wallet Client with a given [Transport](https://viem.sh/docs/clients/intro) configured for a [Chain](https://viem.sh/docs/clients/chains).\n *\n * - Docs: https://viem.sh/docs/clients/wallet\n *\n * A Wallet Client is an interface to interact with [Ethereum Account(s)](https://ethereum.org/en/glossary/#account) and provides the ability to retrieve accounts, execute transactions, sign messages, etc. through [Wallet Actions](https://viem.sh/docs/actions/wallet/introduction).\n *\n * The Wallet Client supports signing over:\n * - [JSON-RPC Accounts](https://viem.sh/docs/clients/wallet#json-rpc-accounts) (e.g. Browser Extension Wallets, WalletConnect, etc).\n * - [Local Accounts](https://viem.sh/docs/clients/wallet#local-accounts-private-key-mnemonic-etc) (e.g. private key/mnemonic wallets).\n *\n * @param config - {@link WalletClientConfig}\n * @returns A Wallet Client. {@link WalletClient}\n *\n * @example\n * // JSON-RPC Account\n * import { createWalletClient, custom } from 'viem'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createWalletClient({\n * chain: mainnet,\n * transport: custom(window.ethereum),\n * })\n *\n * @example\n * // Local Account\n * import { createWalletClient, custom } from 'viem'\n * import { privateKeyToAccount } from 'viem/accounts'\n * import { mainnet } from 'viem/chains'\n *\n * const client = createWalletClient({\n * account: privateKeyToAccount('0x…')\n * chain: mainnet,\n * transport: http(),\n * })\n */\nexport declare function createWalletClient<transport extends Transport, chain extends Chain | undefined = undefined, accountOrAddress extends Account | Address | undefined = undefined, rpcSchema extends RpcSchema | undefined = undefined>(parameters: WalletClientConfig<transport, chain, accountOrAddress, rpcSchema>): WalletClient<transport, chain, ParseAccount<accountOrAddress>, rpcSchema>;\n//# sourceMappingURL=createWalletClient.d.ts.map"],"x_google_ignoreList":[0,1],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { c as Address } from "./abi-DJLWbdqc.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/config/env.d.ts
|
|
4
|
+
declare const Environment: {
|
|
5
|
+
readonly Sandbox: "sandbox";
|
|
6
|
+
readonly Production: "production";
|
|
7
|
+
};
|
|
8
|
+
type Environment = (typeof Environment)[keyof typeof Environment];
|
|
9
|
+
declare const isEnvironment: (value: string) => value is Environment;
|
|
10
|
+
declare const getApiUrl: (environment: Environment) => string;
|
|
11
|
+
declare const getTurnkeyApiUrl: (environment: Environment) => string;
|
|
12
|
+
declare const env: Readonly<{
|
|
13
|
+
ENVIRONMENT: "sandbox" | "production";
|
|
14
|
+
ENABLE_MSW: boolean;
|
|
15
|
+
CI: boolean;
|
|
16
|
+
}>;
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region src/config/app.d.ts
|
|
19
|
+
/**
|
|
20
|
+
* SIWE default configuration.
|
|
21
|
+
*/
|
|
22
|
+
declare const SIWE_CHAIN_ID = 0;
|
|
23
|
+
declare const SIWE_VERSION = "1";
|
|
24
|
+
declare const createLoginSiweMessage: (address: Address, nonce: string) => string;
|
|
25
|
+
//#endregion
|
|
26
|
+
export { env as a, isEnvironment as c, Environment as i, SIWE_VERSION as n, getApiUrl as o, createLoginSiweMessage as r, getTurnkeyApiUrl as s, SIWE_CHAIN_ID as t };
|
|
27
|
+
//# sourceMappingURL=index-bgGeSOyj.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-bgGeSOyj.d.mts","names":[],"sources":["../src/config/env.ts","../src/config/app.ts"],"sourcesContent":[],"mappings":";;;cAGa;;;AAAb,CAAA;AAIY,KAAA,WAAA,GAAW,CAAA,OAAW,WAA0B,CAAA,CAAA,MAAA,OAAA,WAAW,CAAA;AAE1D,cAAA,aAA0C,EAAA,CAAA,KAAA,EACI,MAAA,EAAA,GAAA,KAAA,IADJ,WACI;cAiB9C,yBAA0B;cAI1B,gCAAiC;cAIjC,KAAG;EC5BH,WAAA,EAAA,SAAa,GAAA,YAAA;EACb,UAAA,EAAA,OAAY;EAEZ,EAAA,EAAA,OAAA;;;;;;ADPb;AAIY,cCAC,aAAA,GDAqB,CAAA;AAErB,cCDA,YAAA,GDC0C,GAAA;AAkB1C,cCjBA,sBDiBqC,EAAA,CAAA,OAAA,EChBvC,ODgBuC,EAAA,KAAA,EAAA,MAAA,EAAA,GAAA,MAAA"}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import "./abi-C34qVuOe.cjs";
|
|
2
|
+
import { a as Chain } from "./rpc-C-51kawS.cjs";
|
|
3
|
+
import "./authorization-BnF84ABo.cjs";
|
|
4
|
+
import { _ as Signature, a as InstructionDigestComputer, b as SignerConfig, c as ServerWalletSigningService, d as ActivityPollingConfig, f as ApiKeyClientActivationParameters, g as ServerWalletActivationParameters, h as ISigningService, i as createRlpEncodedAuthorization, l as ApiKeyClientSigningService, m as FormattedSignature, n as FormattedInstruction, o as AuthorizationDigestComputer, p as DigestComputationResult, r as SignatureFormatter, s as UnifiedPaymentSigner, t as EthereumWalletAdapter, u as ActivationResult, v as SignatureResult, y as SignedInstruction } from "./index-_2bU9FSx.cjs";
|
|
5
|
+
import { a as AccountType, c as OtimAccountSignMessageArgs, d as ServerAccountType, i as AccountConfig, l as PrivateKeyAccountConfig, n as isApiAccountConfig, o as ApiAccountConfig, r as isPrivateKeyAccountConfig, s as OtimAccount, t as createClientContext, u as ServerAccountConfig } from "./index-DcGsW5Uz.cjs";
|
|
6
|
+
import { a as PrepareSettlementParams, c as prepareSettlement, d as OrchestrationClient, f as DelegationClient, g as ActivityClient, h as LoginOptions, i as OrchestrationParams, l as CreateRawConfig, m as AuthClient, n as createSettlementSigner, o as SettlementParams, p as ConfigClient, r as BuildSettlementRequest, s as VaultWithdrawSettlementParams, t as CreateSettlementSignerParams, u as CreateSettlementResponse } from "./index-BPJie3fa.cjs";
|
|
7
|
+
import { a as OtimReactClientContext, i as OtimClientContext, n as assertRequiresAuth, o as OtimServerClientContext, r as assertServerContext, t as isServerContext } from "./index-CUbzbOtB.cjs";
|
|
8
|
+
import { a as env, c as isEnvironment, i as Environment, n as SIWE_VERSION, o as getApiUrl, r as createLoginSiweMessage, s as getTurnkeyApiUrl, t as SIWE_CHAIN_ID } from "./index-BnmB_Auh.cjs";
|
|
9
|
+
import { i as normalizeYParityValue, n as parseSignatureToVRS, t as createEIP2098Signature } from "./vrs-w6WBVdSJ.cjs";
|
|
10
|
+
export { AccountConfig, AccountType, ActivationResult, ActivityClient, ActivityPollingConfig, ApiAccountConfig, ApiKeyClientActivationParameters, ApiKeyClientSigningService, AuthClient, AuthorizationDigestComputer, BuildSettlementRequest, Chain, ConfigClient, CreateRawConfig, CreateSettlementResponse, CreateSettlementSignerParams, DelegationClient, DigestComputationResult, Environment, Environment as EnvironmentType, EthereumWalletAdapter, FormattedInstruction, FormattedSignature, ISigningService, InstructionDigestComputer, LoginOptions, OrchestrationClient, OrchestrationParams, OtimAccount, OtimAccountSignMessageArgs, OtimClientContext, OtimReactClientContext, OtimServerClientContext, PrepareSettlementParams, PrivateKeyAccountConfig, SIWE_CHAIN_ID, SIWE_VERSION, ServerAccountConfig, ServerAccountType, ServerWalletActivationParameters, ServerWalletSigningService, SettlementParams, Signature, SignatureFormatter, SignatureResult, SignedInstruction, SignerConfig, UnifiedPaymentSigner, VaultWithdrawSettlementParams, assertRequiresAuth, assertServerContext, createClientContext, createEIP2098Signature, createLoginSiweMessage, createRlpEncodedAuthorization, createSettlementSigner, env, getApiUrl, getTurnkeyApiUrl, isApiAccountConfig, isEnvironment, isPrivateKeyAccountConfig, isServerContext, normalizeYParityValue, parseSignatureToVRS, prepareSettlement };
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import "./abi-DJLWbdqc.mjs";
|
|
2
|
+
import { a as Chain } from "./rpc-BWDaWzVn.mjs";
|
|
3
|
+
import "./authorization-C5pDhI13.mjs";
|
|
4
|
+
import { _ as Signature, a as InstructionDigestComputer, b as SignerConfig, c as ServerWalletSigningService, d as ActivityPollingConfig, f as ApiKeyClientActivationParameters, g as ServerWalletActivationParameters, h as ISigningService, i as createRlpEncodedAuthorization, l as ApiKeyClientSigningService, m as FormattedSignature, n as FormattedInstruction, o as AuthorizationDigestComputer, p as DigestComputationResult, r as SignatureFormatter, s as UnifiedPaymentSigner, t as EthereumWalletAdapter, u as ActivationResult, v as SignatureResult, y as SignedInstruction } from "./index-D6ncjdSF.mjs";
|
|
5
|
+
import { a as AccountType, c as OtimAccountSignMessageArgs, d as ServerAccountType, i as AccountConfig, l as PrivateKeyAccountConfig, n as isApiAccountConfig, o as ApiAccountConfig, r as isPrivateKeyAccountConfig, s as OtimAccount, t as createClientContext, u as ServerAccountConfig } from "./index-CChHQZDA.mjs";
|
|
6
|
+
import { a as PrepareSettlementParams, c as prepareSettlement, d as OrchestrationClient, f as DelegationClient, g as ActivityClient, h as LoginOptions, i as OrchestrationParams, l as CreateRawConfig, m as AuthClient, n as createSettlementSigner, o as SettlementParams, p as ConfigClient, r as BuildSettlementRequest, s as VaultWithdrawSettlementParams, t as CreateSettlementSignerParams, u as CreateSettlementResponse } from "./index-DgzYsb1k.mjs";
|
|
7
|
+
import { a as OtimReactClientContext, i as OtimClientContext, n as assertRequiresAuth, o as OtimServerClientContext, r as assertServerContext, t as isServerContext } from "./index-Bii-p3Pv.mjs";
|
|
8
|
+
import { a as env, c as isEnvironment, i as Environment, n as SIWE_VERSION, o as getApiUrl, r as createLoginSiweMessage, s as getTurnkeyApiUrl, t as SIWE_CHAIN_ID } from "./index-bgGeSOyj.mjs";
|
|
9
|
+
import { i as normalizeYParityValue, n as parseSignatureToVRS, t as createEIP2098Signature } from "./vrs-DlTE_vd4.mjs";
|
|
10
|
+
export { AccountConfig, AccountType, ActivationResult, ActivityClient, ActivityPollingConfig, ApiAccountConfig, ApiKeyClientActivationParameters, ApiKeyClientSigningService, AuthClient, AuthorizationDigestComputer, BuildSettlementRequest, Chain, ConfigClient, CreateRawConfig, CreateSettlementResponse, CreateSettlementSignerParams, DelegationClient, DigestComputationResult, Environment, Environment as EnvironmentType, EthereumWalletAdapter, FormattedInstruction, FormattedSignature, ISigningService, InstructionDigestComputer, LoginOptions, OrchestrationClient, OrchestrationParams, OtimAccount, OtimAccountSignMessageArgs, OtimClientContext, OtimReactClientContext, OtimServerClientContext, PrepareSettlementParams, PrivateKeyAccountConfig, SIWE_CHAIN_ID, SIWE_VERSION, ServerAccountConfig, ServerAccountType, ServerWalletActivationParameters, ServerWalletSigningService, SettlementParams, Signature, SignatureFormatter, SignatureResult, SignedInstruction, SignerConfig, UnifiedPaymentSigner, VaultWithdrawSettlementParams, assertRequiresAuth, assertServerContext, createClientContext, createEIP2098Signature, createLoginSiweMessage, createRlpEncodedAuthorization, createSettlementSigner, env, getApiUrl, getTurnkeyApiUrl, isApiAccountConfig, isEnvironment, isPrivateKeyAccountConfig, isServerContext, normalizeYParityValue, parseSignatureToVRS, prepareSettlement };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { a as ServerAccountType, i as AccountType, n as isApiAccountConfig, r as isPrivateKeyAccountConfig, t as createClientContext } from "./account-DTvmNvta.mjs";
|
|
2
|
+
import { a as ConfigClient, i as DelegationClient, n as OrchestrationClient, o as AuthClient, r as createSettlementSigner, s as ActivityClient, t as prepareSettlement } from "./clients-CXg-xZcK.mjs";
|
|
3
|
+
import { a as AuthorizationDigestComputer, c as ApiKeyClientSigningService, i as InstructionDigestComputer, n as SignatureFormatter, o as ServerWalletSigningService, r as createRlpEncodedAuthorization, s as EthereumWalletAdapter, t as UnifiedPaymentSigner } from "./signing-BGCR53df.mjs";
|
|
4
|
+
import { a as env, c as isEnvironment, i as Environment, n as SIWE_VERSION, o as getApiUrl, r as createLoginSiweMessage, s as getTurnkeyApiUrl, t as SIWE_CHAIN_ID } from "./config-C6ygfZaM.mjs";
|
|
5
|
+
import { n as assertRequiresAuth, r as assertServerContext, t as isServerContext } from "./context-GO0kqi9m.mjs";
|
|
6
|
+
import { i as normalizeYParityValue, n as parseSignatureToVRS, t as createEIP2098Signature } from "./vrs-DZWmrbGk.mjs";
|
|
7
|
+
|
|
8
|
+
export { AccountType, ActivityClient, ApiKeyClientSigningService, AuthClient, AuthorizationDigestComputer, ConfigClient, DelegationClient, Environment, EthereumWalletAdapter, InstructionDigestComputer, OrchestrationClient, SIWE_CHAIN_ID, SIWE_VERSION, ServerAccountType, ServerWalletSigningService, SignatureFormatter, UnifiedPaymentSigner, assertRequiresAuth, assertServerContext, createClientContext, createEIP2098Signature, createLoginSiweMessage, createRlpEncodedAuthorization, createSettlementSigner, env, getApiUrl, getTurnkeyApiUrl, isApiAccountConfig, isEnvironment, isPrivateKeyAccountConfig, isServerContext, normalizeYParityValue, parseSignatureToVRS, prepareSettlement };
|