@sats-connect/core 0.0.1-728fcd4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -0
- package/dist/adapters/BaseAdapter.d.ts +9 -0
- package/dist/adapters/BaseAdapter.js +17 -0
- package/dist/adapters/BaseAdapter.js.map +1 -0
- package/dist/adapters/index.d.ts +6 -0
- package/dist/adapters/index.js +41 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/satsConnectAdapter.d.ts +7 -0
- package/dist/adapters/satsConnectAdapter.js +7 -0
- package/dist/adapters/satsConnectAdapter.js.map +1 -0
- package/dist/adapters/unisat.d.ts +38 -0
- package/dist/adapters/unisat.js +159 -0
- package/dist/adapters/unisat.js.map +1 -0
- package/dist/adapters/xverse.d.ts +8 -0
- package/dist/adapters/xverse.js +13 -0
- package/dist/adapters/xverse.js.map +1 -0
- package/dist/addresses/index.d.ts +3 -0
- package/dist/addresses/index.js +38 -0
- package/dist/addresses/index.js.map +1 -0
- package/dist/addresses/types.d.ts +28 -0
- package/dist/addresses/types.js +19 -0
- package/dist/addresses/types.js.map +1 -0
- package/dist/capabilities/index.d.ts +3 -0
- package/dist/capabilities/index.js +70 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/types.d.ts +6 -0
- package/dist/capabilities/types.js +3 -0
- package/dist/capabilities/types.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/inscriptions/createInscription.d.ts +2 -0
- package/dist/inscriptions/createInscription.js +22 -0
- package/dist/inscriptions/createInscription.js.map +1 -0
- package/dist/inscriptions/createRepeatInscriptions.d.ts +2 -0
- package/dist/inscriptions/createRepeatInscriptions.js +22 -0
- package/dist/inscriptions/createRepeatInscriptions.js.map +1 -0
- package/dist/inscriptions/index.d.ts +3 -0
- package/dist/inscriptions/index.js +20 -0
- package/dist/inscriptions/index.js.map +1 -0
- package/dist/inscriptions/types.d.ts +21 -0
- package/dist/inscriptions/types.js +3 -0
- package/dist/inscriptions/types.js.map +1 -0
- package/dist/inscriptions/utils.d.ts +2 -0
- package/dist/inscriptions/utils.js +26 -0
- package/dist/inscriptions/utils.js.map +1 -0
- package/dist/messages/index.d.ts +3 -0
- package/dist/messages/index.js +41 -0
- package/dist/messages/index.js.map +1 -0
- package/dist/messages/types.d.ts +7 -0
- package/dist/messages/types.js +3 -0
- package/dist/messages/types.js.map +1 -0
- package/dist/provider/index.d.ts +10 -0
- package/dist/provider/index.js +74 -0
- package/dist/provider/index.js.map +1 -0
- package/dist/provider/types.d.ts +46 -0
- package/dist/provider/types.js +3 -0
- package/dist/provider/types.js.map +1 -0
- package/dist/request/index.d.ts +4 -0
- package/dist/request/index.js +47 -0
- package/dist/request/index.js.map +1 -0
- package/dist/request/types/btcMethods.d.ts +127 -0
- package/dist/request/types/btcMethods.js +6 -0
- package/dist/request/types/btcMethods.js.map +1 -0
- package/dist/request/types/index.d.ts +27 -0
- package/dist/request/types/index.js +19 -0
- package/dist/request/types/index.js.map +1 -0
- package/dist/request/types/stxMethods.d.ts +181 -0
- package/dist/request/types/stxMethods.js +3 -0
- package/dist/request/types/stxMethods.js.map +1 -0
- package/dist/transactions/index.d.ts +4 -0
- package/dist/transactions/index.js +21 -0
- package/dist/transactions/index.js.map +1 -0
- package/dist/transactions/sendBtcTransaction.d.ts +2 -0
- package/dist/transactions/sendBtcTransaction.js +45 -0
- package/dist/transactions/sendBtcTransaction.js.map +1 -0
- package/dist/transactions/signMultipleTransactions.d.ts +2 -0
- package/dist/transactions/signMultipleTransactions.js +26 -0
- package/dist/transactions/signMultipleTransactions.js.map +1 -0
- package/dist/transactions/signTransaction.d.ts +2 -0
- package/dist/transactions/signTransaction.js +26 -0
- package/dist/transactions/signTransaction.js.map +1 -0
- package/dist/transactions/types.d.ts +46 -0
- package/dist/transactions/types.js +3 -0
- package/dist/transactions/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +87 -0
- package/dist/types.js +46 -0
- package/dist/types.js.map +1 -0
- package/dist/ui/index.d.ts +6 -0
- package/dist/ui/index.js +33 -0
- package/dist/ui/index.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createInscription = void 0;
|
|
4
|
+
const jsontokens_1 = require("jsontokens");
|
|
5
|
+
const provider_1 = require("../provider");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
const createInscription = async (options) => {
|
|
8
|
+
const { getProvider } = options;
|
|
9
|
+
const provider = await (0, provider_1.getProviderOrThrow)(getProvider);
|
|
10
|
+
(0, utils_1.validateInscriptionPayload)(options.payload);
|
|
11
|
+
try {
|
|
12
|
+
const request = (0, jsontokens_1.createUnsecuredToken)(options.payload);
|
|
13
|
+
const response = await provider.createInscription(request);
|
|
14
|
+
options.onFinish?.(response);
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
console.error('[Connect] Error during create inscription', error);
|
|
18
|
+
options.onCancel?.();
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.createInscription = createInscription;
|
|
22
|
+
//# sourceMappingURL=createInscription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createInscription.js","sourceRoot":"","sources":["../../src/inscriptions/createInscription.ts"],"names":[],"mappings":";;;AACA,2CAAkD;AAElD,0CAAiD;AAEjD,mCAAqD;AAE9C,MAAM,iBAAiB,GAAG,KAAK,EAAE,OAAiC,EAAE,EAAE;IAC3E,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,6BAAkB,EAAC,WAAW,CAAC,CAAC;IAEvD,IAAA,kCAA0B,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI;QACF,MAAM,OAAO,GAAG,IAAA,iCAAoB,EAAC,OAAO,CAAC,OAA0B,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3D,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;KAC9B;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;QAClE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createRepeatInscriptions = void 0;
|
|
4
|
+
const provider_1 = require("../provider");
|
|
5
|
+
const jsontokens_1 = require("jsontokens");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
const createRepeatInscriptions = async (options) => {
|
|
8
|
+
const { getProvider } = options;
|
|
9
|
+
const provider = await (0, provider_1.getProviderOrThrow)(getProvider);
|
|
10
|
+
(0, utils_1.validateInscriptionPayload)(options.payload);
|
|
11
|
+
try {
|
|
12
|
+
const request = (0, jsontokens_1.createUnsecuredToken)(options.payload);
|
|
13
|
+
const response = await provider.createRepeatInscriptions(request);
|
|
14
|
+
options.onFinish?.(response);
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
console.error('[Connect] Error during create repeat inscriptions', error);
|
|
18
|
+
options.onCancel?.();
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.createRepeatInscriptions = createRepeatInscriptions;
|
|
22
|
+
//# sourceMappingURL=createRepeatInscriptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createRepeatInscriptions.js","sourceRoot":"","sources":["../../src/inscriptions/createRepeatInscriptions.ts"],"names":[],"mappings":";;;AAAA,0CAAiD;AAEjD,2CAAwD;AACxD,mCAAqD;AAE9C,MAAM,wBAAwB,GAAG,KAAK,EAAE,OAAwC,EAAE,EAAE;IACzF,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,IAAA,6BAAkB,EAAC,WAAW,CAAC,CAAC;IAEvD,IAAA,kCAA0B,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI;QACF,MAAM,OAAO,GAAG,IAAA,iCAAoB,EAAC,OAAO,CAAC,OAA0B,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAClE,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;KAC9B;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;QAC1E,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;AAdW,QAAA,wBAAwB,4BAcnC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./createInscription"), exports);
|
|
18
|
+
__exportStar(require("./createRepeatInscriptions"), exports);
|
|
19
|
+
__exportStar(require("./types"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/inscriptions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,6DAA2C;AAC3C,0CAAwB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RequestOptions, RequestPayload } from '../types';
|
|
2
|
+
export interface CreateInscriptionPayload extends RequestPayload {
|
|
3
|
+
contentType: string;
|
|
4
|
+
content: string;
|
|
5
|
+
payloadType: 'PLAIN_TEXT' | 'BASE_64';
|
|
6
|
+
appFee?: number;
|
|
7
|
+
appFeeAddress?: string;
|
|
8
|
+
suggestedMinerFeeRate?: number;
|
|
9
|
+
token?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface CreateRepeatInscriptionsPayload extends CreateInscriptionPayload {
|
|
12
|
+
repeat: number;
|
|
13
|
+
}
|
|
14
|
+
export type CreateInscriptionResponse = {
|
|
15
|
+
txId: string;
|
|
16
|
+
};
|
|
17
|
+
export type CreateRepeatInscriptionsResponse = {
|
|
18
|
+
txId: string;
|
|
19
|
+
};
|
|
20
|
+
export type CreateInscriptionOptions = RequestOptions<CreateInscriptionPayload, CreateInscriptionResponse>;
|
|
21
|
+
export type CreateRepeatInscriptionsOptions = RequestOptions<CreateRepeatInscriptionsPayload, CreateRepeatInscriptionsResponse>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/inscriptions/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateInscriptionPayload = void 0;
|
|
4
|
+
const MAX_CONTENT_LENGTH_MAINNET = 400e3; // 400kb is the max miners will mine
|
|
5
|
+
const MAX_CONTENT_LENGTH_TESTNET = 60e3; // 60kb limit on Testnet to prevent spam
|
|
6
|
+
const validateInscriptionPayload = (payload) => {
|
|
7
|
+
const { contentType, content, payloadType, network, appFeeAddress, appFee } = payload;
|
|
8
|
+
if (!/^[a-z]+\/[a-z0-9\-\.\+]+(?=;.*|$)/.test(contentType)) {
|
|
9
|
+
throw new Error('Invalid content type detected');
|
|
10
|
+
}
|
|
11
|
+
if (!content || content.length === 0) {
|
|
12
|
+
throw new Error('Empty content not allowed');
|
|
13
|
+
}
|
|
14
|
+
if (!payloadType || (payloadType !== 'BASE_64' && payloadType !== 'PLAIN_TEXT')) {
|
|
15
|
+
throw new Error('Empty invalid payloadType specified');
|
|
16
|
+
}
|
|
17
|
+
if (content.length >
|
|
18
|
+
(network.type === 'Mainnet' ? MAX_CONTENT_LENGTH_MAINNET : MAX_CONTENT_LENGTH_TESTNET)) {
|
|
19
|
+
throw new Error('Content too large');
|
|
20
|
+
}
|
|
21
|
+
if ((appFeeAddress?.length ?? 0) > 0 && (appFee ?? 0) <= 0) {
|
|
22
|
+
throw new Error('Invalid combination of app fee address and fee provided');
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
exports.validateInscriptionPayload = validateInscriptionPayload;
|
|
26
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/inscriptions/utils.ts"],"names":[],"mappings":";;;AAEA,MAAM,0BAA0B,GAAG,KAAK,CAAC,CAAC,oCAAoC;AAC9E,MAAM,0BAA0B,GAAG,IAAI,CAAC,CAAC,wCAAwC;AAE1E,MAAM,0BAA0B,GAAG,CAAC,OAAiC,EAAE,EAAE;IAC9E,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACtF,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;QAC1D,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;KAC9C;IAED,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,YAAY,CAAC,EAAE;QAC/E,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;KACxD;IAED,IACE,OAAO,CAAC,MAAM;QACd,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,0BAA0B,CAAC,EACtF;QACA,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;KACtC;IAED,IAAI,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;QAC1D,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;KAC5E;AACH,CAAC,CAAC;AAxBW,QAAA,0BAA0B,8BAwBrC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.signMessage = void 0;
|
|
18
|
+
const jsontokens_1 = require("jsontokens");
|
|
19
|
+
const provider_1 = require("../provider");
|
|
20
|
+
const signMessage = async (options) => {
|
|
21
|
+
const provider = await (0, provider_1.getProviderOrThrow)(options.getProvider);
|
|
22
|
+
const { address, message } = options.payload;
|
|
23
|
+
if (!address) {
|
|
24
|
+
throw new Error('An address is required to sign a message');
|
|
25
|
+
}
|
|
26
|
+
if (!message) {
|
|
27
|
+
throw new Error('A message to be signed is required');
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
const request = (0, jsontokens_1.createUnsecuredToken)(options.payload);
|
|
31
|
+
const response = await provider.signMessage(request);
|
|
32
|
+
options.onFinish?.(response);
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
console.error('[Connect] Error during sign message request', error);
|
|
36
|
+
options.onCancel?.();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
exports.signMessage = signMessage;
|
|
40
|
+
__exportStar(require("./types"), exports);
|
|
41
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/messages/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,2CAAkD;AAElD,0CAAiD;AAG1C,MAAM,WAAW,GAAG,KAAK,EAAE,OAA2B,EAAE,EAAE;IAC/D,MAAM,QAAQ,GAAG,MAAM,IAAA,6BAAkB,EAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAE/D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;KAC7D;IACD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;IAED,IAAI;QACF,MAAM,OAAO,GAAG,IAAA,iCAAoB,EAAC,OAAO,CAAC,OAA0B,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;KAC9B;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QACpE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;AAnBW,QAAA,WAAW,eAmBtB;AAEF,0CAAwB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RequestOptions, RequestPayload } from '../types';
|
|
2
|
+
export interface SignMessagePayload extends RequestPayload {
|
|
3
|
+
address: string;
|
|
4
|
+
message: string;
|
|
5
|
+
}
|
|
6
|
+
export type SignMessageResponse = string;
|
|
7
|
+
export type SignMessageOptions = RequestOptions<SignMessagePayload, SignMessageResponse>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/messages/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type SupportedWallet, type BitcoinProvider, type Provider } from './types';
|
|
2
|
+
export declare function getProviderOrThrow(getProvider?: () => Promise<BitcoinProvider | undefined>): Promise<BitcoinProvider>;
|
|
3
|
+
export declare function getProviders(): Provider[];
|
|
4
|
+
export declare function getProviderById(providerId: string): any;
|
|
5
|
+
export declare function isProviderInstalled(providerId: string): boolean;
|
|
6
|
+
export declare function setDefaultProvider(providerId: string): void;
|
|
7
|
+
export declare function getDefaultProvider(): string | null;
|
|
8
|
+
export declare function removeDefaultProvider(): void;
|
|
9
|
+
export declare function getSupportedWallets(): SupportedWallet[];
|
|
10
|
+
export * from './types';
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.getSupportedWallets = exports.removeDefaultProvider = exports.getDefaultProvider = exports.setDefaultProvider = exports.isProviderInstalled = exports.getProviderById = exports.getProviders = exports.getProviderOrThrow = void 0;
|
|
21
|
+
const adapters_1 = require("../adapters");
|
|
22
|
+
const lodash_omit_1 = __importDefault(require("lodash.omit"));
|
|
23
|
+
async function getProviderOrThrow(getProvider) {
|
|
24
|
+
const provider = (await getProvider?.()) || window.XverseProviders?.BitcoinProvider || window.BitcoinProvider;
|
|
25
|
+
if (!provider) {
|
|
26
|
+
throw new Error('No Bitcoin wallet installed');
|
|
27
|
+
}
|
|
28
|
+
return provider;
|
|
29
|
+
}
|
|
30
|
+
exports.getProviderOrThrow = getProviderOrThrow;
|
|
31
|
+
function getProviders() {
|
|
32
|
+
if (!window.btc_providers)
|
|
33
|
+
window.btc_providers = [];
|
|
34
|
+
return window.btc_providers;
|
|
35
|
+
}
|
|
36
|
+
exports.getProviders = getProviders;
|
|
37
|
+
function getProviderById(providerId) {
|
|
38
|
+
return providerId?.split('.').reduce((acc, part) => acc?.[part], window);
|
|
39
|
+
}
|
|
40
|
+
exports.getProviderById = getProviderById;
|
|
41
|
+
function isProviderInstalled(providerId) {
|
|
42
|
+
return !!getProviderById(providerId);
|
|
43
|
+
}
|
|
44
|
+
exports.isProviderInstalled = isProviderInstalled;
|
|
45
|
+
function setDefaultProvider(providerId) {
|
|
46
|
+
localStorage.setItem('sats-connect_defaultProvider', providerId);
|
|
47
|
+
}
|
|
48
|
+
exports.setDefaultProvider = setDefaultProvider;
|
|
49
|
+
function getDefaultProvider() {
|
|
50
|
+
return localStorage.getItem('sats-connect_defaultProvider');
|
|
51
|
+
}
|
|
52
|
+
exports.getDefaultProvider = getDefaultProvider;
|
|
53
|
+
function removeDefaultProvider() {
|
|
54
|
+
localStorage.removeItem('sats-connect_defaultProvider');
|
|
55
|
+
}
|
|
56
|
+
exports.removeDefaultProvider = removeDefaultProvider;
|
|
57
|
+
function getSupportedWallets() {
|
|
58
|
+
const btc_providers = getProviders();
|
|
59
|
+
for (const key in (0, lodash_omit_1.default)(adapters_1.DefaultAdaptersInfo, ['xverse'])) {
|
|
60
|
+
btc_providers.push(adapters_1.DefaultAdaptersInfo[key]);
|
|
61
|
+
}
|
|
62
|
+
const wallets = btc_providers.map((provider) => {
|
|
63
|
+
{
|
|
64
|
+
return {
|
|
65
|
+
...provider,
|
|
66
|
+
isInstalled: isProviderInstalled(provider.id),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
return wallets;
|
|
71
|
+
}
|
|
72
|
+
exports.getSupportedWallets = getSupportedWallets;
|
|
73
|
+
__exportStar(require("./types"), exports);
|
|
74
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/provider/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,0CAAkD;AAElD,8DAA+B;AAExB,KAAK,UAAU,kBAAkB,CACtC,WAAwD;IAExD,MAAM,QAAQ,GACZ,CAAC,MAAM,WAAW,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,eAAe,EAAE,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC;IAE/F,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAXD,gDAWC;AAED,SAAgB,YAAY;IAC1B,IAAI,CAAC,MAAM,CAAC,aAAa;QAAE,MAAM,CAAC,aAAa,GAAG,EAAE,CAAC;IACrD,OAAO,MAAM,CAAC,aAAa,CAAC;AAC9B,CAAC;AAHD,oCAGC;AAED,SAAgB,eAAe,CAAC,UAAkB;IAChD,OAAO,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;AAChF,CAAC;AAFD,0CAEC;AAED,SAAgB,mBAAmB,CAAC,UAAkB;IACpD,OAAO,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACvC,CAAC;AAFD,kDAEC;AAED,SAAgB,kBAAkB,CAAC,UAAkB;IACnD,YAAY,CAAC,OAAO,CAAC,8BAA8B,EAAE,UAAU,CAAC,CAAC;AACnE,CAAC;AAFD,gDAEC;AAED,SAAgB,kBAAkB;IAChC,OAAO,YAAY,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;AAC9D,CAAC;AAFD,gDAEC;AAED,SAAgB,qBAAqB;IACnC,YAAY,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;AAC1D,CAAC;AAFD,sDAEC;AAED,SAAgB,mBAAmB;IACjC,MAAM,aAAa,GAAG,YAAY,EAAE,CAAC;IACrC,KAAK,MAAM,GAAG,IAAI,IAAA,qBAAI,EAAC,8BAAmB,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE;QACvD,aAAa,CAAC,IAAI,CAAC,8BAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;KAC9C;IACD,MAAM,OAAO,GAAsB,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChE;YACE,OAAO;gBACL,GAAG,QAAQ;gBACX,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;aAC9C,CAAC;SACH;IACH,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAdD,kDAcC;AAED,0CAAwB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { BtcRequestMethod, Params, Requests, StxRequestMethod } from '../request';
|
|
2
|
+
import type { GetAddressResponse } from '../addresses';
|
|
3
|
+
import type { GetCapabilitiesResponse } from '../capabilities';
|
|
4
|
+
import type { CreateInscriptionResponse, CreateRepeatInscriptionsResponse } from '../inscriptions';
|
|
5
|
+
import type { SignMessageResponse } from '../messages';
|
|
6
|
+
import type { SendBtcTransactionResponse, SignMultipleTransactionsResponse, SignTransactionResponse } from '../transactions';
|
|
7
|
+
import { RpcResponse } from '../types';
|
|
8
|
+
interface BaseBitcoinProvider {
|
|
9
|
+
request: <Method extends keyof Requests>(method: Method, options: Params<Method>, providerId?: string) => Promise<RpcResponse<Method>>;
|
|
10
|
+
connect: (request: string) => Promise<GetAddressResponse>;
|
|
11
|
+
signMessage: (request: string) => Promise<SignMessageResponse>;
|
|
12
|
+
signTransaction: (request: string) => Promise<SignTransactionResponse>;
|
|
13
|
+
sendBtcTransaction: (request: string) => Promise<SendBtcTransactionResponse>;
|
|
14
|
+
createInscription: (request: string) => Promise<CreateInscriptionResponse>;
|
|
15
|
+
createRepeatInscriptions: (request: string) => Promise<CreateRepeatInscriptionsResponse>;
|
|
16
|
+
signMultipleTransactions: (request: string) => Promise<SignMultipleTransactionsResponse>;
|
|
17
|
+
}
|
|
18
|
+
export type Capability = keyof BaseBitcoinProvider;
|
|
19
|
+
export interface BitcoinProvider extends BaseBitcoinProvider {
|
|
20
|
+
getCapabilities?: (request: string) => Promise<GetCapabilitiesResponse>;
|
|
21
|
+
}
|
|
22
|
+
export interface Provider {
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
icon: string;
|
|
26
|
+
webUrl?: string;
|
|
27
|
+
chromeWebStoreUrl?: string;
|
|
28
|
+
mozillaAddOnsUrl?: string;
|
|
29
|
+
googlePlayStoreUrl?: string;
|
|
30
|
+
iOSAppStoreUrl?: string;
|
|
31
|
+
methods?: (StxRequestMethod | BtcRequestMethod)[];
|
|
32
|
+
}
|
|
33
|
+
export interface SupportedWallet extends Provider {
|
|
34
|
+
isInstalled: boolean;
|
|
35
|
+
}
|
|
36
|
+
declare global {
|
|
37
|
+
interface XverseProviders {
|
|
38
|
+
BitcoinProvider?: BitcoinProvider;
|
|
39
|
+
}
|
|
40
|
+
interface Window {
|
|
41
|
+
BitcoinProvider?: BitcoinProvider;
|
|
42
|
+
XverseProviders?: XverseProviders;
|
|
43
|
+
btc_providers?: Provider[];
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/provider/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RpcResult } from '../types';
|
|
2
|
+
import { Params } from './types';
|
|
3
|
+
export declare const request: <Method extends keyof import("./types").BtcRequests | keyof import("./types").StxRequests>(method: Method, params: Params<Method>, providerId?: string) => Promise<RpcResult<Method>>;
|
|
4
|
+
export * from './types';
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.request = void 0;
|
|
18
|
+
const provider_1 = require("../provider");
|
|
19
|
+
const request = async (method, params, providerId) => {
|
|
20
|
+
let provider = window.XverseProviders?.BitcoinProvider || window.BitcoinProvider;
|
|
21
|
+
if (providerId) {
|
|
22
|
+
provider = await (0, provider_1.getProviderById)(providerId);
|
|
23
|
+
}
|
|
24
|
+
if (!provider) {
|
|
25
|
+
throw new Error('no wallet provider was found');
|
|
26
|
+
}
|
|
27
|
+
if (!method) {
|
|
28
|
+
throw new Error('A wallet method is required');
|
|
29
|
+
}
|
|
30
|
+
const response = await provider.request(method, params);
|
|
31
|
+
if (isRpcSuccessResponse(response)) {
|
|
32
|
+
return {
|
|
33
|
+
status: 'success',
|
|
34
|
+
result: response.result,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
return {
|
|
38
|
+
status: 'error',
|
|
39
|
+
error: response.error,
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
exports.request = request;
|
|
43
|
+
const isRpcSuccessResponse = (response) => {
|
|
44
|
+
return Object.hasOwn(response, 'result') && !!response.result;
|
|
45
|
+
};
|
|
46
|
+
__exportStar(require("./types"), exports);
|
|
47
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAA8C;AAIvC,MAAM,OAAO,GAAG,KAAK,EAC1B,MAAc,EACd,MAAsB,EACtB,UAAmB,EACS,EAAE;IAC9B,IAAI,QAAQ,GAAG,MAAM,CAAC,eAAe,EAAE,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC;IACjF,IAAI,UAAU,EAAE;QACd,QAAQ,GAAG,MAAM,IAAA,0BAAe,EAAC,UAAU,CAAC,CAAC;KAC9C;IACD,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;KACjD;IACD,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAExD,IAAI,oBAAoB,CAAS,QAAQ,CAAC,EAAE;QAC1C,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;KACH;IAED,OAAO;QACL,MAAM,EAAE,OAAO;QACf,KAAK,EAAE,QAAQ,CAAC,KAAK;KACtB,CAAC;AACJ,CAAC,CAAC;AA7BW,QAAA,OAAO,WA6BlB;AAEF,MAAM,oBAAoB,GAAG,CAC3B,QAAiB,EACuB,EAAE;IAC1C,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAE,QAAuC,CAAC,MAAM,CAAC;AAChG,CAAC,CAAC;AAEF,0CAAwB"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the types and interfaces related to BTC methods.
|
|
3
|
+
*/
|
|
4
|
+
import { Address, AddressPurpose } from '../../addresses';
|
|
5
|
+
import { MethodParamsAndResult } from '../../types';
|
|
6
|
+
type GetInfoResult = {
|
|
7
|
+
version: number | string;
|
|
8
|
+
methods?: Array<string>;
|
|
9
|
+
supports?: Array<string>;
|
|
10
|
+
};
|
|
11
|
+
export type GetInfo = MethodParamsAndResult<null, GetInfoResult>;
|
|
12
|
+
type GetAddressesParams = {
|
|
13
|
+
/**
|
|
14
|
+
* The purposes for which to generate addresses.
|
|
15
|
+
* possible values are "payment", "ordinals", ...
|
|
16
|
+
*/
|
|
17
|
+
purposes: Array<AddressPurpose>;
|
|
18
|
+
/**
|
|
19
|
+
* a message to be displayed to the user in the request prompt.
|
|
20
|
+
*/
|
|
21
|
+
message?: string;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* The addresses generated for the given purposes.
|
|
25
|
+
*/
|
|
26
|
+
type GetAddressesResult = {
|
|
27
|
+
addresses: Array<Address>;
|
|
28
|
+
};
|
|
29
|
+
export type GetAddresses = MethodParamsAndResult<GetAddressesParams, GetAddressesResult>;
|
|
30
|
+
export type SignMessageParams = {
|
|
31
|
+
/**
|
|
32
|
+
* The address used for signing.
|
|
33
|
+
**/
|
|
34
|
+
address: string;
|
|
35
|
+
/**
|
|
36
|
+
* The message to sign.
|
|
37
|
+
**/
|
|
38
|
+
message: string;
|
|
39
|
+
};
|
|
40
|
+
type SignMessageResult = {
|
|
41
|
+
/**
|
|
42
|
+
* The signature of the message.
|
|
43
|
+
*/
|
|
44
|
+
signature: string;
|
|
45
|
+
/**
|
|
46
|
+
* hash of the message.
|
|
47
|
+
*/
|
|
48
|
+
messageHash: string;
|
|
49
|
+
/**
|
|
50
|
+
* The address used for signing.
|
|
51
|
+
*/
|
|
52
|
+
address: string;
|
|
53
|
+
};
|
|
54
|
+
export type SignMessage = MethodParamsAndResult<SignMessageParams, SignMessageResult>;
|
|
55
|
+
type Recipient = {
|
|
56
|
+
/**
|
|
57
|
+
* The recipient's address.
|
|
58
|
+
**/
|
|
59
|
+
address: string;
|
|
60
|
+
/**
|
|
61
|
+
* The amount to send to the recipient in satoshis.
|
|
62
|
+
*/
|
|
63
|
+
amount: number;
|
|
64
|
+
};
|
|
65
|
+
export type SendTransferParams = {
|
|
66
|
+
/**
|
|
67
|
+
* Array of recipients to send to.
|
|
68
|
+
* The amount to send to each recipient is in satoshis.
|
|
69
|
+
*/
|
|
70
|
+
recipients: Array<Recipient>;
|
|
71
|
+
};
|
|
72
|
+
type SendTransferResult = {
|
|
73
|
+
/**
|
|
74
|
+
* The transaction id as a hex-encoded string.
|
|
75
|
+
*/
|
|
76
|
+
txid: string;
|
|
77
|
+
};
|
|
78
|
+
export type SendTransfer = MethodParamsAndResult<SendTransferParams, SendTransferResult>;
|
|
79
|
+
export type SignPsbtParams = {
|
|
80
|
+
/**
|
|
81
|
+
* The base64 encoded PSBT to sign.
|
|
82
|
+
*/
|
|
83
|
+
psbt: string;
|
|
84
|
+
/**
|
|
85
|
+
* The inputs to sign.
|
|
86
|
+
* The key is the address and the value is an array of indexes of the inputs to sign.
|
|
87
|
+
*/
|
|
88
|
+
signInputs: Record<string, number[]>;
|
|
89
|
+
/**
|
|
90
|
+
* the sigHash type to use for signing.
|
|
91
|
+
* will default to the sighash type of the input if not provided.
|
|
92
|
+
**/
|
|
93
|
+
allowedSignHash?: number;
|
|
94
|
+
/**
|
|
95
|
+
* Whether to broadcast the transaction after signing.
|
|
96
|
+
**/
|
|
97
|
+
broadcast?: boolean;
|
|
98
|
+
};
|
|
99
|
+
export type SignPsbtResult = {
|
|
100
|
+
/**
|
|
101
|
+
* The base64 encoded PSBT after signing.
|
|
102
|
+
*/
|
|
103
|
+
psbt: string;
|
|
104
|
+
/**
|
|
105
|
+
* The transaction id as a hex-encoded string.
|
|
106
|
+
* This is only returned if the transaction was broadcast.
|
|
107
|
+
**/
|
|
108
|
+
txid?: string;
|
|
109
|
+
};
|
|
110
|
+
export type SignPsbt = MethodParamsAndResult<SignPsbtParams, SignPsbtResult>;
|
|
111
|
+
export type GetAccountsParams = {
|
|
112
|
+
/**
|
|
113
|
+
* The purposes for which to generate addresses.
|
|
114
|
+
* possible values are "payment", "ordinals", ...
|
|
115
|
+
*/
|
|
116
|
+
purposes: Array<AddressPurpose>;
|
|
117
|
+
/**
|
|
118
|
+
* a message to be displayed to the user in the request prompt.
|
|
119
|
+
*/
|
|
120
|
+
/**
|
|
121
|
+
* a message to be displayed to the user in the request prompt.
|
|
122
|
+
*/
|
|
123
|
+
message?: string;
|
|
124
|
+
};
|
|
125
|
+
export type GetAccountResult = Address[];
|
|
126
|
+
export type GetAccounts = MethodParamsAndResult<GetAccountsParams, GetAccountResult>;
|
|
127
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"btcMethods.js","sourceRoot":"","sources":["../../../src/request/types/btcMethods.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { GetAccounts, GetAddresses, GetInfo, SendTransfer, SignMessage, SignPsbt } from './btcMethods';
|
|
2
|
+
import { StxCallContract, StxDeployContract, StxGetAccounts, StxGetAddresses, StxSignStructuredMessage, StxSignStxMessage, StxSignTransaction, StxTransferStx } from './stxMethods';
|
|
3
|
+
export interface StxRequests {
|
|
4
|
+
stx_callContract: StxCallContract;
|
|
5
|
+
stx_deployContract: StxDeployContract;
|
|
6
|
+
stx_getAccounts: StxGetAccounts;
|
|
7
|
+
stx_getAddresses: StxGetAddresses;
|
|
8
|
+
stx_signMessage: StxSignStxMessage;
|
|
9
|
+
stx_signStructuredMessage: StxSignStructuredMessage;
|
|
10
|
+
stx_signTransaction: StxSignTransaction;
|
|
11
|
+
stx_transferStx: StxTransferStx;
|
|
12
|
+
}
|
|
13
|
+
export type StxRequestMethod = keyof StxRequests;
|
|
14
|
+
export interface BtcRequests {
|
|
15
|
+
getInfo: GetInfo;
|
|
16
|
+
getAddresses: GetAddresses;
|
|
17
|
+
getAccounts: GetAccounts;
|
|
18
|
+
signMessage: SignMessage;
|
|
19
|
+
sendTransfer: SendTransfer;
|
|
20
|
+
signPsbt: SignPsbt;
|
|
21
|
+
}
|
|
22
|
+
export type BtcRequestMethod = keyof BtcRequests;
|
|
23
|
+
export type Requests = BtcRequests & StxRequests;
|
|
24
|
+
export type Return<Method> = Method extends keyof Requests ? Requests[Method]['result'] : never;
|
|
25
|
+
export type Params<Method> = Method extends keyof Requests ? Requests[Method]['params'] : never;
|
|
26
|
+
export * from './stxMethods';
|
|
27
|
+
export * from './btcMethods';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./stxMethods"), exports);
|
|
18
|
+
__exportStar(require("./btcMethods"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/request/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAgDA,+CAA6B;AAC7B,+CAA6B"}
|