@turnkey/core 1.0.0-beta.6 → 1.0.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 (39) hide show
  1. package/README.MD +3 -1
  2. package/dist/__clients__/core.d.ts +48 -3
  3. package/dist/__clients__/core.d.ts.map +1 -1
  4. package/dist/__clients__/core.js +173 -14
  5. package/dist/__clients__/core.js.map +1 -1
  6. package/dist/__clients__/core.mjs +174 -15
  7. package/dist/__clients__/core.mjs.map +1 -1
  8. package/dist/__generated__/sdk-client-base.d.ts +4 -0
  9. package/dist/__generated__/sdk-client-base.d.ts.map +1 -1
  10. package/dist/__generated__/sdk-client-base.js +58 -0
  11. package/dist/__generated__/sdk-client-base.js.map +1 -1
  12. package/dist/__generated__/sdk-client-base.mjs +58 -0
  13. package/dist/__generated__/sdk-client-base.mjs.map +1 -1
  14. package/dist/__generated__/version.d.ts +1 -1
  15. package/dist/__generated__/version.d.ts.map +1 -1
  16. package/dist/__generated__/version.js +1 -1
  17. package/dist/__generated__/version.mjs +1 -1
  18. package/dist/__inputs__/public_api.types.d.ts +114 -26
  19. package/dist/__inputs__/public_api.types.d.ts.map +1 -1
  20. package/dist/__wallet__/base.d.ts.map +1 -1
  21. package/dist/__wallet__/base.js +6 -6
  22. package/dist/__wallet__/base.js.map +1 -1
  23. package/dist/__wallet__/base.mjs +2 -2
  24. package/dist/__wallet__/base.mjs.map +1 -1
  25. package/dist/__wallet__/wallet-connect/base.js +5 -6
  26. package/dist/__wallet__/wallet-connect/base.js.map +1 -1
  27. package/dist/__wallet__/wallet-connect/base.mjs +1 -2
  28. package/dist/__wallet__/wallet-connect/base.mjs.map +1 -1
  29. package/dist/__wallet__/web/native/solana.js +1 -2
  30. package/dist/__wallet__/web/native/solana.js.map +1 -1
  31. package/dist/__wallet__/web/native/solana.mjs +1 -2
  32. package/dist/__wallet__/web/native/solana.mjs.map +1 -1
  33. package/dist/utils.d.ts +7 -5
  34. package/dist/utils.d.ts.map +1 -1
  35. package/dist/utils.js +30 -19
  36. package/dist/utils.js.map +1 -1
  37. package/dist/utils.mjs +29 -19
  38. package/dist/utils.mjs.map +1 -1
  39. package/package.json +8 -9
package/README.MD CHANGED
@@ -2,4 +2,6 @@
2
2
 
3
3
  A core JavaScript web and React Native package for interfacing with Turnkey's infrastructure.
4
4
 
5
- If you're using React, please use `@turnkey/react-wallet-kit` instead
5
+ If you're using React, please use [`@turnkey/react-wallet-kit`](https://www.npmjs.com/package/@turnkey/react-wallet-kit) instead.
6
+
7
+ To learn how to use `@turnkey/core`, check out [our docs!](https://docs.turnkey.com/sdks/typescript-frontend)
@@ -1,5 +1,5 @@
1
1
  import { TurnkeySDKClientBase } from "../__generated__/sdk-client-base";
2
- import { TDeleteSubOrganizationResponse, Session, TStampLoginResponse, v1AddressFormat, v1Attestation, v1Pagination, v1SignRawPayloadResult, v1TransactionType, v1User, ProxyTGetWalletKitConfigResponse, v1WalletAccountParams, v1PayloadEncoding, v1HashFunction, v1Curve, v1PrivateKey, WalletAuthResult, BaseAuthResult, AuthAction, PasskeyAuthResult } from "@turnkey/sdk-types";
2
+ import { TDeleteSubOrganizationResponse, Session, TStampLoginResponse, v1AddressFormat, v1Attestation, v1Pagination, v1SignRawPayloadResult, v1TransactionType, v1User, ProxyTGetWalletKitConfigResponse, v1WalletAccountParams, v1PayloadEncoding, v1HashFunction, v1Curve, v1PrivateKey, WalletAuthResult, BaseAuthResult, AuthAction, PasskeyAuthResult, v1CreatePolicyIntentV3 } from "@turnkey/sdk-types";
3
3
  import { ExportBundle, StamperType, TurnkeySDKClientConfig, WalletAccount, Wallet, OtpType, CreateSubOrgParams, Chain, WalletManagerBase, WalletProvider, SwitchableChain } from "../__types__/base";
4
4
  import { CrossPlatformApiKeyStamper } from "../__stampers__/api/base";
5
5
  import { CrossPlatformPasskeyStamper } from "../__stampers__/passkey/base";
@@ -112,7 +112,7 @@ export declare class TurnkeyClient {
112
112
  * @returns A promise that resolves to an array of wallet providers.
113
113
  * @throws {TurnkeyError} If the wallet manager is uninitialized or provider retrieval fails.
114
114
  */
115
- getWalletProviders: (chain?: Chain) => Promise<WalletProvider[]>;
115
+ fetchWalletProviders: (chain?: Chain) => Promise<WalletProvider[]>;
116
116
  /**
117
117
  * Connects the specified wallet account.
118
118
  *
@@ -144,7 +144,7 @@ export declare class TurnkeyClient {
144
144
  *
145
145
  * @param params.walletAccount - The wallet account whose provider should be switched.
146
146
  * @param params.chainOrId - The target chain, specified as a chain ID string or a SwitchableChain object.
147
- * @param params.walletProviders - Optional list of wallet providers to search; falls back to `getWalletProviders()` if omitted.
147
+ * @param params.walletProviders - Optional list of wallet providers to search; falls back to `fetchWalletProviders()` if omitted.
148
148
  * @returns A promise that resolves once the chain switch is complete.
149
149
  *
150
150
  * @throws {TurnkeyError} If the wallet manager is uninitialized, the provider is not connected, or the switch fails.
@@ -592,6 +592,51 @@ export declare class TurnkeyClient {
592
592
  userId?: string;
593
593
  stampWith?: StamperType | undefined;
594
594
  }) => Promise<v1User>;
595
+ /**
596
+ * Fetches an existing user by P-256 API key public key, or creates a new one if none exists.
597
+ *
598
+ * - This function is idempotent: multiple calls with the same `publicKey` will always return the same user.
599
+ * - Attempts to find a user whose API keys include the given P-256 public key.
600
+ * - If a matching user is found, it is returned as-is.
601
+ * - If no matching user is found, a new user is created with the given public key as a P-256 API key.
602
+ *
603
+ * @param params.publicKey - the P-256 public key to use for lookup and creation.
604
+ * @param params.createParams.userName - optional username to assign if creating a new user (defaults to `"Public Key User"`).
605
+ * @param params.createParams.apiKeyName - optional API key name to assign if creating a new API key (defaults to `public-key-user-${publicKey}`).
606
+ * @returns A promise that resolves to the existing or newly created {@link v1User}.
607
+ * @throws {TurnkeyError} If there is no active session, if the input is invalid, if user retrieval fails, or if user creation fails.
608
+ */
609
+ fetchOrCreateP256ApiKeyUser: (params: {
610
+ publicKey: string;
611
+ createParams?: {
612
+ apiKeyName?: string;
613
+ userName?: string;
614
+ };
615
+ }) => Promise<v1User>;
616
+ /**
617
+ * Fetches each requested policy if it exists, or creates it if it does not.
618
+ *
619
+ * - This function is idempotent: multiple calls with the same policies will not create duplicates.
620
+ * - For every policy in the request:
621
+ * - If it already exists, it is returned with its `policyId`.
622
+ * - If it does not exist, it is created and returned with its new `policyId`.
623
+ *
624
+ * @param params.policies - the list of policies to fetch or create.
625
+ * @returns A promise that resolves to an array of objects, each containing:
626
+ * - `policyId`: the unique identifier of the policy.
627
+ * - `policyName`: human-readable name of the policy.
628
+ * - `effect`: the instruction to DENY or ALLOW an activity.
629
+ * - `condition`: (optional) the condition expression that triggers the effect.
630
+ * - `consensus`: (optional) the consensus expression that triggers the effect.
631
+ * - `notes`: (optional) developer notes or description for the policy.
632
+ * @throws {TurnkeyError} If there is no active session, if the input is invalid,
633
+ * if fetching policies fails, or if creating policies fails.
634
+ */
635
+ fetchOrCreatePolicies: (params: {
636
+ policies: v1CreatePolicyIntentV3[];
637
+ }) => Promise<({
638
+ policyId: string;
639
+ } & v1CreatePolicyIntentV3)[]>;
595
640
  /**
596
641
  * Updates the user's email address.
597
642
  *
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/__clients__/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/__clients__/core.ts"],"names":[],"mappings":"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"}
@@ -73,7 +73,7 @@ class TurnkeyClient {
73
73
  }, {
74
74
  errorMessage: "Failed to create passkey",
75
75
  errorCode: sdkTypes.TurnkeyErrorCodes.CREATE_PASSKEY_ERROR,
76
- customMessageByMessages: {
76
+ customErrorsByMessages: {
77
77
  "timed out or was not allowed": {
78
78
  message: "Passkey creation was cancelled by the user.",
79
79
  code: sdkTypes.TurnkeyErrorCodes.SELECT_PASSKEY_CANCELLED,
@@ -162,7 +162,7 @@ class TurnkeyClient {
162
162
  }, {
163
163
  errorMessage: "Unable to log in with the provided passkey",
164
164
  errorCode: sdkTypes.TurnkeyErrorCodes.PASSKEY_LOGIN_AUTH_ERROR,
165
- customMessageByMessages: {
165
+ customErrorsByMessages: {
166
166
  "timed out or was not allowed": {
167
167
  message: "Passkey login was cancelled by the user.",
168
168
  code: sdkTypes.TurnkeyErrorCodes.SELECT_PASSKEY_CANCELLED,
@@ -284,7 +284,7 @@ class TurnkeyClient {
284
284
  * @returns A promise that resolves to an array of wallet providers.
285
285
  * @throws {TurnkeyError} If the wallet manager is uninitialized or provider retrieval fails.
286
286
  */
287
- this.getWalletProviders = async (chain) => {
287
+ this.fetchWalletProviders = async (chain) => {
288
288
  return utils.withTurnkeyErrorHandling(async () => {
289
289
  if (!this.walletManager) {
290
290
  throw new sdkTypes.TurnkeyError("Wallet manager is not initialized", sdkTypes.TurnkeyErrorCodes.WALLET_MANAGER_COMPONENT_NOT_INITIALIZED);
@@ -346,7 +346,7 @@ class TurnkeyClient {
346
346
  *
347
347
  * @param params.walletAccount - The wallet account whose provider should be switched.
348
348
  * @param params.chainOrId - The target chain, specified as a chain ID string or a SwitchableChain object.
349
- * @param params.walletProviders - Optional list of wallet providers to search; falls back to `getWalletProviders()` if omitted.
349
+ * @param params.walletProviders - Optional list of wallet providers to search; falls back to `fetchWalletProviders()` if omitted.
350
350
  * @returns A promise that resolves once the chain switch is complete.
351
351
  *
352
352
  * @throws {TurnkeyError} If the wallet manager is uninitialized, the provider is not connected, or the switch fails.
@@ -360,7 +360,7 @@ class TurnkeyClient {
360
360
  if (walletAccount.source === base.WalletSource.Embedded) {
361
361
  throw new sdkTypes.TurnkeyError("You can only switch chains for connected wallet accounts", sdkTypes.TurnkeyErrorCodes.NOT_FOUND);
362
362
  }
363
- const providers = walletProviders ?? (await this.getWalletProviders());
363
+ const providers = walletProviders ?? (await this.fetchWalletProviders());
364
364
  const walletProvider = utils.findWalletProviderFromAddress(walletAccount.address, providers);
365
365
  if (!walletProvider) {
366
366
  throw new sdkTypes.TurnkeyError("Wallet provider not found", sdkTypes.TurnkeyErrorCodes.SWITCH_WALLET_CHAIN_ERROR);
@@ -573,7 +573,7 @@ class TurnkeyClient {
573
573
  }, {
574
574
  errorMessage: "Failed to create stamped request for wallet login",
575
575
  errorCode: sdkTypes.TurnkeyErrorCodes.WALLET_LOGIN_OR_SIGNUP_ERROR,
576
- customMessageByMessages: {
576
+ customErrorsByMessages: {
577
577
  "Failed to sign the message": {
578
578
  message: "Wallet auth was cancelled by the user.",
579
579
  code: sdkTypes.TurnkeyErrorCodes.CONNECT_WALLET_CANCELLED,
@@ -697,7 +697,7 @@ class TurnkeyClient {
697
697
  }, {
698
698
  errorMessage: "Failed to initialize OTP",
699
699
  errorCode: sdkTypes.TurnkeyErrorCodes.INIT_OTP_ERROR,
700
- customMessageByMessages: {
700
+ customErrorsByMessages: {
701
701
  "Max number of OTPs have been initiated": {
702
702
  message: "Maximum number of OTPs has been reached for this contact.",
703
703
  code: sdkTypes.TurnkeyErrorCodes.MAX_OTP_INITIATED_ERROR,
@@ -747,7 +747,7 @@ class TurnkeyClient {
747
747
  }, {
748
748
  errorMessage: "Failed to verify OTP",
749
749
  errorCode: sdkTypes.TurnkeyErrorCodes.VERIFY_OTP_ERROR,
750
- customMessageByMessages: {
750
+ customErrorsByMessages: {
751
751
  "Invalid OTP code": {
752
752
  message: "The provided OTP code is invalid.",
753
753
  code: sdkTypes.TurnkeyErrorCodes.INVALID_OTP_CODE,
@@ -946,7 +946,7 @@ class TurnkeyClient {
946
946
  * @throws {TurnkeyError} If there is an error during the OAuth completion process, such as account lookup, sign-up, or login.
947
947
  */
948
948
  this.completeOauth = async (params) => {
949
- const { oidcToken, publicKey, createSubOrgParams, providerName = "OpenID Connect Provider" + Date.now(), sessionKey = base.SessionKey.DefaultSessionkey, invalidateExisting = false, } = params;
949
+ const { oidcToken, publicKey, createSubOrgParams, providerName = "OpenID Connect Provider" + " " + Date.now(), sessionKey = base.SessionKey.DefaultSessionkey, invalidateExisting = false, } = params;
950
950
  return utils.withTurnkeyErrorHandling(async () => {
951
951
  const accountRes = await this.httpClient.proxyGetAccount({
952
952
  filterType: "OIDC_TOKEN",
@@ -1029,7 +1029,7 @@ class TurnkeyClient {
1029
1029
  }, {
1030
1030
  errorMessage: "Failed to complete OAuth login",
1031
1031
  errorCode: sdkTypes.TurnkeyErrorCodes.OAUTH_LOGIN_ERROR,
1032
- customMessageByMessages: {
1032
+ customErrorsByMessages: {
1033
1033
  "OAUTH disallowed": {
1034
1034
  message: "OAuth is disabled on the dashboard for this organization.",
1035
1035
  code: sdkTypes.TurnkeyErrorCodes.AUTH_METHOD_NOT_ENABLED,
@@ -1134,7 +1134,7 @@ class TurnkeyClient {
1134
1134
  // if wallet connecting is disabled we return only embedded wallets
1135
1135
  if (!this.walletManager?.connector)
1136
1136
  return embedded;
1137
- const providers = walletProviders ?? (await this.getWalletProviders());
1137
+ const providers = walletProviders ?? (await this.fetchWalletProviders());
1138
1138
  const groupedProviders = new Map();
1139
1139
  for (const provider of providers) {
1140
1140
  // connected wallets don't all have some uuid we can use for the walletId
@@ -1219,7 +1219,7 @@ class TurnkeyClient {
1219
1219
  if (!this.walletManager?.connector)
1220
1220
  return [];
1221
1221
  const connected = [];
1222
- const providers = walletProviders ?? (await this.getWalletProviders());
1222
+ const providers = walletProviders ?? (await this.fetchWalletProviders());
1223
1223
  // Context: connected wallets don't all have some uuid we can use for the walletId so what
1224
1224
  // we do is we use a normalized version of the name for the wallet, like "metamask"
1225
1225
  // or "phantom-wallet"
@@ -1536,6 +1536,165 @@ class TurnkeyClient {
1536
1536
  errorCode: sdkTypes.TurnkeyErrorCodes.FETCH_USER_ERROR,
1537
1537
  });
1538
1538
  };
1539
+ /**
1540
+ * Fetches an existing user by P-256 API key public key, or creates a new one if none exists.
1541
+ *
1542
+ * - This function is idempotent: multiple calls with the same `publicKey` will always return the same user.
1543
+ * - Attempts to find a user whose API keys include the given P-256 public key.
1544
+ * - If a matching user is found, it is returned as-is.
1545
+ * - If no matching user is found, a new user is created with the given public key as a P-256 API key.
1546
+ *
1547
+ * @param params.publicKey - the P-256 public key to use for lookup and creation.
1548
+ * @param params.createParams.userName - optional username to assign if creating a new user (defaults to `"Public Key User"`).
1549
+ * @param params.createParams.apiKeyName - optional API key name to assign if creating a new API key (defaults to `public-key-user-${publicKey}`).
1550
+ * @returns A promise that resolves to the existing or newly created {@link v1User}.
1551
+ * @throws {TurnkeyError} If there is no active session, if the input is invalid, if user retrieval fails, or if user creation fails.
1552
+ */
1553
+ this.fetchOrCreateP256ApiKeyUser = async (params) => {
1554
+ const { publicKey, createParams } = params;
1555
+ return utils.withTurnkeyErrorHandling(async () => {
1556
+ const session = await this.storageManager.getActiveSession();
1557
+ if (!session) {
1558
+ throw new sdkTypes.TurnkeyError("No active session found. Please log in first.", sdkTypes.TurnkeyErrorCodes.NO_SESSION_FOUND);
1559
+ }
1560
+ const organizationId = session.organizationId;
1561
+ // we validate their input
1562
+ if (!publicKey?.trim()) {
1563
+ throw new sdkTypes.TurnkeyError("'publicKey' is required and cannot be empty.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
1564
+ }
1565
+ const usersResponse = await this.httpClient.getUsers({
1566
+ organizationId,
1567
+ });
1568
+ if (!usersResponse || !usersResponse.users) {
1569
+ throw new sdkTypes.TurnkeyError("No users found in the response", sdkTypes.TurnkeyErrorCodes.BAD_RESPONSE);
1570
+ }
1571
+ const userWithPublicKey = usersResponse.users.find((user) => user.apiKeys.some((apiKey) => apiKey.credential.publicKey === publicKey &&
1572
+ apiKey.credential.type === "CREDENTIAL_TYPE_API_KEY_P256"));
1573
+ // the user already exists, so we return it
1574
+ if (userWithPublicKey) {
1575
+ return userWithPublicKey;
1576
+ }
1577
+ // at this point we know the user doesn't exist, so we create it
1578
+ const userName = createParams?.userName?.trim() || "Public Key User";
1579
+ const apiKeyName = createParams?.apiKeyName?.trim() || `public-key-user-${publicKey}`;
1580
+ const createUserResp = await this.httpClient.createUsers({
1581
+ organizationId,
1582
+ users: [
1583
+ {
1584
+ userName: userName,
1585
+ userTags: [],
1586
+ apiKeys: [
1587
+ {
1588
+ apiKeyName: apiKeyName,
1589
+ curveType: "API_KEY_CURVE_P256",
1590
+ publicKey,
1591
+ },
1592
+ ],
1593
+ authenticators: [],
1594
+ oauthProviders: [],
1595
+ },
1596
+ ],
1597
+ });
1598
+ if (!createUserResp?.userIds ||
1599
+ createUserResp.userIds.length === 0 ||
1600
+ !createUserResp.userIds[0]) {
1601
+ throw new sdkTypes.TurnkeyError("Failed to create P-256 API key user", sdkTypes.TurnkeyErrorCodes.CREATE_USERS_ERROR);
1602
+ }
1603
+ const newUserId = createUserResp.userIds[0];
1604
+ return await this.fetchUser({
1605
+ organizationId,
1606
+ userId: newUserId,
1607
+ });
1608
+ }, {
1609
+ errorMessage: "Failed to get or create P-256 API key user",
1610
+ errorCode: sdkTypes.TurnkeyErrorCodes.CREATE_USERS_ERROR,
1611
+ });
1612
+ };
1613
+ /**
1614
+ * Fetches each requested policy if it exists, or creates it if it does not.
1615
+ *
1616
+ * - This function is idempotent: multiple calls with the same policies will not create duplicates.
1617
+ * - For every policy in the request:
1618
+ * - If it already exists, it is returned with its `policyId`.
1619
+ * - If it does not exist, it is created and returned with its new `policyId`.
1620
+ *
1621
+ * @param params.policies - the list of policies to fetch or create.
1622
+ * @returns A promise that resolves to an array of objects, each containing:
1623
+ * - `policyId`: the unique identifier of the policy.
1624
+ * - `policyName`: human-readable name of the policy.
1625
+ * - `effect`: the instruction to DENY or ALLOW an activity.
1626
+ * - `condition`: (optional) the condition expression that triggers the effect.
1627
+ * - `consensus`: (optional) the consensus expression that triggers the effect.
1628
+ * - `notes`: (optional) developer notes or description for the policy.
1629
+ * @throws {TurnkeyError} If there is no active session, if the input is invalid,
1630
+ * if fetching policies fails, or if creating policies fails.
1631
+ */
1632
+ this.fetchOrCreatePolicies = async (params) => {
1633
+ const { policies } = params;
1634
+ return await utils.withTurnkeyErrorHandling(async () => {
1635
+ const session = await this.storageManager.getActiveSession();
1636
+ if (!session) {
1637
+ throw new sdkTypes.TurnkeyError("No active session found. Please log in first.", sdkTypes.TurnkeyErrorCodes.NO_SESSION_FOUND);
1638
+ }
1639
+ if (!Array.isArray(policies) || policies.length === 0) {
1640
+ throw new sdkTypes.TurnkeyError("'policies' must be a non-empty array of policy definitions.", sdkTypes.TurnkeyErrorCodes.INVALID_REQUEST);
1641
+ }
1642
+ const organizationId = session.organizationId;
1643
+ // we first fetch existing policies
1644
+ const existingPoliciesResponse = await this.httpClient.getPolicies({
1645
+ organizationId,
1646
+ });
1647
+ const existingPolicies = existingPoliciesResponse.policies || [];
1648
+ // we create a map of existing policies by their signature
1649
+ // where the policySignature maps to its policyId
1650
+ const existingPoliciesSignatureMap = {};
1651
+ for (const existingPolicy of existingPolicies) {
1652
+ const signature = utils.getPolicySignature(existingPolicy);
1653
+ existingPoliciesSignatureMap[signature] = existingPolicy.policyId;
1654
+ }
1655
+ // we go through each requested policy and check if it already exists
1656
+ // if it exists, we add it to the alreadyExistingPolicies list
1657
+ // if it doesn't exist, we add it to the missingPolicies list
1658
+ const alreadyExistingPolicies = [];
1659
+ const missingPolicies = [];
1660
+ for (const policy of policies) {
1661
+ const existingId = existingPoliciesSignatureMap[utils.getPolicySignature(policy)];
1662
+ if (existingId) {
1663
+ alreadyExistingPolicies.push({ ...policy, policyId: existingId });
1664
+ }
1665
+ else {
1666
+ missingPolicies.push(policy);
1667
+ }
1668
+ }
1669
+ // if there are no missing policies, that means we're done
1670
+ // so we return them with their respective IDs
1671
+ if (missingPolicies.length === 0) {
1672
+ return alreadyExistingPolicies;
1673
+ }
1674
+ // at this point we know there is at least one missing policy.
1675
+ // so we create the missing policies and then return the full list
1676
+ const createPoliciesResponse = await this.httpClient.createPolicies({
1677
+ organizationId,
1678
+ policies: missingPolicies,
1679
+ });
1680
+ // assign returned IDs back to the missing ones in order
1681
+ if (!createPoliciesResponse || !createPoliciesResponse.policyIds) {
1682
+ throw new sdkTypes.TurnkeyError("Failed to create missing delegated access policies", sdkTypes.TurnkeyErrorCodes.CREATE_POLICY_ERROR);
1683
+ }
1684
+ const newlyCreatedPolicies = missingPolicies.map((p, idx) => ({
1685
+ ...p,
1686
+ // we can safely assert the ID exists because we know Turnkey's api
1687
+ // will return one ID for each created policy or throw an error
1688
+ policyId: createPoliciesResponse.policyIds[idx],
1689
+ }));
1690
+ // we return the full list of policies, both existing and the newly created
1691
+ // which includes each of their respective IDs
1692
+ return [...alreadyExistingPolicies, ...newlyCreatedPolicies];
1693
+ }, {
1694
+ errorMessage: "Failed to get or create delegated access policies",
1695
+ errorCode: sdkTypes.TurnkeyErrorCodes.CREATE_USERS_ERROR,
1696
+ });
1697
+ };
1539
1698
  /**
1540
1699
  * Updates the user's email address.
1541
1700
  *
@@ -2177,7 +2336,7 @@ class TurnkeyClient {
2177
2336
  }, {
2178
2337
  errorMessage: "Failed to import wallet",
2179
2338
  errorCode: sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR,
2180
- customMessageByMessages: {
2339
+ customErrorsByMessages: {
2181
2340
  "invalid mnemonic": {
2182
2341
  message: "Invalid mnemonic input",
2183
2342
  code: sdkTypes.TurnkeyErrorCodes.BAD_REQUEST,
@@ -2227,7 +2386,7 @@ class TurnkeyClient {
2227
2386
  }, {
2228
2387
  errorMessage: "Failed to import wallet",
2229
2388
  errorCode: sdkTypes.TurnkeyErrorCodes.IMPORT_WALLET_ERROR,
2230
- customMessageByMessages: {
2389
+ customErrorsByMessages: {
2231
2390
  "invalid mnemonic": {
2232
2391
  message: "Invalid mnemonic input",
2233
2392
  code: sdkTypes.TurnkeyErrorCodes.BAD_REQUEST,