@account-kit/signer 4.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/base.d.ts +37 -0
  3. package/dist/cjs/base.js +292 -0
  4. package/dist/cjs/base.js.map +1 -0
  5. package/dist/cjs/client/base.d.ts +230 -0
  6. package/dist/cjs/client/base.js +298 -0
  7. package/dist/cjs/client/base.js.map +1 -0
  8. package/dist/cjs/client/index.d.ts +146 -0
  9. package/dist/cjs/client/index.js +260 -0
  10. package/dist/cjs/client/index.js.map +1 -0
  11. package/dist/cjs/client/types.d.ts +106 -0
  12. package/dist/cjs/client/types.js +3 -0
  13. package/dist/cjs/client/types.js.map +1 -0
  14. package/dist/cjs/errors.d.ts +4 -0
  15. package/dist/cjs/errors.js +16 -0
  16. package/dist/cjs/errors.js.map +1 -0
  17. package/dist/cjs/index.d.ts +8 -0
  18. package/dist/cjs/index.js +14 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/package.json +1 -0
  21. package/dist/cjs/session/manager.d.ts +45 -0
  22. package/dist/cjs/session/manager.js +230 -0
  23. package/dist/cjs/session/manager.js.map +1 -0
  24. package/dist/cjs/session/types.d.ts +16 -0
  25. package/dist/cjs/session/types.js +3 -0
  26. package/dist/cjs/session/types.js.map +1 -0
  27. package/dist/cjs/signer.d.ts +262 -0
  28. package/dist/cjs/signer.js +34 -0
  29. package/dist/cjs/signer.js.map +1 -0
  30. package/dist/cjs/types.d.ts +14 -0
  31. package/dist/cjs/types.js +12 -0
  32. package/dist/cjs/types.js.map +1 -0
  33. package/dist/cjs/utils/base64UrlEncode.d.ts +1 -0
  34. package/dist/cjs/utils/base64UrlEncode.js +12 -0
  35. package/dist/cjs/utils/base64UrlEncode.js.map +1 -0
  36. package/dist/cjs/utils/generateRandomBuffer.d.ts +1 -0
  37. package/dist/cjs/utils/generateRandomBuffer.js +10 -0
  38. package/dist/cjs/utils/generateRandomBuffer.js.map +1 -0
  39. package/dist/cjs/version.d.ts +1 -0
  40. package/dist/cjs/version.js +5 -0
  41. package/dist/cjs/version.js.map +1 -0
  42. package/dist/esm/base.d.ts +37 -0
  43. package/dist/esm/base.js +288 -0
  44. package/dist/esm/base.js.map +1 -0
  45. package/dist/esm/client/base.d.ts +230 -0
  46. package/dist/esm/client/base.js +291 -0
  47. package/dist/esm/client/base.js.map +1 -0
  48. package/dist/esm/client/index.d.ts +146 -0
  49. package/dist/esm/client/index.js +256 -0
  50. package/dist/esm/client/index.js.map +1 -0
  51. package/dist/esm/client/types.d.ts +106 -0
  52. package/dist/esm/client/types.js +2 -0
  53. package/dist/esm/client/types.js.map +1 -0
  54. package/dist/esm/errors.d.ts +4 -0
  55. package/dist/esm/errors.js +12 -0
  56. package/dist/esm/errors.js.map +1 -0
  57. package/dist/esm/index.d.ts +8 -0
  58. package/dist/esm/index.js +6 -0
  59. package/dist/esm/index.js.map +1 -0
  60. package/dist/esm/package.json +1 -0
  61. package/dist/esm/session/manager.d.ts +45 -0
  62. package/dist/esm/session/manager.js +223 -0
  63. package/dist/esm/session/manager.js.map +1 -0
  64. package/dist/esm/session/types.d.ts +16 -0
  65. package/dist/esm/session/types.js +2 -0
  66. package/dist/esm/session/types.js.map +1 -0
  67. package/dist/esm/signer.d.ts +262 -0
  68. package/dist/esm/signer.js +30 -0
  69. package/dist/esm/signer.js.map +1 -0
  70. package/dist/esm/types.d.ts +14 -0
  71. package/dist/esm/types.js +9 -0
  72. package/dist/esm/types.js.map +1 -0
  73. package/dist/esm/utils/base64UrlEncode.d.ts +1 -0
  74. package/dist/esm/utils/base64UrlEncode.js +8 -0
  75. package/dist/esm/utils/base64UrlEncode.js.map +1 -0
  76. package/dist/esm/utils/generateRandomBuffer.d.ts +1 -0
  77. package/dist/esm/utils/generateRandomBuffer.js +6 -0
  78. package/dist/esm/utils/generateRandomBuffer.js.map +1 -0
  79. package/dist/esm/version.d.ts +1 -0
  80. package/dist/esm/version.js +2 -0
  81. package/dist/esm/version.js.map +1 -0
  82. package/dist/types/base.d.ts +89 -0
  83. package/dist/types/base.d.ts.map +1 -0
  84. package/dist/types/client/base.d.ts +246 -0
  85. package/dist/types/client/base.d.ts.map +1 -0
  86. package/dist/types/client/index.d.ts +151 -0
  87. package/dist/types/client/index.d.ts.map +1 -0
  88. package/dist/types/client/types.d.ts +107 -0
  89. package/dist/types/client/types.d.ts.map +1 -0
  90. package/dist/types/errors.d.ts +5 -0
  91. package/dist/types/errors.d.ts.map +1 -0
  92. package/dist/types/index.d.ts +9 -0
  93. package/dist/types/index.d.ts.map +1 -0
  94. package/dist/types/session/manager.d.ts +46 -0
  95. package/dist/types/session/manager.d.ts.map +1 -0
  96. package/dist/types/session/types.d.ts +17 -0
  97. package/dist/types/session/types.d.ts.map +1 -0
  98. package/dist/types/signer.d.ts +269 -0
  99. package/dist/types/signer.d.ts.map +1 -0
  100. package/dist/types/types.d.ts +15 -0
  101. package/dist/types/types.d.ts.map +1 -0
  102. package/dist/types/utils/base64UrlEncode.d.ts +2 -0
  103. package/dist/types/utils/base64UrlEncode.d.ts.map +1 -0
  104. package/dist/types/utils/generateRandomBuffer.d.ts +2 -0
  105. package/dist/types/utils/generateRandomBuffer.d.ts.map +1 -0
  106. package/dist/types/version.d.ts +2 -0
  107. package/dist/types/version.d.ts.map +1 -0
  108. package/package.json +79 -0
  109. package/src/base.ts +386 -0
  110. package/src/client/base.ts +399 -0
  111. package/src/client/index.ts +267 -0
  112. package/src/client/types.ts +121 -0
  113. package/src/errors.ts +15 -0
  114. package/src/index.ts +10 -0
  115. package/src/session/manager.ts +249 -0
  116. package/src/session/types.ts +16 -0
  117. package/src/signer.ts +55 -0
  118. package/src/types.ts +17 -0
  119. package/src/utils/base64UrlEncode.ts +7 -0
  120. package/src/utils/generateRandomBuffer.ts +5 -0
  121. package/src/version.ts +3 -0
@@ -0,0 +1,89 @@
1
+ import { type SmartAccountAuthenticator } from "@aa-sdk/core";
2
+ import { type CustomSource, type Hex, type LocalAccount, type SignableMessage, type TypedData, type TypedDataDefinition } from "viem";
3
+ import type { BaseSignerClient } from "./client/base";
4
+ import type { User } from "./client/types";
5
+ import { type SessionManagerParams } from "./session/manager.js";
6
+ import type { AuthParams } from "./signer";
7
+ import { type AlchemySignerEvents } from "./types.js";
8
+ export interface BaseAlchemySignerParams<TClient extends BaseSignerClient> {
9
+ client: TClient;
10
+ sessionConfig?: Omit<SessionManagerParams, "client">;
11
+ }
12
+ export declare abstract class BaseAlchemySigner<TClient extends BaseSignerClient> implements SmartAccountAuthenticator<AuthParams, User, TClient> {
13
+ signerType: string;
14
+ inner: TClient;
15
+ private sessionManager;
16
+ private store;
17
+ constructor({ client, sessionConfig }: BaseAlchemySignerParams<TClient>);
18
+ /**
19
+ * Allows you to subscribe to events emitted by the signer
20
+ *
21
+ * @param event the event to subscribe to
22
+ * @param listener the function to run when the event is emitted
23
+ * @returns a function to remove the listener
24
+ */
25
+ on: <E extends keyof AlchemySignerEvents>(event: E, listener: AlchemySignerEvents[E]) => () => void;
26
+ /**
27
+ * Authenticate a user with either an email or a passkey and create a session for that user
28
+ *
29
+ * @param params - undefined if passkey login, otherwise an object with email and bundle to resolve
30
+ * @returns the user that was authenticated
31
+ */
32
+ authenticate: (params: AuthParams) => Promise<User>;
33
+ /**
34
+ * NOTE: right now this only clears the session locally.
35
+ */
36
+ disconnect: () => Promise<void>;
37
+ /**
38
+ * Gets the current logged in user
39
+ * If a user has an ongoing session, it will use that session and
40
+ * try to authenticate
41
+ *
42
+ * @throws if there is no user logged in
43
+ * @returns the current user
44
+ */
45
+ getAuthDetails: () => Promise<User>;
46
+ getAddress: () => Promise<`0x${string}`>;
47
+ signMessage: (msg: SignableMessage) => Promise<`0x${string}`>;
48
+ signTypedData: <const TTypedData extends TypedData | {
49
+ [key: string]: unknown;
50
+ }, TPrimaryType extends keyof TTypedData | "EIP712Domain" = keyof TTypedData>(params: TypedDataDefinition<TTypedData, TPrimaryType>) => Promise<Hex>;
51
+ signTransaction: CustomSource["signTransaction"];
52
+ /**
53
+ * Unauthenticated call to look up a user's organizationId by email
54
+ *
55
+ * @param email the email to lookup
56
+ * @returns the organization id for the user if they exist
57
+ */
58
+ getUser: (email: string) => Promise<{
59
+ orgId: string;
60
+ } | null>;
61
+ /**
62
+ * Adds a passkey to the user's account
63
+ *
64
+ * @param params optional parameters for the passkey creation
65
+ * @returns an array of the authenticator ids added to the user
66
+ */
67
+ addPasskey: (params?: CredentialCreationOptions) => Promise<string[]>;
68
+ /**
69
+ * Used to export the wallet for a given user
70
+ * If the user is authenticated with an Email, this will return a seed phrase
71
+ * If the user is authenticated with a Passkey, this will return a private key
72
+ *
73
+ * @param params export wallet parameters
74
+ * @returns true if the wallet was exported successfully
75
+ */
76
+ exportWallet: (params: Parameters<(typeof this.inner)["exportWallet"]>[0]) => Promise<boolean>;
77
+ /**
78
+ * This method lets you adapt your AlchemySigner to a viem LocalAccount, which
79
+ * will let you use the signer as an EOA directly.
80
+ *
81
+ * @throws if your signer is not authenticated
82
+ * @returns a LocalAccount object that can be used with viem's wallet client
83
+ */
84
+ toViemAccount: () => LocalAccount;
85
+ private authenticateWithEmail;
86
+ private authenticateWithPasskey;
87
+ private registerListeners;
88
+ }
89
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,mBAAmB,EACzB,MAAM,MAAM,CAAC;AAKd,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,uBAAuB,CAAC,OAAO,SAAS,gBAAgB;IACvE,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;CACtD;AAYD,8BAAsB,iBAAiB,CAAC,OAAO,SAAS,gBAAgB,CACtE,YAAW,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC;IAE/D,UAAU,EAAE,MAAM,CAAoB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAgB;gBAEjB,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,uBAAuB,CAAC,OAAO,CAAC;IAiCvE;;;;;;OAMG;IACH,EAAE,kGAmCA;IAEF;;;;;OAKG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAMjD;IAEF;;OAEG;IACH,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAE7B;IAEF;;;;;;;OAOG;IACH,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAOjC;IAEF,UAAU,EAAE,MAAM,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAItC;IAEF,WAAW,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,KAAK,MAAM,EAAE,CAAC,CAM3D;IAEF,aAAa,EAAE,CACb,KAAK,CAAC,UAAU,SAAS,SAAS,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAC/D,YAAY,SAAS,MAAM,UAAU,GAAG,cAAc,GAAG,MAAM,UAAU,EAEzE,MAAM,EAAE,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,KAClD,OAAO,CAAC,GAAG,CAAC,CAIf;IAEF,eAAe,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAc9C;IAEF;;;;;OAKG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAY3D;IAEF;;;;;OAKG;IACH,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,yBAAyB,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAGjE;IAEJ;;;;;;;OAOG;IACH,YAAY,EAAE,CACZ,MAAM,EAAE,UAAU,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,KACvD,OAAO,CAAC,OAAO,CAAC,CAEnB;IAEF;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,YAAY,CAkB/B;IAEF,OAAO,CAAC,qBAAqB,CAkD3B;IAEF,OAAO,CAAC,uBAAuB,CAsB7B;IAEF,OAAO,CAAC,iBAAiB,CA0BvB;CACH"}
@@ -0,0 +1,246 @@
1
+ import { type ConnectionConfig } from "@aa-sdk/core";
2
+ import { TurnkeyClient } from "@turnkey/http";
3
+ import EventEmitter from "eventemitter3";
4
+ import type { Hex } from "viem";
5
+ import type { AlchemySignerClientEvents, CreateAccountParams, EmailAuthParams, GetWebAuthnAttestationResult, SignerBody, SignerResponse, SignupResponse, User } from "./types.js";
6
+ export interface BaseSignerClientParams {
7
+ stamper: TurnkeyClient["stamper"];
8
+ connection: ConnectionConfig;
9
+ rootOrgId?: string;
10
+ rpId?: string;
11
+ }
12
+ export type ExportWalletStamper = TurnkeyClient["stamper"] & {
13
+ injectWalletExportBundle(bundle: string): Promise<boolean>;
14
+ injectKeyExportBundle(bundle: string): Promise<boolean>;
15
+ publicKey(): string | null;
16
+ };
17
+ export declare abstract class BaseSignerClient<TExportWalletParams = unknown> {
18
+ private _user;
19
+ private connectionConfig;
20
+ protected turnkeyClient: TurnkeyClient;
21
+ protected rootOrg: string;
22
+ protected eventEmitter: EventEmitter<AlchemySignerClientEvents>;
23
+ constructor(params: BaseSignerClientParams);
24
+ protected get user(): User | undefined;
25
+ protected set user(user: User | undefined);
26
+ protected setStamper(stamper: TurnkeyClient["stamper"]): void;
27
+ protected exportWalletInner(params: {
28
+ exportStamper: ExportWalletStamper;
29
+ exportAs: "SEED_PHRASE" | "PRIVATE_KEY";
30
+ }): Promise<boolean>;
31
+ abstract createAccount(params: CreateAccountParams): Promise<SignupResponse>;
32
+ abstract initEmailAuth(params: Omit<EmailAuthParams, "targetPublicKey">): Promise<{
33
+ orgId: string;
34
+ }>;
35
+ abstract completeEmailAuth(params: {
36
+ bundle: string;
37
+ orgId: string;
38
+ }): Promise<User>;
39
+ abstract disconnect(): Promise<void>;
40
+ abstract exportWallet(params: TExportWalletParams): Promise<boolean>;
41
+ abstract lookupUserWithPasskey(user?: User): Promise<User>;
42
+ protected abstract getWebAuthnAttestation(options: CredentialCreationOptions, userDetails?: {
43
+ username: string;
44
+ }): Promise<GetWebAuthnAttestationResult>;
45
+ /**
46
+ * Listen to events emitted by the client
47
+ *
48
+ * @param event the event you want to listen to
49
+ * @param listener the callback function to execute when an event is fired
50
+ * @returns a function that will remove the listener when called
51
+ */
52
+ on: <E extends keyof AlchemySignerClientEvents>(event: E, listener: AlchemySignerClientEvents[E]) => () => EventEmitter<AlchemySignerClientEvents, any>;
53
+ addPasskey: (options: CredentialCreationOptions) => Promise<string[]>;
54
+ whoami: (orgId?: string | undefined) => Promise<User>;
55
+ lookupUserByEmail: (email: string) => Promise<{
56
+ orgId: string | null;
57
+ }>;
58
+ /**
59
+ * This will sign a message with the user's private key, without doing any transformations on the message.
60
+ * For SignMessage or SignTypedData, the caller should hash the message before calling this method and pass
61
+ * that result here.
62
+ *
63
+ * @param msg the hex representation of the bytes to sign
64
+ * @returns the signature over the raw hex
65
+ */
66
+ signRawMessage: (msg: Hex) => Promise<`0x${string}`>;
67
+ getUser: () => User | null;
68
+ request: <R extends "/v1/signup" | "/v1/whoami" | "/v1/auth" | "/v1/lookup" | "/v1/sign-payload">(route: R, body: SignerBody<R>) => Promise<SignerResponse<R>>;
69
+ private exportAsSeedPhrase;
70
+ private exportAsPrivateKey;
71
+ protected pollActivityCompletion: <T extends "createOrganizationResult" | "createAuthenticatorsResult" | "createUsersResult" | "createPrivateKeysResult" | "createInvitationsResult" | "acceptInvitationResult" | "signRawPayloadResult" | "createPolicyResult" | "disablePrivateKeyResult" | "deleteUsersResult" | "deleteAuthenticatorsResult" | "deleteInvitationResult" | "deleteOrganizationResult" | "deletePolicyResult" | "createUserTagResult" | "deleteUserTagsResult" | "signTransactionResult" | "deleteApiKeysResult" | "createApiKeysResult" | "createPrivateKeyTagResult" | "deletePrivateKeyTagsResult" | "setPaymentMethodResult" | "activateBillingTierResult" | "deletePaymentMethodResult" | "createApiOnlyUsersResult" | "updateRootQuorumResult" | "updateUserTagResult" | "updatePrivateKeyTagResult" | "createSubOrganizationResult" | "updateAllowedOriginsResult" | "createPrivateKeysResultV2" | "updateUserResult" | "updatePolicyResult" | "createSubOrganizationResultV3" | "createWalletResult" | "createWalletAccountsResult" | "initUserEmailRecoveryResult" | "recoverUserResult" | "setOrganizationFeatureResult" | "removeOrganizationFeatureResult" | "exportPrivateKeyResult" | "exportWalletResult" | "createSubOrganizationResultV4" | "emailAuthResult" | "exportWalletAccountResult">(activity: Awaited<ReturnType<(typeof this.turnkeyClient)["getActivity"]>>["activity"], organizationId: string, resultKey: T) => Promise<NonNullable<{
72
+ createOrganizationResult?: {
73
+ organizationId: string;
74
+ } | undefined;
75
+ createAuthenticatorsResult?: {
76
+ authenticatorIds: string[];
77
+ } | undefined;
78
+ createUsersResult?: {
79
+ userIds: string[];
80
+ } | undefined;
81
+ createPrivateKeysResult?: {
82
+ privateKeyIds: string[];
83
+ } | undefined;
84
+ createInvitationsResult?: {
85
+ invitationIds: string[];
86
+ } | undefined;
87
+ acceptInvitationResult?: {
88
+ invitationId: string;
89
+ userId: string;
90
+ } | undefined;
91
+ signRawPayloadResult?: {
92
+ r: string;
93
+ s: string;
94
+ v: string;
95
+ } | undefined;
96
+ createPolicyResult?: {
97
+ policyId: string;
98
+ } | undefined;
99
+ disablePrivateKeyResult?: {
100
+ privateKeyId: string;
101
+ } | undefined;
102
+ deleteUsersResult?: {
103
+ userIds: string[];
104
+ } | undefined;
105
+ deleteAuthenticatorsResult?: {
106
+ authenticatorIds: string[];
107
+ } | undefined;
108
+ deleteInvitationResult?: {
109
+ invitationId: string;
110
+ } | undefined;
111
+ deleteOrganizationResult?: {
112
+ organizationId: string;
113
+ } | undefined;
114
+ deletePolicyResult?: {
115
+ policyId: string;
116
+ } | undefined;
117
+ createUserTagResult?: {
118
+ userTagId: string;
119
+ userIds: string[];
120
+ } | undefined;
121
+ deleteUserTagsResult?: {
122
+ userTagIds: string[];
123
+ userIds: string[];
124
+ } | undefined;
125
+ signTransactionResult?: {
126
+ signedTransaction: string;
127
+ } | undefined;
128
+ deleteApiKeysResult?: {
129
+ apiKeyIds: string[];
130
+ } | undefined;
131
+ createApiKeysResult?: {
132
+ apiKeyIds: string[];
133
+ } | undefined;
134
+ createPrivateKeyTagResult?: {
135
+ privateKeyTagId: string;
136
+ privateKeyIds: string[];
137
+ } | undefined;
138
+ deletePrivateKeyTagsResult?: {
139
+ privateKeyTagIds: string[];
140
+ privateKeyIds: string[];
141
+ } | undefined;
142
+ setPaymentMethodResult?: {
143
+ lastFour: string;
144
+ cardHolderName: string;
145
+ cardHolderEmail: string;
146
+ } | undefined;
147
+ activateBillingTierResult?: {
148
+ productId: string;
149
+ } | undefined;
150
+ deletePaymentMethodResult?: {
151
+ paymentMethodId: string;
152
+ } | undefined;
153
+ createApiOnlyUsersResult?: {
154
+ userIds: string[];
155
+ } | undefined;
156
+ updateRootQuorumResult?: {
157
+ [key: string]: unknown;
158
+ } | undefined;
159
+ updateUserTagResult?: {
160
+ userTagId: string;
161
+ } | undefined;
162
+ updatePrivateKeyTagResult?: {
163
+ privateKeyTagId: string;
164
+ } | undefined;
165
+ createSubOrganizationResult?: {
166
+ subOrganizationId: string;
167
+ } | undefined;
168
+ updateAllowedOriginsResult?: {
169
+ [key: string]: unknown;
170
+ } | undefined;
171
+ createPrivateKeysResultV2?: {
172
+ privateKeys: {
173
+ privateKeyId?: string | undefined;
174
+ addresses?: {
175
+ format?: "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | undefined;
176
+ address?: string | undefined;
177
+ }[] | undefined;
178
+ }[];
179
+ } | undefined;
180
+ updateUserResult?: {
181
+ userId: string;
182
+ } | undefined;
183
+ updatePolicyResult?: {
184
+ policyId: string;
185
+ } | undefined;
186
+ createSubOrganizationResultV3?: {
187
+ subOrganizationId: string;
188
+ privateKeys: {
189
+ privateKeyId?: string | undefined;
190
+ addresses?: {
191
+ format?: "ADDRESS_FORMAT_UNCOMPRESSED" | "ADDRESS_FORMAT_COMPRESSED" | "ADDRESS_FORMAT_ETHEREUM" | "ADDRESS_FORMAT_SOLANA" | "ADDRESS_FORMAT_COSMOS" | undefined;
192
+ address?: string | undefined;
193
+ }[] | undefined;
194
+ }[];
195
+ } | undefined;
196
+ createWalletResult?: {
197
+ walletId: string;
198
+ addresses: string[];
199
+ } | undefined;
200
+ createWalletAccountsResult?: {
201
+ addresses: string[];
202
+ } | undefined;
203
+ initUserEmailRecoveryResult?: {
204
+ userId: string;
205
+ } | undefined;
206
+ recoverUserResult?: {
207
+ authenticatorId: string[];
208
+ } | undefined;
209
+ setOrganizationFeatureResult?: {
210
+ features: {
211
+ name?: "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | undefined;
212
+ value?: string | undefined;
213
+ }[];
214
+ } | undefined;
215
+ removeOrganizationFeatureResult?: {
216
+ features: {
217
+ name?: "FEATURE_NAME_ROOT_USER_EMAIL_RECOVERY" | "FEATURE_NAME_WEBAUTHN_ORIGINS" | "FEATURE_NAME_EMAIL_AUTH" | "FEATURE_NAME_EMAIL_RECOVERY" | undefined;
218
+ value?: string | undefined;
219
+ }[];
220
+ } | undefined;
221
+ exportPrivateKeyResult?: {
222
+ privateKeyId: string;
223
+ exportBundle: string;
224
+ } | undefined;
225
+ exportWalletResult?: {
226
+ walletId: string;
227
+ exportBundle: string;
228
+ } | undefined;
229
+ createSubOrganizationResultV4?: {
230
+ subOrganizationId: string;
231
+ wallet?: {
232
+ walletId: string;
233
+ addresses: string[];
234
+ } | undefined;
235
+ } | undefined;
236
+ emailAuthResult?: {
237
+ userId: string;
238
+ apiKeyId: string;
239
+ } | undefined;
240
+ exportWalletAccountResult?: {
241
+ address: string;
242
+ exportBundle: string;
243
+ } | undefined;
244
+ }[T]>>;
245
+ }
246
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/client/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,151 @@
1
+ import { z } from "zod";
2
+ import { BaseSignerClient } from "./base.js";
3
+ import type { CreateAccountParams, CredentialCreationOptionOverrides, EmailAuthParams, ExportWalletParams, User } from "./types.js";
4
+ export declare const AlchemySignerClientParamsSchema: z.ZodObject<{
5
+ connection: z.ZodUnion<[z.ZodObject<{
6
+ rpcUrl: z.ZodOptional<z.ZodNever>;
7
+ apiKey: z.ZodString;
8
+ jwt: z.ZodOptional<z.ZodNever>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ apiKey: string;
11
+ rpcUrl?: undefined;
12
+ jwt?: undefined;
13
+ }, {
14
+ apiKey: string;
15
+ rpcUrl?: undefined;
16
+ jwt?: undefined;
17
+ }>, z.ZodObject<{
18
+ rpcUrl: z.ZodOptional<z.ZodNever>;
19
+ apiKey: z.ZodOptional<z.ZodNever>;
20
+ jwt: z.ZodString;
21
+ }, "strip", z.ZodTypeAny, {
22
+ jwt: string;
23
+ rpcUrl?: undefined;
24
+ apiKey?: undefined;
25
+ }, {
26
+ jwt: string;
27
+ rpcUrl?: undefined;
28
+ apiKey?: undefined;
29
+ }>, z.ZodObject<{
30
+ rpcUrl: z.ZodString;
31
+ apiKey: z.ZodOptional<z.ZodNever>;
32
+ jwt: z.ZodOptional<z.ZodNever>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ rpcUrl: string;
35
+ apiKey?: undefined;
36
+ jwt?: undefined;
37
+ }, {
38
+ rpcUrl: string;
39
+ apiKey?: undefined;
40
+ jwt?: undefined;
41
+ }>, z.ZodObject<{
42
+ rpcUrl: z.ZodString;
43
+ apiKey: z.ZodOptional<z.ZodNever>;
44
+ jwt: z.ZodString;
45
+ }, "strip", z.ZodTypeAny, {
46
+ rpcUrl: string;
47
+ jwt: string;
48
+ apiKey?: undefined;
49
+ }, {
50
+ rpcUrl: string;
51
+ jwt: string;
52
+ apiKey?: undefined;
53
+ }>]>;
54
+ iframeConfig: z.ZodObject<{
55
+ iframeElementId: z.ZodDefault<z.ZodString>;
56
+ iframeContainerId: z.ZodString;
57
+ }, "strip", z.ZodTypeAny, {
58
+ iframeElementId: string;
59
+ iframeContainerId: string;
60
+ }, {
61
+ iframeContainerId: string;
62
+ iframeElementId?: string | undefined;
63
+ }>;
64
+ rpId: z.ZodOptional<z.ZodString>;
65
+ rootOrgId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ connection: {
68
+ apiKey: string;
69
+ rpcUrl?: undefined;
70
+ jwt?: undefined;
71
+ } | {
72
+ jwt: string;
73
+ rpcUrl?: undefined;
74
+ apiKey?: undefined;
75
+ } | {
76
+ rpcUrl: string;
77
+ apiKey?: undefined;
78
+ jwt?: undefined;
79
+ } | {
80
+ rpcUrl: string;
81
+ jwt: string;
82
+ apiKey?: undefined;
83
+ };
84
+ rootOrgId: string;
85
+ iframeConfig: {
86
+ iframeElementId: string;
87
+ iframeContainerId: string;
88
+ };
89
+ rpId?: string | undefined;
90
+ }, {
91
+ connection: {
92
+ apiKey: string;
93
+ rpcUrl?: undefined;
94
+ jwt?: undefined;
95
+ } | {
96
+ jwt: string;
97
+ rpcUrl?: undefined;
98
+ apiKey?: undefined;
99
+ } | {
100
+ rpcUrl: string;
101
+ apiKey?: undefined;
102
+ jwt?: undefined;
103
+ } | {
104
+ rpcUrl: string;
105
+ jwt: string;
106
+ apiKey?: undefined;
107
+ };
108
+ iframeConfig: {
109
+ iframeContainerId: string;
110
+ iframeElementId?: string | undefined;
111
+ };
112
+ rpId?: string | undefined;
113
+ rootOrgId?: string | undefined;
114
+ }>;
115
+ export type AlchemySignerClientParams = z.input<typeof AlchemySignerClientParamsSchema>;
116
+ /**
117
+ * A lower level client used by the AlchemySigner used to communicate with
118
+ * Alchemy's signer service.
119
+ */
120
+ export declare class AlchemySignerWebClient extends BaseSignerClient<ExportWalletParams> {
121
+ private iframeStamper;
122
+ private webauthnStamper;
123
+ iframeContainerId: string;
124
+ constructor(params: AlchemySignerClientParams);
125
+ createAccount: (params: CreateAccountParams) => Promise<import("./types.js").SignupResponse>;
126
+ initEmailAuth: (params: Omit<EmailAuthParams, "targetPublicKey">) => Promise<{
127
+ orgId: string;
128
+ }>;
129
+ completeEmailAuth: ({ bundle, orgId, }: {
130
+ bundle: string;
131
+ orgId: string;
132
+ }) => Promise<User>;
133
+ lookupUserWithPasskey: (user?: User | undefined) => Promise<User>;
134
+ exportWallet: ({ iframeContainerId, iframeElementId, }: ExportWalletParams) => Promise<boolean>;
135
+ disconnect: () => Promise<void>;
136
+ private initIframeStamper;
137
+ private initWebauthnStamper;
138
+ protected getWebAuthnAttestation: (options?: CredentialCreationOptionOverrides, userDetails?: {
139
+ username: string;
140
+ }) => Promise<{
141
+ challenge: ArrayBuffer;
142
+ authenticatorUserId: ArrayBuffer;
143
+ attestation: {
144
+ credentialId: string;
145
+ clientDataJson: string;
146
+ attestationObject: string;
147
+ transports: ("AUTHENTICATOR_TRANSPORT_BLE" | "AUTHENTICATOR_TRANSPORT_INTERNAL" | "AUTHENTICATOR_TRANSPORT_NFC" | "AUTHENTICATOR_TRANSPORT_USB" | "AUTHENTICATOR_TRANSPORT_HYBRID")[];
148
+ };
149
+ }>;
150
+ }
151
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EACV,mBAAmB,EACnB,iCAAiC,EACjC,eAAe,EACf,kBAAkB,EAClB,IAAI,EACL,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC;AAEF;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,gBAAgB,CAAC,kBAAkB,CAAC;IAC9E,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,iBAAiB,EAAE,MAAM,CAAC;gBAEd,MAAM,EAAE,yBAAyB;IAwBtC,aAAa,WAAkB,mBAAmB,kDAuCvD;IAEK,aAAa,WACV,KAAK,eAAe,EAAE,iBAAiB,CAAC;;OAYhD;IAEK,iBAAiB;gBAId,MAAM;eACP,MAAM;wBAeb;IAEK,qBAAqB,UAAgB,IAAI,GAAG,SAAS,mBAa1D;IAEK,YAAY,4CAGhB,kBAAkB,sBAmBnB;IAEK,UAAU,sBAGf;IAEF,OAAO,CAAC,iBAAiB,CAQvB;IAEF,OAAO,CAAC,mBAAmB,CAYzB;IAEF,SAAS,CAAC,sBAAsB,aACpB,iCAAiC,gBAC9B;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;;;;;;;;;OAmDjC;CACH"}
@@ -0,0 +1,107 @@
1
+ import type { Address } from "@aa-sdk/core";
2
+ import type { TSignedRequest, getWebAuthnAttestation } from "@turnkey/http";
3
+ import type { Hex } from "viem";
4
+ export type CredentialCreationOptionOverrides = {
5
+ publicKey?: Partial<CredentialCreationOptions["publicKey"]>;
6
+ } & Pick<CredentialCreationOptions, "signal">;
7
+ export type User = {
8
+ email?: string;
9
+ orgId: string;
10
+ userId: string;
11
+ address: Address;
12
+ credentialId?: string;
13
+ };
14
+ export type ExportWalletParams = {
15
+ iframeContainerId: string;
16
+ iframeElementId?: string;
17
+ };
18
+ export type CreateAccountParams = {
19
+ type: "email";
20
+ email: string;
21
+ expirationSeconds?: number;
22
+ redirectParams?: URLSearchParams;
23
+ } | {
24
+ type: "passkey";
25
+ username: string;
26
+ creationOpts?: CredentialCreationOptionOverrides;
27
+ };
28
+ export type EmailAuthParams = {
29
+ email: string;
30
+ expirationSeconds?: number;
31
+ targetPublicKey: string;
32
+ redirectParams?: URLSearchParams;
33
+ };
34
+ export type SignupResponse = {
35
+ orgId: string;
36
+ userId?: string;
37
+ address?: Address;
38
+ };
39
+ export type SignerRoutes = SignerEndpoints[number]["Route"];
40
+ export type SignerBody<T extends SignerRoutes> = Extract<SignerEndpoints[number], {
41
+ Route: T;
42
+ }>["Body"];
43
+ export type SignerResponse<T extends SignerRoutes> = Extract<SignerEndpoints[number], {
44
+ Route: T;
45
+ }>["Response"];
46
+ export type SignerEndpoints = [
47
+ {
48
+ Route: "/v1/signup";
49
+ Body: (Omit<EmailAuthParams, "redirectParams"> & {
50
+ redirectParams?: string;
51
+ }) | {
52
+ passkey: {
53
+ challenge: string;
54
+ attestation: Awaited<ReturnType<typeof getWebAuthnAttestation>>;
55
+ };
56
+ };
57
+ Response: SignupResponse;
58
+ },
59
+ {
60
+ Route: "/v1/whoami";
61
+ Body: {
62
+ stampedRequest: TSignedRequest;
63
+ };
64
+ Response: User;
65
+ },
66
+ {
67
+ Route: "/v1/auth";
68
+ Body: Omit<EmailAuthParams, "redirectParams"> & {
69
+ redirectParams?: string;
70
+ };
71
+ Response: {
72
+ orgId: string;
73
+ };
74
+ },
75
+ {
76
+ Route: "/v1/lookup";
77
+ Body: {
78
+ email: string;
79
+ };
80
+ Response: {
81
+ orgId: string | null;
82
+ };
83
+ },
84
+ {
85
+ Route: "/v1/sign-payload";
86
+ Body: {
87
+ stampedRequest: TSignedRequest;
88
+ };
89
+ Response: {
90
+ signature: Hex;
91
+ };
92
+ }
93
+ ];
94
+ export type AlchemySignerClientEvents = {
95
+ connected(user: User): void;
96
+ authenticating(): void;
97
+ connectedEmail(user: User, bundle: string): void;
98
+ connectedPasskey(user: User): void;
99
+ disconnected(): void;
100
+ };
101
+ export type AlchemySignerClientEvent = keyof AlchemySignerClientEvents;
102
+ export type GetWebAuthnAttestationResult = {
103
+ attestation: Awaited<ReturnType<typeof getWebAuthnAttestation>>;
104
+ challenge: ArrayBuffer;
105
+ authenticatorUserId: ArrayBuffer;
106
+ };
107
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { BaseError } from "@aa-sdk/core";
2
+ export declare class NotAuthenticatedError extends BaseError {
3
+ constructor();
4
+ }
5
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,qBAAa,qBAAsB,SAAQ,SAAS;;CAYnD"}
@@ -0,0 +1,9 @@
1
+ export type * from "./signer.js";
2
+ export { AlchemyWebSigner } from "./signer.js";
3
+ export type * from "./types.js";
4
+ export { AlchemySignerStatus } from "./types.js";
5
+ export { BaseSignerClient } from "./client/base.js";
6
+ export { AlchemySignerWebClient } from "./client/index.js";
7
+ export type * from "./client/types.js";
8
+ export { DEFAULT_SESSION_MS } from "./session/manager.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,aAAa,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,mBAAmB,mBAAmB,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}