@pushchain/ui-kit 5.1.0 → 5.2.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 (117) hide show
  1. package/package.json +2 -1
  2. package/src/index.d.ts +2 -0
  3. package/src/lib/components/LoginModal/index.d.ts +23 -0
  4. package/src/lib/components/LoginModal/index.js +18 -19
  5. package/src/lib/components/LoginModal/index.js.map +1 -1
  6. package/src/lib/components/LoginModal/useSmartModalPosition.d.ts +6 -0
  7. package/src/lib/components/LoginModal/useSmartModalPosition.js +2 -1
  8. package/src/lib/components/LoginModal/useSmartModalPosition.js.map +1 -1
  9. package/src/lib/components/PushUniversalAccountButton/ConnectWalletButton.d.ts +11 -0
  10. package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.d.ts +11 -0
  11. package/src/lib/components/PushUniversalAccountButton/index.d.ts +17 -0
  12. package/src/lib/components/PushUniversalAccountButton/index.js +8 -9
  13. package/src/lib/components/PushUniversalAccountButton/index.js.map +1 -1
  14. package/src/lib/components/PushWalletToast/index.d.ts +8 -0
  15. package/src/lib/components/PushWalletToast/index.js +2 -2
  16. package/src/lib/components/PushWalletToast/index.js.map +1 -1
  17. package/src/lib/components/common/Button.d.ts +23 -0
  18. package/src/lib/components/common/Button.js +4 -1
  19. package/src/lib/components/common/Button.js.map +1 -1
  20. package/src/lib/components/common/Spinner.d.ts +6 -0
  21. package/src/lib/components/common/icons/ArbitrumMonotone.d.ts +2 -0
  22. package/src/lib/components/common/icons/AvalancheMonotone.d.ts +2 -0
  23. package/src/lib/components/common/icons/BaseMonotone.d.ts +2 -0
  24. package/src/lib/components/common/icons/BnbMonotone.d.ts +2 -0
  25. package/src/lib/components/common/icons/CaretDown.d.ts +6 -0
  26. package/src/lib/components/common/icons/CaretUp.d.ts +6 -0
  27. package/src/lib/components/common/icons/CrossIcon.d.ts +6 -0
  28. package/src/lib/components/common/icons/DashIcon.d.ts +2 -0
  29. package/src/lib/components/common/icons/EllipseIcon.d.ts +2 -0
  30. package/src/lib/components/common/icons/EthereumMonotone.d.ts +2 -0
  31. package/src/lib/components/common/icons/OptimismMonotone.d.ts +2 -0
  32. package/src/lib/components/common/icons/PolygonMonotone.d.ts +2 -0
  33. package/src/lib/components/common/icons/PushLogo.d.ts +2 -0
  34. package/src/lib/components/common/icons/PushMonotone.d.ts +2 -0
  35. package/src/lib/components/common/icons/SolanaMonotone.d.ts +2 -0
  36. package/src/lib/components/common/icons/TickIcon.d.ts +2 -0
  37. package/src/lib/components/common/icons/WarningIcon.d.ts +2 -0
  38. package/src/lib/components/common/icons/index.d.ts +14 -0
  39. package/src/lib/components/common/index.d.ts +3 -0
  40. package/src/lib/constants/environment.d.ts +15 -0
  41. package/src/lib/constants/environment.js +2 -2
  42. package/src/lib/constants/environment.js.map +1 -1
  43. package/src/lib/constants/index.d.ts +75 -0
  44. package/src/lib/constants/index.js +3 -0
  45. package/src/lib/constants/index.js.map +1 -1
  46. package/src/lib/context/WalletContext.d.ts +43 -0
  47. package/src/lib/context/WalletContext.js +141 -161
  48. package/src/lib/context/WalletContext.js.map +1 -1
  49. package/src/lib/context/WalletContextMap.d.ts +2 -0
  50. package/src/lib/helpers/index.d.ts +1 -0
  51. package/src/lib/helpers/txnAuthGuard.d.ts +10 -0
  52. package/src/lib/helpers/txnAuthGuard.js +19 -18
  53. package/src/lib/helpers/txnAuthGuard.js.map +1 -1
  54. package/src/lib/helpers/wallet.helpers.d.ts +8 -0
  55. package/src/lib/hooks/useAppMetadata.d.ts +1 -0
  56. package/src/lib/hooks/useAppMetadata.js +1 -1
  57. package/src/lib/hooks/useAppMetadata.js.map +1 -1
  58. package/src/lib/hooks/usePushChain.d.ts +4 -0
  59. package/src/lib/hooks/usePushChainClient.d.ts +6 -0
  60. package/src/lib/hooks/usePushChainClient.js +14 -12
  61. package/src/lib/hooks/usePushChainClient.js.map +1 -1
  62. package/src/lib/hooks/usePushWallet.d.ts +2 -0
  63. package/src/lib/index.d.ts +7 -0
  64. package/src/lib/polyfills/index.d.ts +4 -0
  65. package/src/lib/providers/PushWalletProvider.d.ts +3 -0
  66. package/src/lib/providers/PushWalletProvider.js +8 -28
  67. package/src/lib/providers/PushWalletProvider.js.map +1 -1
  68. package/src/lib/providers/theme/ThemeContext.d.ts +0 -0
  69. package/src/lib/providers/theme/ThemeContext.js +1 -0
  70. package/src/lib/providers/waap/initWaap.d.ts +2 -0
  71. package/src/lib/providers/waap/initWaap.js +16 -0
  72. package/src/lib/providers/waap/initWaap.js.map +1 -0
  73. package/src/lib/providers/waap/useWaapAuth.d.ts +13 -0
  74. package/src/lib/providers/waap/useWaapAuth.js +69 -0
  75. package/src/lib/providers/waap/useWaapAuth.js.map +1 -0
  76. package/src/lib/providers/waap/waap.config.d.ts +4 -0
  77. package/src/lib/providers/waap/waap.config.js +64 -0
  78. package/src/lib/providers/waap/waap.config.js.map +1 -0
  79. package/src/lib/providers/waap/waapEvents.d.ts +7 -0
  80. package/src/lib/providers/waap/waapEvents.js +44 -0
  81. package/src/lib/providers/waap/waapEvents.js.map +1 -0
  82. package/src/lib/providers/waap/waapProvider.d.ts +8 -0
  83. package/src/lib/providers/waap/waapProvider.js +145 -0
  84. package/src/lib/providers/waap/waapProvider.js.map +1 -0
  85. package/src/lib/providers/walletProviders/BaseWalletProvider.d.ts +19 -0
  86. package/src/lib/providers/walletProviders/WalletProviderRegistry.d.ts +13 -0
  87. package/src/lib/providers/walletProviders/WalletProviderRegistry.js +2 -1
  88. package/src/lib/providers/walletProviders/WalletProviderRegistry.js.map +1 -1
  89. package/src/lib/providers/walletProviders/ethereum/chains.d.ts +42 -0
  90. package/src/lib/providers/walletProviders/ethereum/chains.js +1 -4
  91. package/src/lib/providers/walletProviders/ethereum/chains.js.map +1 -1
  92. package/src/lib/providers/walletProviders/ethereum/metamask.d.ts +18 -0
  93. package/src/lib/providers/walletProviders/ethereum/metamask.js +50 -49
  94. package/src/lib/providers/walletProviders/ethereum/metamask.js.map +1 -1
  95. package/src/lib/providers/walletProviders/ethereum/rabby.d.ts +17 -0
  96. package/src/lib/providers/walletProviders/ethereum/rabby.js +44 -45
  97. package/src/lib/providers/walletProviders/ethereum/rabby.js.map +1 -1
  98. package/src/lib/providers/walletProviders/ethereum/walletConnect.d.ts +17 -0
  99. package/src/lib/providers/walletProviders/ethereum/walletConnect.js +68 -66
  100. package/src/lib/providers/walletProviders/ethereum/walletConnect.js.map +1 -1
  101. package/src/lib/providers/walletProviders/ethereum/zerion.d.ts +17 -0
  102. package/src/lib/providers/walletProviders/ethereum/zerion.js +44 -45
  103. package/src/lib/providers/walletProviders/ethereum/zerion.js.map +1 -1
  104. package/src/lib/providers/walletProviders/helpers/address.d.ts +11 -0
  105. package/src/lib/providers/walletProviders/solana/phantom.d.ts +46 -0
  106. package/src/lib/providers/walletProviders/solana/phantom.js +60 -56
  107. package/src/lib/providers/walletProviders/solana/phantom.js.map +1 -1
  108. package/src/lib/providers/walletProviders/utils/eip6963.d.ts +12 -0
  109. package/src/lib/providers/walletProviders/utils/eip6963.js +4 -2
  110. package/src/lib/providers/walletProviders/utils/eip6963.js.map +1 -1
  111. package/src/lib/styles/token.d.ts +76 -0
  112. package/src/lib/styles/token.js +1 -5
  113. package/src/lib/styles/token.js.map +1 -1
  114. package/src/lib/types/PushWalletProvider.types.d.ts +71 -0
  115. package/src/lib/types/index.d.ts +2 -0
  116. package/src/lib/types/wallet.types.d.ts +52 -0
  117. package/src/lib/utils/theme.d.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"eip6963.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/utils/eip6963.ts"],"names":[],"mappings":";;AAaA,oDAYC;AAED,4DAEC;AAED,wDAEC;AAvBD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAiC,CAAC;AAC3D,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,SAAgB,oBAAoB;IAClC,IAAI,WAAW,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IACzD,WAAW,GAAG,IAAI,CAAC;IAEnB,MAAM,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,CAAC,CAAC,KAAU,EAAE,EAAE;QAClE,MAAM,MAAM,GAAG,KAAK,CAAC,MAA+B,CAAC;QACrD,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI;YAAE,OAAO;QAChC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAkB,CAAC,CAAC;IAErB,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAChE,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,wBAAwB,CAAC,IAAY;IACnD,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;AACvC,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"eip6963.js","sourceRoot":"","sources":["../../../../../../../../packages/ui-kit/src/lib/providers/walletProviders/utils/eip6963.ts"],"names":[],"mappings":";;AAaA,oDAYC;AAED,4DAEC;AAED,wDAEC;AAvBD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAiC,CAAC;AAC3D,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,SAAgB,oBAAoB;IAClC,IAAI,WAAW,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IACzD,WAAW,GAAG,IAAI,CAAC;IAEnB,MAAM,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,CAAC,CAAC,KAAU,EAAE,EAAE;;QAClE,MAAM,MAAM,GAAG,KAAK,CAAC,MAA+B,CAAC;QACrD,IAAI,CAAC,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,0CAAE,IAAI,CAAA;YAAE,OAAO;QAChC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAkB,CAAC,CAAC;IAErB,MAAM,YAAY,GAAG,IAAI,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAChE,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,wBAAwB,CAAC,IAAY;;IACnD,OAAO,MAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,0CAAE,QAAQ,CAAC;AACvC,CAAC;AAED,SAAgB,sBAAsB;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,76 @@
1
+ type ColorThemeTokens = {
2
+ '--pw-core-brand-primary-color': string;
3
+ '--pw-core-text-primary-color': string;
4
+ '--pw-core-text-secondary-color': string;
5
+ '--pw-core-text-tertiary-color': string;
6
+ '--pw-core-text-link-color': string;
7
+ '--pw-core-text-disabled-color': string;
8
+ '--pw-core-bg-primary-color': string;
9
+ '--pw-core-bg-secondary-color': string;
10
+ '--pw-core-bg-tertiary-color': string;
11
+ '--pw-core-bg-disabled-color': string;
12
+ '--pw-core-success-primary-color': string;
13
+ '--pw-core-error-primary-color': string;
14
+ '--pw-core-btn-primary-bg-color': string;
15
+ '--pw-core-btn-primary-text-color': string;
16
+ '--pwauth-btn-connect-text-color': string;
17
+ '--pwauth-btn-connect-bg-color': string;
18
+ '--pwauth-btn-connected-text-color': string;
19
+ '--pwauth-btn-connected-bg-color': string;
20
+ '--pwauth-btn-connect-border-radius': string;
21
+ };
22
+ type ThemeTokens = ColorThemeTokens & {
23
+ '--pw-core-font-family': string;
24
+ '--pw-core-text-size': string;
25
+ '--pw-core-modal-border': string;
26
+ '--pw-core-modal-border-radius': string;
27
+ '--pw-core-modal-width': string;
28
+ '--pw-core-modal-padding': string;
29
+ '--pw-core-list-spacing': string;
30
+ '--pw-core-btn-border-radius': string;
31
+ '--pwauth-btn-connect-border-radius': string;
32
+ };
33
+ type ButtonColorTokens = {
34
+ '--pwauth-btn-connect-text-color': string;
35
+ '--pwauth-btn-connect-bg-color': string;
36
+ '--pwauth-btn-connected-text-color': string;
37
+ '--pwauth-btn-connected-bg-color': string;
38
+ };
39
+ type ButtonThemeTokens = ButtonColorTokens & {
40
+ '--pwauth-btn-connect-border-radius': string;
41
+ };
42
+ export type ThemeOverrides = Partial<ThemeTokens> & {
43
+ light?: Partial<ColorThemeTokens>;
44
+ dark?: Partial<ColorThemeTokens>;
45
+ };
46
+ export type ButtonThemeOverrides = Partial<ButtonThemeTokens> & {
47
+ light?: Partial<ButtonColorTokens>;
48
+ dark?: Partial<ButtonColorTokens>;
49
+ };
50
+ export declare const themeDefault: {
51
+ '--pw-int-text-heading-xsmall-size': string;
52
+ '--pw-int-text-body-large-size': string;
53
+ '--pw-int-font-family': string;
54
+ '--pw-int-modal-width': string;
55
+ };
56
+ export declare const lightThemeDefault: {
57
+ '--pw-int-bg-primary-color': string;
58
+ '--pw-int-text-primary-color': string;
59
+ '--pw-int-text-secondary-color': string;
60
+ '--pw-int-brand-primary-color': string;
61
+ };
62
+ export declare const darkThemeDefault: {
63
+ '--pw-int-bg-primary-color': string;
64
+ '--pw-int-text-primary-color': string;
65
+ '--pw-int-text-secondary-color': string;
66
+ '--pw-int-brand-primary-color': string;
67
+ };
68
+ export declare const buttonThemeDefault: {
69
+ '--pwauth-btn-connect-text-color': string;
70
+ '--pwauth-btn-connect-bg-color': string;
71
+ '--pwauth-btn-connected-text-color': string;
72
+ '--pwauth-btn-connected-bg-color': string;
73
+ '--pwauth-btn-connect-border-radius': string;
74
+ };
75
+ export declare const defaultThemeKeys: string[];
76
+ export {};
@@ -26,9 +26,5 @@ exports.buttonThemeDefault = {
26
26
  '--pwauth-btn-connected-bg-color': '#000',
27
27
  '--pwauth-btn-connect-border-radius': '12px',
28
28
  };
29
- exports.defaultThemeKeys = Object.keys({
30
- ...exports.themeDefault,
31
- ...exports.lightThemeDefault,
32
- ...exports.buttonThemeDefault,
33
- });
29
+ exports.defaultThemeKeys = Object.keys(Object.assign(Object.assign(Object.assign({}, exports.themeDefault), exports.lightThemeDefault), exports.buttonThemeDefault));
34
30
  //# sourceMappingURL=token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/styles/token.ts"],"names":[],"mappings":";;;AAyEa,QAAA,YAAY,GAAG;IAC1B,mCAAmC,EAAE,MAAM;IAC3C,+BAA+B,EAAE,MAAM;IACvC,sBAAsB,EAAE,qBAAqB;IAC7C,sBAAsB,EAAE,OAAO;CAChC,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC/B,2BAA2B,EAAE,SAAS;IACtC,6BAA6B,EAAE,SAAS;IACxC,+BAA+B,EAAE,SAAS;IAC1C,8BAA8B,EAAE,SAAS;CAC1C,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC9B,2BAA2B,EAAE,SAAS;IACtC,6BAA6B,EAAE,SAAS;IACxC,+BAA+B,EAAE,SAAS;IAC1C,8BAA8B,EAAE,SAAS;CAC1C,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,iCAAiC,EAAE,MAAM;IACzC,+BAA+B,EAAE,SAAS;IAC1C,mCAAmC,EAAE,MAAM;IAC3C,iCAAiC,EAAE,MAAM;IACzC,oCAAoC,EAAE,MAAM;CAC7C,CAAC;AAEW,QAAA,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC;IAC1C,GAAG,oBAAY;IACf,GAAG,yBAAiB;IACpB,GAAG,0BAAkB;CACtB,CAAC,CAAC"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../../../packages/ui-kit/src/lib/styles/token.ts"],"names":[],"mappings":";;;AAyEa,QAAA,YAAY,GAAG;IAC1B,mCAAmC,EAAE,MAAM;IAC3C,+BAA+B,EAAE,MAAM;IACvC,sBAAsB,EAAE,qBAAqB;IAC7C,sBAAsB,EAAE,OAAO;CAChC,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC/B,2BAA2B,EAAE,SAAS;IACtC,6BAA6B,EAAE,SAAS;IACxC,+BAA+B,EAAE,SAAS;IAC1C,8BAA8B,EAAE,SAAS;CAC1C,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC9B,2BAA2B,EAAE,SAAS;IACtC,6BAA6B,EAAE,SAAS;IACxC,+BAA+B,EAAE,SAAS;IAC1C,8BAA8B,EAAE,SAAS;CAC1C,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,iCAAiC,EAAE,MAAM;IACzC,+BAA+B,EAAE,SAAS;IAC1C,mCAAmC,EAAE,MAAM;IAC3C,iCAAiC,EAAE,MAAM;IACzC,oCAAoC,EAAE,MAAM;CAC7C,CAAC;AAEW,QAAA,gBAAgB,GAAG,MAAM,CAAC,IAAI,+CACtC,oBAAY,GACZ,yBAAiB,GACjB,0BAAkB,EACrB,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { CHAIN, PUSH_NETWORK } from '@pushchain/core/src/lib/constants/enums';
2
+ import { PushUI } from '../constants';
3
+ import { ThemeOverrides } from '../styles/token';
4
+ export type LoginMethodConfig = {
5
+ email?: boolean;
6
+ google?: boolean;
7
+ phone?: boolean;
8
+ socials?: {
9
+ discord?: boolean;
10
+ github?: boolean;
11
+ x?: boolean;
12
+ bluesky?: boolean;
13
+ };
14
+ wallet?: {
15
+ enabled?: boolean;
16
+ chains?: (typeof PushUI.CONSTANTS.CHAIN)[keyof typeof PushUI.CONSTANTS.CHAIN][];
17
+ excludedChains?: (typeof PushUI.CONSTANTS.CHAIN)[keyof typeof PushUI.CONSTANTS.CHAIN][];
18
+ };
19
+ appPreview?: boolean;
20
+ };
21
+ export type ChainConfig = {
22
+ rpcUrls?: Partial<Record<CHAIN, string[]>>;
23
+ blockExplorers?: Partial<Record<CHAIN, string[]>>;
24
+ printTraces?: boolean;
25
+ };
26
+ export type ProviderConfigProps = {
27
+ uid?: string;
28
+ network: PUSH_NETWORK;
29
+ rpcUrl?: string;
30
+ login?: LoginMethodConfig;
31
+ modal?: ModalProps;
32
+ chainConfig?: ChainConfig;
33
+ version?: 4 | 5;
34
+ };
35
+ export type AppMetadata = {
36
+ title?: string;
37
+ logoUrl?: string;
38
+ description?: string;
39
+ };
40
+ export type ModalProps = {
41
+ /**
42
+ * “split” shows the preview pane side-by-side with the iframe
43
+ * “simple” shows only the iframe (no preview)
44
+ */
45
+ loginLayout?: typeof PushUI.CONSTANTS.LOGIN.LAYOUT.SPLIT | typeof PushUI.CONSTANTS.LOGIN.LAYOUT.SIMPLE;
46
+ /** if true (and `app` is provided), show the preview pane in the wrapper */
47
+ appPreview?: boolean;
48
+ /** CSS background-image for wrapper or preview pane */
49
+ bgImage?: string;
50
+ /** when connected, how the account menu appears */
51
+ connectedLayout?: typeof PushUI.CONSTANTS.CONNECTED.LAYOUT.FULL | typeof PushUI.CONSTANTS.CONNECTED.LAYOUT.HOVER;
52
+ connectedInteraction?: typeof PushUI.CONSTANTS.CONNECTED.INTERACTION.INTERACTIVE | typeof PushUI.CONSTANTS.CONNECTED.INTERACTION.BLUR;
53
+ };
54
+ export type ThemeMode = typeof PushUI.CONSTANTS.THEME.LIGHT | typeof PushUI.CONSTANTS.THEME.DARK;
55
+ export type PushWalletProviderProps = {
56
+ children: React.ReactNode;
57
+ config: ProviderConfigProps;
58
+ app?: AppMetadata;
59
+ themeMode?: ThemeMode;
60
+ themeOverrides?: ThemeOverrides;
61
+ };
62
+ export type ModalAppDetails = {
63
+ logoURL?: string;
64
+ title?: string;
65
+ description?: string;
66
+ };
67
+ export type WalletAppDetails = {
68
+ logoURL?: string;
69
+ title?: string;
70
+ description?: string;
71
+ };
@@ -0,0 +1,2 @@
1
+ export * from './wallet.types';
2
+ export * from './PushWalletProvider.types';
@@ -0,0 +1,52 @@
1
+ import { CHAIN } from '@pushchain/core/src/lib/constants/enums';
2
+ import { TypedData, TypedDataDomain } from 'viem';
3
+ export declare enum ChainType {
4
+ ETHEREUM = "sepolia",
5
+ SOLANA = "solana",
6
+ BINANCE = "bscTestnet",
7
+ ARBITRUM = "arbitrumSepolia",
8
+ BASE = "baseSepolia",
9
+ AVALANCHE = "avalanche",
10
+ WALLET_CONNECT = "walletConnect",
11
+ PUSH_WALLET = "pushWalletDonut"
12
+ }
13
+ export interface WalletInfo {
14
+ address: string;
15
+ chainType: ChainType;
16
+ providerName: string;
17
+ }
18
+ export interface ITypedData {
19
+ domain: TypedDataDomain;
20
+ types: TypedData;
21
+ primaryType: string;
22
+ message: Record<string, unknown>;
23
+ }
24
+ export interface IWalletProvider {
25
+ name: string;
26
+ icon: string;
27
+ supportedChains: ChainType[];
28
+ connect(chainType?: ChainType): Promise<{
29
+ caipAddress: string;
30
+ }>;
31
+ signMessage(message: Uint8Array): Promise<Uint8Array>;
32
+ signAndSendTransaction(txn: Uint8Array): Promise<Uint8Array>;
33
+ signTypedData(typedData: ITypedData): Promise<Uint8Array>;
34
+ disconnect(): Promise<void>;
35
+ getChainId(): Promise<unknown>;
36
+ switchNetwork?(chainName: ChainType): Promise<void>;
37
+ }
38
+ export type UniversalAccount = {
39
+ chain: CHAIN;
40
+ address: string;
41
+ };
42
+ export declare enum ConnectionStatus {
43
+ NOT_CONNECTED = "notConnected",
44
+ CONNECTING = "connecting",
45
+ AUTHENTICATING = "authenticating",
46
+ CONNECTED = "connected",
47
+ RETRY = "retry"
48
+ }
49
+ export type WalletEventRespoonse = {
50
+ signature?: Uint8Array;
51
+ account?: UniversalAccount;
52
+ };
@@ -0,0 +1,2 @@
1
+ export declare const mapCoreToInt: (obj: Record<string, string | undefined>) => Record<string, string>;
2
+ export declare const mapButtonCoreToInt: (obj: Record<string, string | undefined>) => Record<string, string>;