@txnlab/use-wallet 0.1.23 → 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 (122) hide show
  1. package/README.md +252 -94
  2. package/dist/cjs/algod/index.d.ts +3 -2
  3. package/dist/cjs/clients/algosigner/client.d.ts +35 -0
  4. package/dist/cjs/clients/algosigner/constants.d.ts +2 -0
  5. package/dist/cjs/clients/algosigner/index.d.ts +2 -0
  6. package/dist/cjs/clients/algosigner/types.d.ts +40 -0
  7. package/dist/{esm/clients → cjs/clients/base}/base.d.ts +12 -25
  8. package/dist/cjs/clients/base/index.d.ts +2 -0
  9. package/dist/cjs/clients/defly/client.d.ts +37 -0
  10. package/dist/cjs/clients/defly/constants.d.ts +1 -0
  11. package/dist/cjs/clients/defly/index.d.ts +2 -0
  12. package/dist/cjs/clients/defly/types.d.ts +36 -0
  13. package/dist/cjs/clients/exodus/client.d.ts +33 -0
  14. package/dist/cjs/clients/exodus/constants.d.ts +1 -0
  15. package/dist/cjs/clients/exodus/index.d.ts +2 -0
  16. package/dist/cjs/clients/exodus/types.d.ts +40 -0
  17. package/dist/cjs/clients/index.d.ts +11 -15
  18. package/dist/cjs/clients/kmd/client.d.ts +29 -0
  19. package/dist/cjs/clients/kmd/constants.d.ts +1 -0
  20. package/dist/cjs/clients/kmd/index.d.ts +2 -0
  21. package/dist/cjs/clients/kmd/types.d.ts +38 -0
  22. package/dist/cjs/clients/{myalgowallet.d.ts → myalgo/client.d.ts} +14 -17
  23. package/dist/cjs/clients/myalgo/constants.d.ts +1 -0
  24. package/dist/cjs/clients/myalgo/index.d.ts +2 -0
  25. package/dist/cjs/clients/myalgo/types.d.ts +23 -0
  26. package/dist/cjs/clients/pera/client.d.ts +35 -0
  27. package/dist/cjs/clients/pera/constants.d.ts +1 -0
  28. package/dist/cjs/clients/pera/index.d.ts +2 -0
  29. package/dist/cjs/clients/pera/types.d.ts +36 -0
  30. package/dist/cjs/clients/walletconnect/client.d.ts +37 -0
  31. package/dist/cjs/clients/walletconnect/constants.d.ts +2 -0
  32. package/dist/cjs/clients/walletconnect/index.d.ts +2 -0
  33. package/dist/cjs/clients/walletconnect/types.d.ts +54 -0
  34. package/dist/cjs/constants/constants.d.ts +12 -16
  35. package/dist/cjs/hooks/index.d.ts +0 -1
  36. package/dist/cjs/hooks/useWallet.d.ts +140 -8
  37. package/dist/cjs/index.d.ts +4 -2
  38. package/dist/cjs/index.js +736 -739
  39. package/dist/cjs/index.js.map +1 -1
  40. package/dist/cjs/store/index.d.ts +1 -0
  41. package/dist/cjs/store/state/clientStore.d.ts +22 -0
  42. package/dist/cjs/types/node.d.ts +3 -0
  43. package/dist/cjs/types/wallet.d.ts +2 -2
  44. package/dist/cjs/utils/index.d.ts +2 -2
  45. package/dist/cjs/utils/initializeProviders.d.ts +13 -0
  46. package/dist/cjs/utils/reconnectProviders.d.ts +6 -0
  47. package/dist/esm/algod/index.d.ts +3 -2
  48. package/dist/esm/clients/algosigner/client.d.ts +35 -0
  49. package/dist/esm/clients/algosigner/constants.d.ts +2 -0
  50. package/dist/esm/clients/algosigner/index.d.ts +2 -0
  51. package/dist/esm/clients/algosigner/types.d.ts +40 -0
  52. package/dist/{cjs/clients → esm/clients/base}/base.d.ts +12 -25
  53. package/dist/esm/clients/base/index.d.ts +2 -0
  54. package/dist/esm/clients/defly/client.d.ts +37 -0
  55. package/dist/esm/clients/defly/constants.d.ts +1 -0
  56. package/dist/esm/clients/defly/index.d.ts +2 -0
  57. package/dist/esm/clients/defly/types.d.ts +36 -0
  58. package/dist/esm/clients/exodus/client.d.ts +33 -0
  59. package/dist/esm/clients/exodus/constants.d.ts +1 -0
  60. package/dist/esm/clients/exodus/index.d.ts +2 -0
  61. package/dist/esm/clients/exodus/types.d.ts +40 -0
  62. package/dist/esm/clients/index.d.ts +11 -15
  63. package/dist/esm/clients/kmd/client.d.ts +29 -0
  64. package/dist/esm/clients/kmd/constants.d.ts +1 -0
  65. package/dist/esm/clients/kmd/index.d.ts +2 -0
  66. package/dist/esm/clients/kmd/types.d.ts +38 -0
  67. package/dist/esm/clients/{myalgowallet.d.ts → myalgo/client.d.ts} +14 -17
  68. package/dist/esm/clients/myalgo/constants.d.ts +1 -0
  69. package/dist/esm/clients/myalgo/index.d.ts +2 -0
  70. package/dist/esm/clients/myalgo/types.d.ts +23 -0
  71. package/dist/esm/clients/pera/client.d.ts +35 -0
  72. package/dist/esm/clients/pera/constants.d.ts +1 -0
  73. package/dist/esm/clients/pera/index.d.ts +2 -0
  74. package/dist/esm/clients/pera/types.d.ts +36 -0
  75. package/dist/esm/clients/walletconnect/client.d.ts +37 -0
  76. package/dist/esm/clients/walletconnect/constants.d.ts +2 -0
  77. package/dist/esm/clients/walletconnect/index.d.ts +2 -0
  78. package/dist/esm/clients/walletconnect/types.d.ts +54 -0
  79. package/dist/esm/constants/constants.d.ts +12 -16
  80. package/dist/esm/hooks/index.d.ts +0 -1
  81. package/dist/esm/hooks/useWallet.d.ts +140 -8
  82. package/dist/esm/index.d.ts +4 -2
  83. package/dist/esm/index.js +724 -730
  84. package/dist/esm/store/index.d.ts +1 -0
  85. package/dist/esm/store/state/clientStore.d.ts +22 -0
  86. package/dist/esm/types/node.d.ts +3 -0
  87. package/dist/esm/types/wallet.d.ts +2 -2
  88. package/dist/esm/utils/index.d.ts +2 -2
  89. package/dist/esm/utils/initializeProviders.d.ts +13 -0
  90. package/dist/esm/utils/reconnectProviders.d.ts +6 -0
  91. package/dist/index.d.ts +669 -66
  92. package/package.json +2 -2
  93. package/dist/cjs/clients/algosigner.d.ts +0 -62
  94. package/dist/cjs/clients/defly.d.ts +0 -51
  95. package/dist/cjs/clients/exodus.d.ts +0 -52
  96. package/dist/cjs/clients/kmd.d.ts +0 -31
  97. package/dist/cjs/clients/perawallet.d.ts +0 -47
  98. package/dist/cjs/clients/walletconnect.d.ts +0 -47
  99. package/dist/cjs/hooks/useConnectWallet.d.ts +0 -30
  100. package/dist/cjs/providers/algosigner.d.ts +0 -2
  101. package/dist/cjs/providers/defly.d.ts +0 -2
  102. package/dist/cjs/providers/exodus.d.ts +0 -2
  103. package/dist/cjs/providers/index.d.ts +0 -9
  104. package/dist/cjs/providers/kmd.d.ts +0 -2
  105. package/dist/cjs/providers/myalgowallet.d.ts +0 -2
  106. package/dist/cjs/providers/perawallet.d.ts +0 -2
  107. package/dist/cjs/providers/walletconnect.d.ts +0 -2
  108. package/dist/esm/clients/algosigner.d.ts +0 -62
  109. package/dist/esm/clients/defly.d.ts +0 -51
  110. package/dist/esm/clients/exodus.d.ts +0 -52
  111. package/dist/esm/clients/kmd.d.ts +0 -31
  112. package/dist/esm/clients/perawallet.d.ts +0 -47
  113. package/dist/esm/clients/walletconnect.d.ts +0 -47
  114. package/dist/esm/hooks/useConnectWallet.d.ts +0 -30
  115. package/dist/esm/providers/algosigner.d.ts +0 -2
  116. package/dist/esm/providers/defly.d.ts +0 -2
  117. package/dist/esm/providers/exodus.d.ts +0 -2
  118. package/dist/esm/providers/index.d.ts +0 -9
  119. package/dist/esm/providers/kmd.d.ts +0 -2
  120. package/dist/esm/providers/myalgowallet.d.ts +0 -2
  121. package/dist/esm/providers/perawallet.d.ts +0 -2
  122. package/dist/esm/providers/walletconnect.d.ts +0 -2
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "url": "https://github.com/txnlab/use-wallet/issues"
13
13
  },
14
14
  "homepage": "https://txnlab.github.io/use-wallet",
15
- "version": "0.1.23",
15
+ "version": "1.0.0",
16
16
  "description": "React hooks for using Algorand compatible wallets in dApps.",
17
17
  "scripts": {
18
18
  "dev": "yarn storybook",
@@ -33,7 +33,7 @@
33
33
  "@blockshake/defly-connect": "^0.3.6",
34
34
  "@json-rpc-tools/utils": "^1.7.6",
35
35
  "@mdx-js/react": "^2.1.2",
36
- "@perawallet/connect": "^0.2.3",
36
+ "@perawallet/connect": "^1.0.7",
37
37
  "@randlabs/myalgo-connect": "^1.3.1",
38
38
  "@rollup/plugin-commonjs": "^23.0.2",
39
39
  "@rollup/plugin-json": "^5.0.1",
@@ -1,62 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://github.com/PureStake/algosigner/blob/develop/docs/dApp-integration.md
4
- */
5
- import type _algosdk from "algosdk";
6
- import BaseWallet from "./base";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { WalletProvider } from "../types";
9
- import { TransactionsArray } from "../types";
10
- declare type AlgoSignerTransaction = {
11
- txn: string;
12
- signers?: [];
13
- multisig?: string;
14
- };
15
- declare type SupportedLedgers = "MainNet" | "TestNet" | "BetaNet" | string;
16
- declare type AlgoSigner = {
17
- connect: () => Promise<Record<string, never>>;
18
- accounts: (ledger: {
19
- ledger: SupportedLedgers;
20
- }) => Promise<{
21
- address: string;
22
- }[]>;
23
- signTxn: (transactions: AlgoSignerTransaction[]) => Promise<{
24
- txID: string;
25
- blob: string;
26
- }[]>;
27
- encoding: {
28
- msgpackToBase64(transaction: Uint8Array): string;
29
- byteArrayToString(transaction: Uint8Array): string;
30
- };
31
- };
32
- declare type InitWallet = {
33
- client: AlgoSigner;
34
- id: PROVIDER_ID;
35
- provider: WalletProvider;
36
- algosdk: typeof _algosdk;
37
- algodClient: _algosdk.Algodv2;
38
- };
39
- declare class AlgoSignerClient extends BaseWallet {
40
- #private;
41
- id: PROVIDER_ID;
42
- provider: WalletProvider;
43
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
44
- static init(): Promise<AlgoSignerClient>;
45
- connect(): Promise<{
46
- accounts: {
47
- name: string;
48
- address: string;
49
- providerId: PROVIDER_ID;
50
- }[];
51
- id: PROVIDER_ID;
52
- name: string;
53
- icon: string;
54
- isWalletConnect: boolean;
55
- }>;
56
- reconnect(onDisconnect: () => void): Promise<null>;
57
- disconnect(): Promise<void>;
58
- formatTransactionsArray(transactions: TransactionsArray): AlgoSignerTransaction[];
59
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
60
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
61
- }
62
- export default AlgoSignerClient;
@@ -1,51 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://github.com/blockshake-io/defly-connect
4
- */
5
- import type _algosdk from "algosdk";
6
- import type { WalletProvider, Wallet } from "../types";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { Transaction } from "algosdk";
9
- import BaseWallet from "./base";
10
- import { TransactionsArray } from "../types";
11
- import type { DeflyWalletConnect } from "@blockshake/defly-connect";
12
- export interface DeflyTransaction {
13
- txn: Transaction;
14
- /**
15
- * Optional list of addresses that must sign the transactions.
16
- * Wallet skips to sign this txn if signers is empty array.
17
- * If undefined, wallet tries to sign it.
18
- */
19
- signers?: string[];
20
- }
21
- declare type InitWallet = {
22
- id: PROVIDER_ID;
23
- client: DeflyWalletConnect;
24
- provider: WalletProvider;
25
- algosdk: typeof _algosdk;
26
- algodClient: _algosdk.Algodv2;
27
- };
28
- declare class DeflyWalletClient extends BaseWallet {
29
- #private;
30
- id: PROVIDER_ID;
31
- provider: WalletProvider;
32
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
33
- static init(): Promise<DeflyWalletClient>;
34
- connect(onDisconnect: () => void): Promise<Wallet>;
35
- reconnect(onDisconnect: () => void): Promise<{
36
- accounts: {
37
- name: string;
38
- address: string;
39
- providerId: PROVIDER_ID;
40
- }[];
41
- id: PROVIDER_ID;
42
- name: string;
43
- icon: string;
44
- isWalletConnect: boolean;
45
- } | null>;
46
- disconnect(): Promise<void>;
47
- formatTransactionsArray(transactions: TransactionsArray): DeflyTransaction[];
48
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
49
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
50
- }
51
- export default DeflyWalletClient;
@@ -1,52 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://docs.exodus.com/api-reference/algorand-provider-api/
4
- */
5
- import type _algosdk from "algosdk";
6
- import BaseWallet from "./base";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { WalletProvider } from "../types";
9
- import { TransactionsArray } from "../types";
10
- declare type Bytes = Readonly<Uint8Array>;
11
- declare type Exodus = {
12
- isConnected: boolean;
13
- address: string | null;
14
- connect: () => Promise<{
15
- address: string;
16
- }>;
17
- disconnect: () => void;
18
- signAndSendTransaction(transactions: Bytes[]): Promise<{
19
- txId: string;
20
- }>;
21
- signTransaction(transactions: Bytes[]): Promise<Bytes[]>;
22
- };
23
- declare type InitWallet = {
24
- client: Exodus;
25
- id: PROVIDER_ID;
26
- provider: WalletProvider;
27
- algosdk: typeof _algosdk;
28
- algodClient: _algosdk.Algodv2;
29
- };
30
- declare class ExodusClient extends BaseWallet {
31
- #private;
32
- id: PROVIDER_ID;
33
- provider: WalletProvider;
34
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
35
- static init(): Promise<ExodusClient>;
36
- connect(): Promise<{
37
- accounts: {
38
- name: string;
39
- address: string;
40
- providerId: PROVIDER_ID;
41
- }[];
42
- id: PROVIDER_ID;
43
- name: string;
44
- icon: string;
45
- isWalletConnect: boolean;
46
- }>;
47
- reconnect(onDisconnect: () => void): Promise<null>;
48
- disconnect(): Promise<void>;
49
- signTransactions(connectedAccounts: string[], transactions: Array<Uint8Array>): Promise<Uint8Array[]>;
50
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
51
- }
52
- export default ExodusClient;
@@ -1,31 +0,0 @@
1
- import type _algosdk from "algosdk";
2
- import BaseWallet from "./base";
3
- import { PROVIDER_ID } from "../constants";
4
- import type { Account, Wallet, WalletProvider } from "../types";
5
- import { TransactionsArray } from "../types";
6
- declare type InitWallet = {
7
- client: _algosdk.Kmd;
8
- id: PROVIDER_ID;
9
- provider: WalletProvider;
10
- algosdk: typeof _algosdk;
11
- algodClient: _algosdk.Algodv2;
12
- };
13
- declare class KMDWallet extends BaseWallet {
14
- #private;
15
- walletId: string;
16
- id: PROVIDER_ID;
17
- provider: WalletProvider;
18
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
19
- static init(): Promise<KMDWallet>;
20
- connect(): Promise<Wallet>;
21
- disconnect(): Promise<void>;
22
- reconnect(): Promise<Wallet | null>;
23
- requestPassword(): Promise<string>;
24
- getWalletToken(walletId: string, password: string): Promise<string>;
25
- releaseToken(token: string): Promise<void>;
26
- listWallets(): Promise<Record<string, string>>;
27
- listAccounts(wallet: string, password: string): Promise<Array<Account>>;
28
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
29
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
30
- }
31
- export default KMDWallet;
@@ -1,47 +0,0 @@
1
- import type _algosdk from "algosdk";
2
- import type { PeraWalletConnect } from "@perawallet/connect";
3
- import type { WalletProvider, Wallet } from "../types";
4
- import { PROVIDER_ID } from "../constants";
5
- import type { Transaction } from "algosdk";
6
- import BaseWallet from "./base";
7
- import { TransactionsArray } from "../types";
8
- export interface PeraTransaction {
9
- txn: Transaction;
10
- /**
11
- * Optional list of addresses that must sign the transactions.
12
- * Wallet skips to sign this txn if signers is empty array.
13
- * If undefined, wallet tries to sign it.
14
- */
15
- signers?: string[];
16
- }
17
- declare type InitWallet = {
18
- id: PROVIDER_ID;
19
- client: PeraWalletConnect;
20
- provider: WalletProvider;
21
- algosdk: typeof _algosdk;
22
- algodClient: _algosdk.Algodv2;
23
- };
24
- declare class PeraWalletClient extends BaseWallet {
25
- #private;
26
- id: PROVIDER_ID;
27
- provider: WalletProvider;
28
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
29
- static init(): Promise<PeraWalletClient>;
30
- connect(onDisconnect: () => void): Promise<Wallet>;
31
- reconnect(onDisconnect: () => void): Promise<{
32
- accounts: {
33
- name: string;
34
- address: string;
35
- providerId: PROVIDER_ID;
36
- }[];
37
- id: PROVIDER_ID;
38
- name: string;
39
- icon: string;
40
- isWalletConnect: boolean;
41
- } | null>;
42
- disconnect(): Promise<void>;
43
- formatTransactionsArray(transactions: TransactionsArray): PeraTransaction[];
44
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
45
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
46
- }
47
- export default PeraWalletClient;
@@ -1,47 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://developer.algorand.org/docs/get-details/walletconnect/
4
- */
5
- import type _algosdk from "algosdk";
6
- import type WalletConnect from "@walletconnect/client";
7
- import type { WalletProvider, Wallet } from "../types/wallet";
8
- import { PROVIDER_ID } from "../constants";
9
- import BaseWallet from "./base";
10
- import { TransactionsArray } from "../types/api";
11
- declare type WalletConnectTransaction = {
12
- txn: string;
13
- message?: string;
14
- signers?: string[] | [];
15
- };
16
- declare type InitWallet = {
17
- id: PROVIDER_ID;
18
- client: WalletConnect;
19
- provider: WalletProvider;
20
- algosdk: typeof _algosdk;
21
- algodClient: _algosdk.Algodv2;
22
- };
23
- declare class WalletConnectClient extends BaseWallet {
24
- #private;
25
- id: PROVIDER_ID;
26
- provider: WalletProvider;
27
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
28
- static init(): Promise<WalletConnectClient>;
29
- connect(): Promise<Wallet>;
30
- reconnect(): Promise<{
31
- accounts: {
32
- name: string;
33
- address: string;
34
- providerId: PROVIDER_ID;
35
- }[];
36
- id: PROVIDER_ID;
37
- name: string;
38
- icon: string;
39
- isWalletConnect: boolean;
40
- } | null>;
41
- check(): boolean;
42
- disconnect(): Promise<void>;
43
- formatTransactionsArray(transactions: TransactionsArray): WalletConnectTransaction[];
44
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
45
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
46
- }
47
- export default WalletConnectClient;
@@ -1,30 +0,0 @@
1
- import { PROVIDER_ID } from "../types";
2
- declare type Options = Partial<{
3
- providers: PROVIDER_ID[];
4
- }>;
5
- export default function useConnectWallet(options?: Options): {
6
- providers: {
7
- id: PROVIDER_ID;
8
- name: string;
9
- icon: string;
10
- accounts: import("../types").Account[];
11
- activeAccount: import("../types").Account | null;
12
- isActive: boolean;
13
- isConnected: boolean;
14
- isWalletConnect: boolean;
15
- connect: () => Promise<void>;
16
- disconnect: () => Promise<void>;
17
- reconnect: () => Promise<void>;
18
- setActive: () => Promise<void>;
19
- selectAccount: (account: string) => Promise<void>;
20
- }[];
21
- activeAccount: import("../types").Account | null;
22
- accounts: import("../types").Account[];
23
- connect: (id: PROVIDER_ID) => Promise<void>;
24
- reconnect: (id: PROVIDER_ID) => Promise<void>;
25
- disconnect: (id: PROVIDER_ID) => Promise<void>;
26
- selectActiveAccount: (providerId: PROVIDER_ID, address: string) => Promise<void>;
27
- setActive: (id: PROVIDER_ID) => Promise<void>;
28
- reconnectProviders: () => Promise<void>;
29
- };
30
- export {};
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const ALGO_SIGNER: WalletProvider;
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const DEFLY: WalletProvider;
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const EXODUS: WalletProvider;
@@ -1,9 +0,0 @@
1
- export declare const providers: {
2
- "Pera Wallet": import("..").WalletProvider;
3
- "MyAlgo Wallet": import("..").WalletProvider;
4
- Defly: import("..").WalletProvider;
5
- "Algo Signer": import("..").WalletProvider;
6
- Exodus: import("..").WalletProvider;
7
- "KMD Wallet": import("..").WalletProvider;
8
- "Wallet Connect": import("..").WalletProvider;
9
- };
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const KMD_WALLET: WalletProvider;
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const MYALGO_WALLET: WalletProvider;
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const PERA_WALLET: WalletProvider;
@@ -1,2 +0,0 @@
1
- import type { WalletProvider } from "../types";
2
- export declare const WALLET_CONNECT: WalletProvider;
@@ -1,62 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://github.com/PureStake/algosigner/blob/develop/docs/dApp-integration.md
4
- */
5
- import type _algosdk from "algosdk";
6
- import BaseWallet from "./base";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { WalletProvider } from "../types";
9
- import { TransactionsArray } from "../types";
10
- declare type AlgoSignerTransaction = {
11
- txn: string;
12
- signers?: [];
13
- multisig?: string;
14
- };
15
- declare type SupportedLedgers = "MainNet" | "TestNet" | "BetaNet" | string;
16
- declare type AlgoSigner = {
17
- connect: () => Promise<Record<string, never>>;
18
- accounts: (ledger: {
19
- ledger: SupportedLedgers;
20
- }) => Promise<{
21
- address: string;
22
- }[]>;
23
- signTxn: (transactions: AlgoSignerTransaction[]) => Promise<{
24
- txID: string;
25
- blob: string;
26
- }[]>;
27
- encoding: {
28
- msgpackToBase64(transaction: Uint8Array): string;
29
- byteArrayToString(transaction: Uint8Array): string;
30
- };
31
- };
32
- declare type InitWallet = {
33
- client: AlgoSigner;
34
- id: PROVIDER_ID;
35
- provider: WalletProvider;
36
- algosdk: typeof _algosdk;
37
- algodClient: _algosdk.Algodv2;
38
- };
39
- declare class AlgoSignerClient extends BaseWallet {
40
- #private;
41
- id: PROVIDER_ID;
42
- provider: WalletProvider;
43
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
44
- static init(): Promise<AlgoSignerClient>;
45
- connect(): Promise<{
46
- accounts: {
47
- name: string;
48
- address: string;
49
- providerId: PROVIDER_ID;
50
- }[];
51
- id: PROVIDER_ID;
52
- name: string;
53
- icon: string;
54
- isWalletConnect: boolean;
55
- }>;
56
- reconnect(onDisconnect: () => void): Promise<null>;
57
- disconnect(): Promise<void>;
58
- formatTransactionsArray(transactions: TransactionsArray): AlgoSignerTransaction[];
59
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
60
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
61
- }
62
- export default AlgoSignerClient;
@@ -1,51 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://github.com/blockshake-io/defly-connect
4
- */
5
- import type _algosdk from "algosdk";
6
- import type { WalletProvider, Wallet } from "../types";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { Transaction } from "algosdk";
9
- import BaseWallet from "./base";
10
- import { TransactionsArray } from "../types";
11
- import type { DeflyWalletConnect } from "@blockshake/defly-connect";
12
- export interface DeflyTransaction {
13
- txn: Transaction;
14
- /**
15
- * Optional list of addresses that must sign the transactions.
16
- * Wallet skips to sign this txn if signers is empty array.
17
- * If undefined, wallet tries to sign it.
18
- */
19
- signers?: string[];
20
- }
21
- declare type InitWallet = {
22
- id: PROVIDER_ID;
23
- client: DeflyWalletConnect;
24
- provider: WalletProvider;
25
- algosdk: typeof _algosdk;
26
- algodClient: _algosdk.Algodv2;
27
- };
28
- declare class DeflyWalletClient extends BaseWallet {
29
- #private;
30
- id: PROVIDER_ID;
31
- provider: WalletProvider;
32
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
33
- static init(): Promise<DeflyWalletClient>;
34
- connect(onDisconnect: () => void): Promise<Wallet>;
35
- reconnect(onDisconnect: () => void): Promise<{
36
- accounts: {
37
- name: string;
38
- address: string;
39
- providerId: PROVIDER_ID;
40
- }[];
41
- id: PROVIDER_ID;
42
- name: string;
43
- icon: string;
44
- isWalletConnect: boolean;
45
- } | null>;
46
- disconnect(): Promise<void>;
47
- formatTransactionsArray(transactions: TransactionsArray): DeflyTransaction[];
48
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
49
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
50
- }
51
- export default DeflyWalletClient;
@@ -1,52 +0,0 @@
1
- /**
2
- * Helpful resources:
3
- * https://docs.exodus.com/api-reference/algorand-provider-api/
4
- */
5
- import type _algosdk from "algosdk";
6
- import BaseWallet from "./base";
7
- import { PROVIDER_ID } from "../constants";
8
- import type { WalletProvider } from "../types";
9
- import { TransactionsArray } from "../types";
10
- declare type Bytes = Readonly<Uint8Array>;
11
- declare type Exodus = {
12
- isConnected: boolean;
13
- address: string | null;
14
- connect: () => Promise<{
15
- address: string;
16
- }>;
17
- disconnect: () => void;
18
- signAndSendTransaction(transactions: Bytes[]): Promise<{
19
- txId: string;
20
- }>;
21
- signTransaction(transactions: Bytes[]): Promise<Bytes[]>;
22
- };
23
- declare type InitWallet = {
24
- client: Exodus;
25
- id: PROVIDER_ID;
26
- provider: WalletProvider;
27
- algosdk: typeof _algosdk;
28
- algodClient: _algosdk.Algodv2;
29
- };
30
- declare class ExodusClient extends BaseWallet {
31
- #private;
32
- id: PROVIDER_ID;
33
- provider: WalletProvider;
34
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
35
- static init(): Promise<ExodusClient>;
36
- connect(): Promise<{
37
- accounts: {
38
- name: string;
39
- address: string;
40
- providerId: PROVIDER_ID;
41
- }[];
42
- id: PROVIDER_ID;
43
- name: string;
44
- icon: string;
45
- isWalletConnect: boolean;
46
- }>;
47
- reconnect(onDisconnect: () => void): Promise<null>;
48
- disconnect(): Promise<void>;
49
- signTransactions(connectedAccounts: string[], transactions: Array<Uint8Array>): Promise<Uint8Array[]>;
50
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
51
- }
52
- export default ExodusClient;
@@ -1,31 +0,0 @@
1
- import type _algosdk from "algosdk";
2
- import BaseWallet from "./base";
3
- import { PROVIDER_ID } from "../constants";
4
- import type { Account, Wallet, WalletProvider } from "../types";
5
- import { TransactionsArray } from "../types";
6
- declare type InitWallet = {
7
- client: _algosdk.Kmd;
8
- id: PROVIDER_ID;
9
- provider: WalletProvider;
10
- algosdk: typeof _algosdk;
11
- algodClient: _algosdk.Algodv2;
12
- };
13
- declare class KMDWallet extends BaseWallet {
14
- #private;
15
- walletId: string;
16
- id: PROVIDER_ID;
17
- provider: WalletProvider;
18
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
19
- static init(): Promise<KMDWallet>;
20
- connect(): Promise<Wallet>;
21
- disconnect(): Promise<void>;
22
- reconnect(): Promise<Wallet | null>;
23
- requestPassword(): Promise<string>;
24
- getWalletToken(walletId: string, password: string): Promise<string>;
25
- releaseToken(token: string): Promise<void>;
26
- listWallets(): Promise<Record<string, string>>;
27
- listAccounts(wallet: string, password: string): Promise<Array<Account>>;
28
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
29
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
30
- }
31
- export default KMDWallet;
@@ -1,47 +0,0 @@
1
- import type _algosdk from "algosdk";
2
- import type { PeraWalletConnect } from "@perawallet/connect";
3
- import type { WalletProvider, Wallet } from "../types";
4
- import { PROVIDER_ID } from "../constants";
5
- import type { Transaction } from "algosdk";
6
- import BaseWallet from "./base";
7
- import { TransactionsArray } from "../types";
8
- export interface PeraTransaction {
9
- txn: Transaction;
10
- /**
11
- * Optional list of addresses that must sign the transactions.
12
- * Wallet skips to sign this txn if signers is empty array.
13
- * If undefined, wallet tries to sign it.
14
- */
15
- signers?: string[];
16
- }
17
- declare type InitWallet = {
18
- id: PROVIDER_ID;
19
- client: PeraWalletConnect;
20
- provider: WalletProvider;
21
- algosdk: typeof _algosdk;
22
- algodClient: _algosdk.Algodv2;
23
- };
24
- declare class PeraWalletClient extends BaseWallet {
25
- #private;
26
- id: PROVIDER_ID;
27
- provider: WalletProvider;
28
- constructor({ client, id, provider, algosdk, algodClient }: InitWallet);
29
- static init(): Promise<PeraWalletClient>;
30
- connect(onDisconnect: () => void): Promise<Wallet>;
31
- reconnect(onDisconnect: () => void): Promise<{
32
- accounts: {
33
- name: string;
34
- address: string;
35
- providerId: PROVIDER_ID;
36
- }[];
37
- id: PROVIDER_ID;
38
- name: string;
39
- icon: string;
40
- isWalletConnect: boolean;
41
- } | null>;
42
- disconnect(): Promise<void>;
43
- formatTransactionsArray(transactions: TransactionsArray): PeraTransaction[];
44
- signTransactions(connectedAccounts: string[], transactions: Uint8Array[]): Promise<Uint8Array[]>;
45
- signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
46
- }
47
- export default PeraWalletClient;