@metamask-previews/keyring-api 23.3.0-e51c895 → 23.4.0-5951828
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/CHANGELOG.md +20 -1
- package/dist/api/account-options.cjs +3 -3
- package/dist/api/account-options.cjs.map +1 -1
- package/dist/api/account-options.d.cts.map +1 -1
- package/dist/api/account-options.d.mts.map +1 -1
- package/dist/api/account-options.mjs +2 -2
- package/dist/api/account-options.mjs.map +1 -1
- package/dist/api/account.cjs +1 -1
- package/dist/api/account.cjs.map +1 -1
- package/dist/api/account.mjs +2 -2
- package/dist/api/account.mjs.map +1 -1
- package/dist/api/asset.cjs +3 -3
- package/dist/api/asset.cjs.map +1 -1
- package/dist/api/asset.d.cts.map +1 -1
- package/dist/api/asset.d.mts.map +1 -1
- package/dist/api/asset.mjs +2 -2
- package/dist/api/asset.mjs.map +1 -1
- package/dist/api/balance.cjs +1 -1
- package/dist/api/balance.cjs.map +1 -1
- package/dist/api/balance.mjs +2 -2
- package/dist/api/balance.mjs.map +1 -1
- package/dist/api/options.cjs +3 -2
- package/dist/api/options.cjs.map +1 -1
- package/dist/api/options.d.cts +1 -1
- package/dist/api/options.d.cts.map +1 -1
- package/dist/api/options.d.mts +1 -1
- package/dist/api/options.d.mts.map +1 -1
- package/dist/api/options.mjs +2 -1
- package/dist/api/options.mjs.map +1 -1
- package/dist/api/pagination.cjs +2 -3
- package/dist/api/pagination.cjs.map +1 -1
- package/dist/api/pagination.d.cts +1 -1
- package/dist/api/pagination.d.cts.map +1 -1
- package/dist/api/pagination.d.mts +1 -1
- package/dist/api/pagination.d.mts.map +1 -1
- package/dist/api/pagination.mjs +1 -2
- package/dist/api/pagination.mjs.map +1 -1
- package/dist/api/request.cjs +3 -3
- package/dist/api/request.cjs.map +1 -1
- package/dist/api/request.d.cts +1 -1
- package/dist/api/request.d.cts.map +1 -1
- package/dist/api/request.d.mts +1 -1
- package/dist/api/request.d.mts.map +1 -1
- package/dist/api/request.mjs +2 -2
- package/dist/api/request.mjs.map +1 -1
- package/dist/api/response.cjs +5 -6
- package/dist/api/response.cjs.map +1 -1
- package/dist/api/response.d.cts.map +1 -1
- package/dist/api/response.d.mts.map +1 -1
- package/dist/api/response.mjs +1 -2
- package/dist/api/response.mjs.map +1 -1
- package/dist/api/transaction.cjs +10 -10
- package/dist/api/transaction.cjs.map +1 -1
- package/dist/api/transaction.d.cts +11 -11
- package/dist/api/transaction.d.cts.map +1 -1
- package/dist/api/transaction.d.mts +11 -11
- package/dist/api/transaction.d.mts.map +1 -1
- package/dist/api/transaction.mjs +2 -2
- package/dist/api/transaction.mjs.map +1 -1
- package/dist/btc/types.cjs +5 -6
- package/dist/btc/types.cjs.map +1 -1
- package/dist/btc/types.d.cts.map +1 -1
- package/dist/btc/types.d.mts.map +1 -1
- package/dist/btc/types.mjs +1 -2
- package/dist/btc/types.mjs.map +1 -1
- package/dist/eth/erc4337/types.cjs +9 -8
- package/dist/eth/erc4337/types.cjs.map +1 -1
- package/dist/eth/erc4337/types.d.cts +4 -4
- package/dist/eth/erc4337/types.d.cts.map +1 -1
- package/dist/eth/erc4337/types.d.mts +4 -4
- package/dist/eth/erc4337/types.d.mts.map +1 -1
- package/dist/eth/erc4337/types.mjs +2 -1
- package/dist/eth/erc4337/types.mjs.map +1 -1
- package/dist/eth/rpc/params.cjs +4 -5
- package/dist/eth/rpc/params.cjs.map +1 -1
- package/dist/eth/rpc/params.d.cts.map +1 -1
- package/dist/eth/rpc/params.d.mts.map +1 -1
- package/dist/eth/rpc/params.mjs +1 -2
- package/dist/eth/rpc/params.mjs.map +1 -1
- package/dist/eth/types.cjs +4 -5
- package/dist/eth/types.cjs.map +1 -1
- package/dist/eth/types.d.cts +1 -1
- package/dist/eth/types.d.cts.map +1 -1
- package/dist/eth/types.d.mts +1 -1
- package/dist/eth/types.d.mts.map +1 -1
- package/dist/eth/types.mjs +2 -3
- package/dist/eth/types.mjs.map +1 -1
- package/dist/events.cjs +20 -20
- package/dist/events.cjs.map +1 -1
- package/dist/events.d.cts +4 -4
- package/dist/events.d.cts.map +1 -1
- package/dist/events.d.mts +4 -4
- package/dist/events.d.mts.map +1 -1
- package/dist/events.mjs +2 -2
- package/dist/events.mjs.map +1 -1
- package/dist/rpc.cjs +36 -36
- package/dist/rpc.cjs.map +1 -1
- package/dist/rpc.d.cts +78 -42
- package/dist/rpc.d.cts.map +1 -1
- package/dist/rpc.d.mts +78 -42
- package/dist/rpc.d.mts.map +1 -1
- package/dist/rpc.mjs +2 -2
- package/dist/rpc.mjs.map +1 -1
- package/dist/sol/types.cjs +1 -2
- package/dist/sol/types.cjs.map +1 -1
- package/dist/sol/types.d.cts.map +1 -1
- package/dist/sol/types.d.mts.map +1 -1
- package/dist/sol/types.mjs +1 -2
- package/dist/sol/types.mjs.map +1 -1
- package/dist/trx/types.cjs +1 -2
- package/dist/trx/types.cjs.map +1 -1
- package/dist/trx/types.d.cts.map +1 -1
- package/dist/trx/types.d.mts.map +1 -1
- package/dist/trx/types.mjs +1 -2
- package/dist/trx/types.mjs.map +1 -1
- package/dist/v2/api/index.cjs +1 -0
- package/dist/v2/api/index.cjs.map +1 -1
- package/dist/v2/api/index.d.cts +1 -0
- package/dist/v2/api/index.d.cts.map +1 -1
- package/dist/v2/api/index.d.mts +1 -0
- package/dist/v2/api/index.d.mts.map +1 -1
- package/dist/v2/api/index.mjs +1 -0
- package/dist/v2/api/index.mjs.map +1 -1
- package/dist/v2/api/keyring-capabilities.cjs +37 -0
- package/dist/v2/api/keyring-capabilities.cjs.map +1 -1
- package/dist/v2/api/keyring-capabilities.d.cts +57 -0
- package/dist/v2/api/keyring-capabilities.d.cts.map +1 -1
- package/dist/v2/api/keyring-capabilities.d.mts +57 -0
- package/dist/v2/api/keyring-capabilities.d.mts.map +1 -1
- package/dist/v2/api/keyring-capabilities.mjs +37 -0
- package/dist/v2/api/keyring-capabilities.mjs.map +1 -1
- package/dist/v2/api/keyring-rpc.cjs +10 -10
- package/dist/v2/api/keyring-rpc.cjs.map +1 -1
- package/dist/v2/api/keyring-rpc.d.cts +2 -2
- package/dist/v2/api/keyring-rpc.d.cts.map +1 -1
- package/dist/v2/api/keyring-rpc.d.mts +2 -2
- package/dist/v2/api/keyring-rpc.d.mts.map +1 -1
- package/dist/v2/api/keyring-rpc.mjs +2 -2
- package/dist/v2/api/keyring-rpc.mjs.map +1 -1
- package/dist/v2/api/keyring-snap-rpc.cjs +92 -0
- package/dist/v2/api/keyring-snap-rpc.cjs.map +1 -0
- package/dist/v2/api/keyring-snap-rpc.d.cts +545 -0
- package/dist/v2/api/keyring-snap-rpc.d.cts.map +1 -0
- package/dist/v2/api/keyring-snap-rpc.d.mts +545 -0
- package/dist/v2/api/keyring-snap-rpc.d.mts.map +1 -0
- package/dist/v2/api/keyring-snap-rpc.mjs +88 -0
- package/dist/v2/api/keyring-snap-rpc.mjs.map +1 -0
- package/dist/xlm/types.cjs +1 -2
- package/dist/xlm/types.cjs.map +1 -1
- package/dist/xlm/types.d.cts.map +1 -1
- package/dist/xlm/types.d.mts.map +1 -1
- package/dist/xlm/types.mjs +1 -2
- package/dist/xlm/types.mjs.map +1 -1
- package/package.json +2 -2
package/dist/trx/types.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.cts","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAUnD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sDAG5B,CAAC;AAEF;;GAEG;AACH,oBAAY,SAAS;IACnB,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IAGnC,aAAa,kBAAkB;IAE/B,eAAe,oBAAoB;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;IAE9B;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/dist/trx/types.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAUnD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sDAG5B,CAAC;AAEF;;GAEG;AACH,oBAAY,SAAS;IACnB,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IAGnC,aAAa,kBAAkB;IAE/B,eAAe,oBAAoB;CACpC;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;IAE9B;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/dist/trx/types.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { object } from "@metamask/
|
|
2
|
-
import { array, enums, literal, nonempty } from "@metamask/superstruct";
|
|
1
|
+
import { array, enums, literal, nonempty, object } from "@metamask/superstruct";
|
|
3
2
|
import { definePattern } from "@metamask/utils";
|
|
4
3
|
import { CaipChainIdStruct, KeyringAccountStruct, TrxAccountType } from "../api/index.mjs";
|
|
5
4
|
/**
|
package/dist/trx/types.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/trx/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,8BAA8B;AAChF,OAAO,EAAE,aAAa,EAAE,wBAAwB;AAEhD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACf,yBAAe;AAEhB;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAC3C,YAAY,EACZ,+BAA+B,CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,wCAA2B,CAAA;IAC3B,gDAAmC,CAAA;IAEnC,yCAAyC;IACzC,4CAA+B,CAAA;IAC/B,qCAAqC;IACrC,gDAAmC,CAAA;AACrC,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;IACxC,GAAG,oBAAoB,CAAC,MAAM;IAC9B;;OAEG;IACH,OAAO,EAAE,gBAAgB;IACzB;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;IACtC;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC1C;;OAEG;IACH,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;CAChD,CAAC,CAAC","sourcesContent":["import type { Infer } from '@metamask/superstruct';\nimport { array, enums, literal, nonempty, object } from '@metamask/superstruct';\nimport { definePattern } from '@metamask/utils';\n\nimport {\n CaipChainIdStruct,\n KeyringAccountStruct,\n TrxAccountType,\n} from '../api';\n\n/**\n * TRON addresses are Base58-encoded strings that are exactly 34 characters long\n * and start with the letter 'T'.\n */\nexport const TrxAddressStruct = definePattern(\n 'TrxAddress',\n /^T[1-9A-HJ-NP-Za-km-z]{33}$/iu,\n);\n\n/**\n * Supported TRON methods.\n */\nexport enum TrxMethod {\n SignMessage = 'signMessage',\n SignTransaction = 'signTransaction',\n\n // @deprecated Use `SignMessage` instead.\n SignMessageV2 = 'signMessageV2',\n // @deprecated Not supported anymore.\n VerifyMessageV2 = 'verifyMessageV2',\n}\n\nexport const TrxEoaAccountStruct = object({\n ...KeyringAccountStruct.schema,\n /**\n * Account address.\n */\n address: TrxAddressStruct,\n /**\n * Account type.\n */\n type: literal(`${TrxAccountType.Eoa}`),\n /**\n * Account supported scopes (CAIP-2 chain IDs).\n */\n scopes: nonempty(array(CaipChainIdStruct)),\n /**\n * Account supported methods.\n */\n methods: array(enums(Object.values(TrxMethod))),\n});\n\nexport type TrxEoaAccount = Infer<typeof TrxEoaAccountStruct>;\n"]}
|
package/dist/v2/api/index.cjs
CHANGED
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
__exportStar(require("./keyring-capabilities.cjs"), exports);
|
|
18
18
|
__exportStar(require("./keyring-type.cjs"), exports);
|
|
19
19
|
__exportStar(require("./keyring-rpc.cjs"), exports);
|
|
20
|
+
__exportStar(require("./keyring-snap-rpc.cjs"), exports);
|
|
20
21
|
__exportStar(require("./create-account/index.cjs"), exports);
|
|
21
22
|
__exportStar(require("./export-account/index.cjs"), exports);
|
|
22
23
|
__exportStar(require("./private-key.cjs"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,6DAAuC;AACvC,qDAA+B;AAC/B,oDAA8B;AAC9B,6DAAiC;AACjC,6DAAiC;AACjC,oDAA8B","sourcesContent":["export type * from './keyring';\nexport * from './keyring-capabilities';\nexport * from './keyring-type';\nexport * from './keyring-rpc';\nexport * from './create-account';\nexport * from './export-account';\nexport * from './private-key';\n"]}
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,6DAAuC;AACvC,qDAA+B;AAC/B,oDAA8B;AAC9B,yDAAmC;AACnC,6DAAiC;AACjC,6DAAiC;AACjC,oDAA8B","sourcesContent":["export type * from './keyring';\nexport * from './keyring-capabilities';\nexport * from './keyring-type';\nexport * from './keyring-rpc';\nexport * from './keyring-snap-rpc';\nexport * from './create-account';\nexport * from './export-account';\nexport * from './private-key';\n"]}
|
package/dist/v2/api/index.d.cts
CHANGED
|
@@ -2,6 +2,7 @@ export type * from "./keyring.cjs";
|
|
|
2
2
|
export * from "./keyring-capabilities.cjs";
|
|
3
3
|
export * from "./keyring-type.cjs";
|
|
4
4
|
export * from "./keyring-rpc.cjs";
|
|
5
|
+
export * from "./keyring-snap-rpc.cjs";
|
|
5
6
|
export * from "./create-account/index.cjs";
|
|
6
7
|
export * from "./export-account/index.cjs";
|
|
7
8
|
export * from "./private-key.cjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AAAA,mCAA+B;AAC/B,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AAAA,mCAA+B;AAC/B,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,uCAAmC;AACnC,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B"}
|
package/dist/v2/api/index.d.mts
CHANGED
|
@@ -2,6 +2,7 @@ export type * from "./keyring.mjs";
|
|
|
2
2
|
export * from "./keyring-capabilities.mjs";
|
|
3
3
|
export * from "./keyring-type.mjs";
|
|
4
4
|
export * from "./keyring-rpc.mjs";
|
|
5
|
+
export * from "./keyring-snap-rpc.mjs";
|
|
5
6
|
export * from "./create-account/index.mjs";
|
|
6
7
|
export * from "./export-account/index.mjs";
|
|
7
8
|
export * from "./private-key.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AAAA,mCAA+B;AAC/B,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AAAA,mCAA+B;AAC/B,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,uCAAmC;AACnC,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B"}
|
package/dist/v2/api/index.mjs
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./keyring-capabilities.mjs";
|
|
2
2
|
export * from "./keyring-type.mjs";
|
|
3
3
|
export * from "./keyring-rpc.mjs";
|
|
4
|
+
export * from "./keyring-snap-rpc.mjs";
|
|
4
5
|
export * from "./create-account/index.mjs";
|
|
5
6
|
export * from "./export-account/index.mjs";
|
|
6
7
|
export * from "./private-key.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AACA,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B","sourcesContent":["export type * from './keyring';\nexport * from './keyring-capabilities';\nexport * from './keyring-type';\nexport * from './keyring-rpc';\nexport * from './create-account';\nexport * from './export-account';\nexport * from './private-key';\n"]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/v2/api/index.ts"],"names":[],"mappings":"AACA,2CAAuC;AACvC,mCAA+B;AAC/B,kCAA8B;AAC9B,uCAAmC;AACnC,2CAAiC;AACjC,2CAAiC;AACjC,kCAA8B","sourcesContent":["export type * from './keyring';\nexport * from './keyring-capabilities';\nexport * from './keyring-type';\nexport * from './keyring-rpc';\nexport * from './keyring-snap-rpc';\nexport * from './create-account';\nexport * from './export-account';\nexport * from './private-key';\n"]}
|
|
@@ -56,5 +56,42 @@ exports.KeyringCapabilitiesStruct = (0, superstruct_1.object)({
|
|
|
56
56
|
custom: (0, superstruct_1.exactOptional)((0, superstruct_1.partial)((0, superstruct_1.object)({
|
|
57
57
|
createAccounts: (0, superstruct_1.boolean)(),
|
|
58
58
|
}))),
|
|
59
|
+
/**
|
|
60
|
+
* Snap-specific capabilities supported by this keyring.
|
|
61
|
+
*
|
|
62
|
+
* Each flag maps to a Snap keyring RPC method that the Snap implements.
|
|
63
|
+
*/
|
|
64
|
+
snap: (0, superstruct_1.exactOptional)((0, superstruct_1.object)({
|
|
65
|
+
/**
|
|
66
|
+
* Asset-related capabilities.
|
|
67
|
+
*/
|
|
68
|
+
assets: (0, superstruct_1.exactOptional)((0, superstruct_1.object)({
|
|
69
|
+
/**
|
|
70
|
+
* Whether the keyring supports getting account assets
|
|
71
|
+
* (`keyring_getAccountAssets`).
|
|
72
|
+
*/
|
|
73
|
+
metadata: (0, superstruct_1.exactOptional)((0, superstruct_1.boolean)()),
|
|
74
|
+
/**
|
|
75
|
+
* Whether the keyring supports getting account balances
|
|
76
|
+
* (`keyring_getAccountBalances`).
|
|
77
|
+
*/
|
|
78
|
+
balances: (0, superstruct_1.exactOptional)((0, superstruct_1.boolean)()),
|
|
79
|
+
})),
|
|
80
|
+
/**
|
|
81
|
+
* Whether the keyring supports getting account transactions
|
|
82
|
+
* (`keyring_getAccountTransactions`).
|
|
83
|
+
*/
|
|
84
|
+
transactions: (0, superstruct_1.exactOptional)((0, superstruct_1.boolean)()),
|
|
85
|
+
/**
|
|
86
|
+
* Whether the keyring supports receiving selected accounts notifications
|
|
87
|
+
* (`keyring_setSelectedAccounts`).
|
|
88
|
+
*/
|
|
89
|
+
selectedAccounts: (0, superstruct_1.exactOptional)((0, superstruct_1.boolean)()),
|
|
90
|
+
/**
|
|
91
|
+
* Whether the keyring supports resolving the account address to use for
|
|
92
|
+
* routing a signing request (`keyring_resolveAccountAddress`).
|
|
93
|
+
*/
|
|
94
|
+
resolveAccountAddress: (0, superstruct_1.exactOptional)((0, superstruct_1.boolean)()),
|
|
95
|
+
})),
|
|
59
96
|
});
|
|
60
97
|
//# sourceMappingURL=keyring-capabilities.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-capabilities.cjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":";;;AAAA,uDAO+B;AAG/B,6CAAmD;AACnD,mDAGuB;AAEvB;;GAEG;AACU,QAAA,yBAAyB,GAAG,IAAA,oBAAM,EAAC;IAC9C;;OAEG;IACH,MAAM,EAAE,IAAA,sBAAQ,EAAC,IAAA,mBAAK,EAAC,wBAAiB,CAAC,CAAC;IAC1C;;OAEG;IACH,KAAK,EAAE,IAAA,2BAAa,EAClB,IAAA,oBAAM,EAAC;QACL;;WAEG;QACH,UAAU,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QACpC;;WAEG;QACH,WAAW,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QACrC;;WAEG;QACH,gBAAgB,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QAC1C;;WAEG;QACH,QAAQ,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;KACnC,CAAC,CACH;IACD;;OAEG;IACH,UAAU,EAAE,IAAA,2BAAa,EACvB,IAAA,oBAAM,EAAC;QACL;;WAEG;QACH,aAAa,EAAE,IAAA,2BAAa,EAAC,IAAA,mBAAK,EAAC,0CAA4B,CAAC,CAAC;QACjE;;WAEG;QACH,aAAa,EAAE,IAAA,2BAAa,EAAC,IAAA,mBAAK,EAAC,0CAA4B,CAAC,CAAC;KAClE,CAAC,CACH;IACD;;;;;;OAMG;IACH,MAAM,EAAE,IAAA,2BAAa,EACnB,IAAA,qBAAO,EACL,IAAA,oBAAM,EAAC;QACL,cAAc,EAAE,IAAA,qBAAO,GAAE;KAC1B,CAAC,CACH,CACF;CACF,CAAC,CAAC","sourcesContent":["import {\n array,\n boolean,\n exactOptional,\n nonempty,\n object,\n partial,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { CaipChainIdStruct } from '../../api/caip';\nimport {\n ExportPrivateKeyFormatStruct,\n ImportPrivateKeyFormatStruct,\n} from './private-key';\n\n/**\n * Struct for {@link KeyringCapabilities}.\n */\nexport const KeyringCapabilitiesStruct = object({\n /**\n * List of CAIP-2 chain IDs that this keyring supports.\n */\n scopes: nonempty(array(CaipChainIdStruct)),\n /**\n * BIP-44 capabilities supported by this keyring.\n */\n bip44: exactOptional(\n object({\n /**\n * Whether the keyring supports deriving accounts from a specific BIP-44 path.\n */\n derivePath: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a BIP-44 account index.\n */\n deriveIndex: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a range of BIP-44 account indices.\n */\n deriveIndexRange: exactOptional(boolean()),\n /**\n * Whether the keyring supports BIP-44 account discovery.\n */\n discover: exactOptional(boolean()),\n }),\n ),\n /**\n * Private key capabilities supported by this keyring.\n */\n privateKey: exactOptional(\n object({\n /**\n * List of supported formats for importing private keys.\n */\n importFormats: exactOptional(array(ImportPrivateKeyFormatStruct)),\n /**\n * List of supported formats for exporting private keys.\n */\n exportFormats: exactOptional(array(ExportPrivateKeyFormatStruct)),\n }),\n ),\n /**\n * Indicates which Keyring methods accept non-standard options.\n *\n * When a method is set to `true`, it signals that the keyring implementation\n * accepts custom options for that method, different from the standard API.\n * This is a workaround for keyrings with very specific requirements.\n */\n custom: exactOptional(\n partial(\n object({\n createAccounts: boolean(),\n }),\n ),\n ),\n});\n\n/**\n * Type representing the capabilities supported by a keyring.\n *\n * @example\n * ```ts\n * const capabilities: KeyringCapabilities = {\n * scopes: ['bip122:_'],\n * bip44: {\n * derivePath: true,\n * deriveIndex: true,\n * deriveIndexRange: true,\n * discover: true,\n * },\n * privateKey: {\n * importFormats: [\n * { encoding: 'base58', type: 'bip122:p2sh' },\n * { encoding: 'base58', type: 'bip122:p2tr' },\n * { encoding: 'base58', type: 'bip122:p2pkh' },\n * { encoding: 'base58', type: 'bip122:p2wpkh' },\n * ],\n * exportFormats: [\n * { encoding: 'base58' },\n * { encoding: 'base58' },\n * ],\n * },\n * };\n * ```\n */\nexport type KeyringCapabilities = Infer<typeof KeyringCapabilitiesStruct>;\n"]}
|
|
1
|
+
{"version":3,"file":"keyring-capabilities.cjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":";;;AAAA,uDAO+B;AAG/B,6CAAmD;AACnD,mDAGuB;AAEvB;;GAEG;AACU,QAAA,yBAAyB,GAAG,IAAA,oBAAM,EAAC;IAC9C;;OAEG;IACH,MAAM,EAAE,IAAA,sBAAQ,EAAC,IAAA,mBAAK,EAAC,wBAAiB,CAAC,CAAC;IAC1C;;OAEG;IACH,KAAK,EAAE,IAAA,2BAAa,EAClB,IAAA,oBAAM,EAAC;QACL;;WAEG;QACH,UAAU,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QACpC;;WAEG;QACH,WAAW,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QACrC;;WAEG;QACH,gBAAgB,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QAC1C;;WAEG;QACH,QAAQ,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;KACnC,CAAC,CACH;IACD;;OAEG;IACH,UAAU,EAAE,IAAA,2BAAa,EACvB,IAAA,oBAAM,EAAC;QACL;;WAEG;QACH,aAAa,EAAE,IAAA,2BAAa,EAAC,IAAA,mBAAK,EAAC,0CAA4B,CAAC,CAAC;QACjE;;WAEG;QACH,aAAa,EAAE,IAAA,2BAAa,EAAC,IAAA,mBAAK,EAAC,0CAA4B,CAAC,CAAC;KAClE,CAAC,CACH;IACD;;;;;;OAMG;IACH,MAAM,EAAE,IAAA,2BAAa,EACnB,IAAA,qBAAO,EACL,IAAA,oBAAM,EAAC;QACL,cAAc,EAAE,IAAA,qBAAO,GAAE;KAC1B,CAAC,CACH,CACF;IACD;;;;OAIG;IACH,IAAI,EAAE,IAAA,2BAAa,EACjB,IAAA,oBAAM,EAAC;QACL;;WAEG;QACH,MAAM,EAAE,IAAA,2BAAa,EACnB,IAAA,oBAAM,EAAC;YACL;;;eAGG;YACH,QAAQ,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;YAClC;;;eAGG;YACH,QAAQ,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;SACnC,CAAC,CACH;QACD;;;WAGG;QACH,YAAY,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QACtC;;;WAGG;QACH,gBAAgB,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;QAC1C;;;WAGG;QACH,qBAAqB,EAAE,IAAA,2BAAa,EAAC,IAAA,qBAAO,GAAE,CAAC;KAChD,CAAC,CACH;CACF,CAAC,CAAC","sourcesContent":["import {\n array,\n boolean,\n exactOptional,\n nonempty,\n object,\n partial,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { CaipChainIdStruct } from '../../api/caip';\nimport {\n ExportPrivateKeyFormatStruct,\n ImportPrivateKeyFormatStruct,\n} from './private-key';\n\n/**\n * Struct for {@link KeyringCapabilities}.\n */\nexport const KeyringCapabilitiesStruct = object({\n /**\n * List of CAIP-2 chain IDs that this keyring supports.\n */\n scopes: nonempty(array(CaipChainIdStruct)),\n /**\n * BIP-44 capabilities supported by this keyring.\n */\n bip44: exactOptional(\n object({\n /**\n * Whether the keyring supports deriving accounts from a specific BIP-44 path.\n */\n derivePath: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a BIP-44 account index.\n */\n deriveIndex: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a range of BIP-44 account indices.\n */\n deriveIndexRange: exactOptional(boolean()),\n /**\n * Whether the keyring supports BIP-44 account discovery.\n */\n discover: exactOptional(boolean()),\n }),\n ),\n /**\n * Private key capabilities supported by this keyring.\n */\n privateKey: exactOptional(\n object({\n /**\n * List of supported formats for importing private keys.\n */\n importFormats: exactOptional(array(ImportPrivateKeyFormatStruct)),\n /**\n * List of supported formats for exporting private keys.\n */\n exportFormats: exactOptional(array(ExportPrivateKeyFormatStruct)),\n }),\n ),\n /**\n * Indicates which Keyring methods accept non-standard options.\n *\n * When a method is set to `true`, it signals that the keyring implementation\n * accepts custom options for that method, different from the standard API.\n * This is a workaround for keyrings with very specific requirements.\n */\n custom: exactOptional(\n partial(\n object({\n createAccounts: boolean(),\n }),\n ),\n ),\n /**\n * Snap-specific capabilities supported by this keyring.\n *\n * Each flag maps to a Snap keyring RPC method that the Snap implements.\n */\n snap: exactOptional(\n object({\n /**\n * Asset-related capabilities.\n */\n assets: exactOptional(\n object({\n /**\n * Whether the keyring supports getting account assets\n * (`keyring_getAccountAssets`).\n */\n metadata: exactOptional(boolean()),\n /**\n * Whether the keyring supports getting account balances\n * (`keyring_getAccountBalances`).\n */\n balances: exactOptional(boolean()),\n }),\n ),\n /**\n * Whether the keyring supports getting account transactions\n * (`keyring_getAccountTransactions`).\n */\n transactions: exactOptional(boolean()),\n /**\n * Whether the keyring supports receiving selected accounts notifications\n * (`keyring_setSelectedAccounts`).\n */\n selectedAccounts: exactOptional(boolean()),\n /**\n * Whether the keyring supports resolving the account address to use for\n * routing a signing request (`keyring_resolveAccountAddress`).\n */\n resolveAccountAddress: exactOptional(boolean()),\n }),\n ),\n});\n\n/**\n * Type representing the capabilities supported by a keyring.\n *\n * @example\n * ```ts\n * const capabilities: KeyringCapabilities = {\n * scopes: ['bip122:_'],\n * bip44: {\n * derivePath: true,\n * deriveIndex: true,\n * deriveIndexRange: true,\n * discover: true,\n * },\n * privateKey: {\n * importFormats: [\n * { encoding: 'base58', type: 'bip122:p2sh' },\n * { encoding: 'base58', type: 'bip122:p2tr' },\n * { encoding: 'base58', type: 'bip122:p2pkh' },\n * { encoding: 'base58', type: 'bip122:p2wpkh' },\n * ],\n * exportFormats: [\n * { encoding: 'base58' },\n * { encoding: 'base58' },\n * ],\n * },\n * };\n * ```\n */\nexport type KeyringCapabilities = Infer<typeof KeyringCapabilitiesStruct>;\n"]}
|
|
@@ -22,6 +22,15 @@ export declare const KeyringCapabilitiesStruct: import("@metamask/superstruct").
|
|
|
22
22
|
encoding: "hexadecimal" | "base58";
|
|
23
23
|
}[];
|
|
24
24
|
};
|
|
25
|
+
snap?: {
|
|
26
|
+
assets?: {
|
|
27
|
+
metadata?: boolean;
|
|
28
|
+
balances?: boolean;
|
|
29
|
+
};
|
|
30
|
+
transactions?: boolean;
|
|
31
|
+
selectedAccounts?: boolean;
|
|
32
|
+
resolveAccountAddress?: boolean;
|
|
33
|
+
};
|
|
25
34
|
}, {
|
|
26
35
|
/**
|
|
27
36
|
* List of CAIP-2 chain IDs that this keyring supports.
|
|
@@ -118,6 +127,54 @@ export declare const KeyringCapabilitiesStruct: import("@metamask/superstruct").
|
|
|
118
127
|
}, import("@metamask/superstruct").PartialObjectSchema<{
|
|
119
128
|
createAccounts: import("@metamask/superstruct").Struct<boolean, null>;
|
|
120
129
|
}>>;
|
|
130
|
+
/**
|
|
131
|
+
* Snap-specific capabilities supported by this keyring.
|
|
132
|
+
*
|
|
133
|
+
* Each flag maps to a Snap keyring RPC method that the Snap implements.
|
|
134
|
+
*/
|
|
135
|
+
snap: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
136
|
+
assets?: {
|
|
137
|
+
metadata?: boolean;
|
|
138
|
+
balances?: boolean;
|
|
139
|
+
};
|
|
140
|
+
transactions?: boolean;
|
|
141
|
+
selectedAccounts?: boolean;
|
|
142
|
+
resolveAccountAddress?: boolean;
|
|
143
|
+
}, {
|
|
144
|
+
/**
|
|
145
|
+
* Asset-related capabilities.
|
|
146
|
+
*/
|
|
147
|
+
assets: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
148
|
+
metadata?: boolean;
|
|
149
|
+
balances?: boolean;
|
|
150
|
+
}, {
|
|
151
|
+
/**
|
|
152
|
+
* Whether the keyring supports getting account assets
|
|
153
|
+
* (`keyring_getAccountAssets`).
|
|
154
|
+
*/
|
|
155
|
+
metadata: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
156
|
+
/**
|
|
157
|
+
* Whether the keyring supports getting account balances
|
|
158
|
+
* (`keyring_getAccountBalances`).
|
|
159
|
+
*/
|
|
160
|
+
balances: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
161
|
+
}>;
|
|
162
|
+
/**
|
|
163
|
+
* Whether the keyring supports getting account transactions
|
|
164
|
+
* (`keyring_getAccountTransactions`).
|
|
165
|
+
*/
|
|
166
|
+
transactions: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
167
|
+
/**
|
|
168
|
+
* Whether the keyring supports receiving selected accounts notifications
|
|
169
|
+
* (`keyring_setSelectedAccounts`).
|
|
170
|
+
*/
|
|
171
|
+
selectedAccounts: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
172
|
+
/**
|
|
173
|
+
* Whether the keyring supports resolving the account address to use for
|
|
174
|
+
* routing a signing request (`keyring_resolveAccountAddress`).
|
|
175
|
+
*/
|
|
176
|
+
resolveAccountAddress: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
177
|
+
}>;
|
|
121
178
|
}>;
|
|
122
179
|
/**
|
|
123
180
|
* Type representing the capabilities supported by a keyring.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-capabilities.d.cts","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAQnD;;GAEG;AACH,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"keyring-capabilities.d.cts","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAQnD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IACpC;;OAEG;;IAEH;;OAEG;;;;;;;QAGC;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;;IAIP;;OAEG;;;;;;;;;;QAGC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;WAEG;;;;;;;;;;;;IAIP;;;;;;OAMG;;;;;;IAQH;;;;OAIG;;;;;;;;;;QAGC;;WAEG;;;;;YAGC;;;eAGG;;YAEH;;;eAGG;;;QAIP;;;WAGG;;QAEH;;;WAGG;;QAEH;;;WAGG;;;EAIP,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
|
@@ -22,6 +22,15 @@ export declare const KeyringCapabilitiesStruct: import("@metamask/superstruct").
|
|
|
22
22
|
encoding: "hexadecimal" | "base58";
|
|
23
23
|
}[];
|
|
24
24
|
};
|
|
25
|
+
snap?: {
|
|
26
|
+
assets?: {
|
|
27
|
+
metadata?: boolean;
|
|
28
|
+
balances?: boolean;
|
|
29
|
+
};
|
|
30
|
+
transactions?: boolean;
|
|
31
|
+
selectedAccounts?: boolean;
|
|
32
|
+
resolveAccountAddress?: boolean;
|
|
33
|
+
};
|
|
25
34
|
}, {
|
|
26
35
|
/**
|
|
27
36
|
* List of CAIP-2 chain IDs that this keyring supports.
|
|
@@ -118,6 +127,54 @@ export declare const KeyringCapabilitiesStruct: import("@metamask/superstruct").
|
|
|
118
127
|
}, import("@metamask/superstruct").PartialObjectSchema<{
|
|
119
128
|
createAccounts: import("@metamask/superstruct").Struct<boolean, null>;
|
|
120
129
|
}>>;
|
|
130
|
+
/**
|
|
131
|
+
* Snap-specific capabilities supported by this keyring.
|
|
132
|
+
*
|
|
133
|
+
* Each flag maps to a Snap keyring RPC method that the Snap implements.
|
|
134
|
+
*/
|
|
135
|
+
snap: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
136
|
+
assets?: {
|
|
137
|
+
metadata?: boolean;
|
|
138
|
+
balances?: boolean;
|
|
139
|
+
};
|
|
140
|
+
transactions?: boolean;
|
|
141
|
+
selectedAccounts?: boolean;
|
|
142
|
+
resolveAccountAddress?: boolean;
|
|
143
|
+
}, {
|
|
144
|
+
/**
|
|
145
|
+
* Asset-related capabilities.
|
|
146
|
+
*/
|
|
147
|
+
assets: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
148
|
+
metadata?: boolean;
|
|
149
|
+
balances?: boolean;
|
|
150
|
+
}, {
|
|
151
|
+
/**
|
|
152
|
+
* Whether the keyring supports getting account assets
|
|
153
|
+
* (`keyring_getAccountAssets`).
|
|
154
|
+
*/
|
|
155
|
+
metadata: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
156
|
+
/**
|
|
157
|
+
* Whether the keyring supports getting account balances
|
|
158
|
+
* (`keyring_getAccountBalances`).
|
|
159
|
+
*/
|
|
160
|
+
balances: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
161
|
+
}>;
|
|
162
|
+
/**
|
|
163
|
+
* Whether the keyring supports getting account transactions
|
|
164
|
+
* (`keyring_getAccountTransactions`).
|
|
165
|
+
*/
|
|
166
|
+
transactions: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
167
|
+
/**
|
|
168
|
+
* Whether the keyring supports receiving selected accounts notifications
|
|
169
|
+
* (`keyring_setSelectedAccounts`).
|
|
170
|
+
*/
|
|
171
|
+
selectedAccounts: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
172
|
+
/**
|
|
173
|
+
* Whether the keyring supports resolving the account address to use for
|
|
174
|
+
* routing a signing request (`keyring_resolveAccountAddress`).
|
|
175
|
+
*/
|
|
176
|
+
resolveAccountAddress: import("@metamask/superstruct").ExactOptionalStruct<boolean, null>;
|
|
177
|
+
}>;
|
|
121
178
|
}>;
|
|
122
179
|
/**
|
|
123
180
|
* Type representing the capabilities supported by a keyring.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-capabilities.d.mts","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAQnD;;GAEG;AACH,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"keyring-capabilities.d.mts","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;AAQnD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IACpC;;OAEG;;IAEH;;OAEG;;;;;;;QAGC;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;;IAIP;;OAEG;;;;;;;;;;QAGC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;WAEG;;;;;;;;;;;;IAIP;;;;;;OAMG;;;;;;IAQH;;;;OAIG;;;;;;;;;;QAGC;;WAEG;;;;;YAGC;;;eAGG;;YAEH;;;eAGG;;;QAIP;;;WAGG;;QAEH;;;WAGG;;QAEH;;;WAGG;;;EAIP,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
|
@@ -53,5 +53,42 @@ export const KeyringCapabilitiesStruct = object({
|
|
|
53
53
|
custom: exactOptional(partial(object({
|
|
54
54
|
createAccounts: boolean(),
|
|
55
55
|
}))),
|
|
56
|
+
/**
|
|
57
|
+
* Snap-specific capabilities supported by this keyring.
|
|
58
|
+
*
|
|
59
|
+
* Each flag maps to a Snap keyring RPC method that the Snap implements.
|
|
60
|
+
*/
|
|
61
|
+
snap: exactOptional(object({
|
|
62
|
+
/**
|
|
63
|
+
* Asset-related capabilities.
|
|
64
|
+
*/
|
|
65
|
+
assets: exactOptional(object({
|
|
66
|
+
/**
|
|
67
|
+
* Whether the keyring supports getting account assets
|
|
68
|
+
* (`keyring_getAccountAssets`).
|
|
69
|
+
*/
|
|
70
|
+
metadata: exactOptional(boolean()),
|
|
71
|
+
/**
|
|
72
|
+
* Whether the keyring supports getting account balances
|
|
73
|
+
* (`keyring_getAccountBalances`).
|
|
74
|
+
*/
|
|
75
|
+
balances: exactOptional(boolean()),
|
|
76
|
+
})),
|
|
77
|
+
/**
|
|
78
|
+
* Whether the keyring supports getting account transactions
|
|
79
|
+
* (`keyring_getAccountTransactions`).
|
|
80
|
+
*/
|
|
81
|
+
transactions: exactOptional(boolean()),
|
|
82
|
+
/**
|
|
83
|
+
* Whether the keyring supports receiving selected accounts notifications
|
|
84
|
+
* (`keyring_setSelectedAccounts`).
|
|
85
|
+
*/
|
|
86
|
+
selectedAccounts: exactOptional(boolean()),
|
|
87
|
+
/**
|
|
88
|
+
* Whether the keyring supports resolving the account address to use for
|
|
89
|
+
* routing a signing request (`keyring_resolveAccountAddress`).
|
|
90
|
+
*/
|
|
91
|
+
resolveAccountAddress: exactOptional(boolean()),
|
|
92
|
+
})),
|
|
56
93
|
});
|
|
57
94
|
//# sourceMappingURL=keyring-capabilities.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-capabilities.mjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,OAAO,EACP,aAAa,EACb,QAAQ,EACR,MAAM,EACN,OAAO,EACR,8BAA8B;AAG/B,OAAO,EAAE,iBAAiB,EAAE,2BAAuB;AACnD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC7B,0BAAsB;AAEvB;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;IAC9C;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC1C;;OAEG;IACH,KAAK,EAAE,aAAa,CAClB,MAAM,CAAC;QACL;;WAEG;QACH,UAAU,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QACpC;;WAEG;QACH,WAAW,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QACrC;;WAEG;QACH,gBAAgB,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QAC1C;;WAEG;QACH,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;KACnC,CAAC,CACH;IACD;;OAEG;IACH,UAAU,EAAE,aAAa,CACvB,MAAM,CAAC;QACL;;WAEG;QACH,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACjE;;WAEG;QACH,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;KAClE,CAAC,CACH;IACD;;;;;;OAMG;IACH,MAAM,EAAE,aAAa,CACnB,OAAO,CACL,MAAM,CAAC;QACL,cAAc,EAAE,OAAO,EAAE;KAC1B,CAAC,CACH,CACF;CACF,CAAC,CAAC","sourcesContent":["import {\n array,\n boolean,\n exactOptional,\n nonempty,\n object,\n partial,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { CaipChainIdStruct } from '../../api/caip';\nimport {\n ExportPrivateKeyFormatStruct,\n ImportPrivateKeyFormatStruct,\n} from './private-key';\n\n/**\n * Struct for {@link KeyringCapabilities}.\n */\nexport const KeyringCapabilitiesStruct = object({\n /**\n * List of CAIP-2 chain IDs that this keyring supports.\n */\n scopes: nonempty(array(CaipChainIdStruct)),\n /**\n * BIP-44 capabilities supported by this keyring.\n */\n bip44: exactOptional(\n object({\n /**\n * Whether the keyring supports deriving accounts from a specific BIP-44 path.\n */\n derivePath: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a BIP-44 account index.\n */\n deriveIndex: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a range of BIP-44 account indices.\n */\n deriveIndexRange: exactOptional(boolean()),\n /**\n * Whether the keyring supports BIP-44 account discovery.\n */\n discover: exactOptional(boolean()),\n }),\n ),\n /**\n * Private key capabilities supported by this keyring.\n */\n privateKey: exactOptional(\n object({\n /**\n * List of supported formats for importing private keys.\n */\n importFormats: exactOptional(array(ImportPrivateKeyFormatStruct)),\n /**\n * List of supported formats for exporting private keys.\n */\n exportFormats: exactOptional(array(ExportPrivateKeyFormatStruct)),\n }),\n ),\n /**\n * Indicates which Keyring methods accept non-standard options.\n *\n * When a method is set to `true`, it signals that the keyring implementation\n * accepts custom options for that method, different from the standard API.\n * This is a workaround for keyrings with very specific requirements.\n */\n custom: exactOptional(\n partial(\n object({\n createAccounts: boolean(),\n }),\n ),\n ),\n});\n\n/**\n * Type representing the capabilities supported by a keyring.\n *\n * @example\n * ```ts\n * const capabilities: KeyringCapabilities = {\n * scopes: ['bip122:_'],\n * bip44: {\n * derivePath: true,\n * deriveIndex: true,\n * deriveIndexRange: true,\n * discover: true,\n * },\n * privateKey: {\n * importFormats: [\n * { encoding: 'base58', type: 'bip122:p2sh' },\n * { encoding: 'base58', type: 'bip122:p2tr' },\n * { encoding: 'base58', type: 'bip122:p2pkh' },\n * { encoding: 'base58', type: 'bip122:p2wpkh' },\n * ],\n * exportFormats: [\n * { encoding: 'base58' },\n * { encoding: 'base58' },\n * ],\n * },\n * };\n * ```\n */\nexport type KeyringCapabilities = Infer<typeof KeyringCapabilitiesStruct>;\n"]}
|
|
1
|
+
{"version":3,"file":"keyring-capabilities.mjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,OAAO,EACP,aAAa,EACb,QAAQ,EACR,MAAM,EACN,OAAO,EACR,8BAA8B;AAG/B,OAAO,EAAE,iBAAiB,EAAE,2BAAuB;AACnD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC7B,0BAAsB;AAEvB;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;IAC9C;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC1C;;OAEG;IACH,KAAK,EAAE,aAAa,CAClB,MAAM,CAAC;QACL;;WAEG;QACH,UAAU,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QACpC;;WAEG;QACH,WAAW,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QACrC;;WAEG;QACH,gBAAgB,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QAC1C;;WAEG;QACH,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;KACnC,CAAC,CACH;IACD;;OAEG;IACH,UAAU,EAAE,aAAa,CACvB,MAAM,CAAC;QACL;;WAEG;QACH,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACjE;;WAEG;QACH,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;KAClE,CAAC,CACH;IACD;;;;;;OAMG;IACH,MAAM,EAAE,aAAa,CACnB,OAAO,CACL,MAAM,CAAC;QACL,cAAc,EAAE,OAAO,EAAE;KAC1B,CAAC,CACH,CACF;IACD;;;;OAIG;IACH,IAAI,EAAE,aAAa,CACjB,MAAM,CAAC;QACL;;WAEG;QACH,MAAM,EAAE,aAAa,CACnB,MAAM,CAAC;YACL;;;eAGG;YACH,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;YAClC;;;eAGG;YACH,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;SACnC,CAAC,CACH;QACD;;;WAGG;QACH,YAAY,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QACtC;;;WAGG;QACH,gBAAgB,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QAC1C;;;WAGG;QACH,qBAAqB,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;KAChD,CAAC,CACH;CACF,CAAC,CAAC","sourcesContent":["import {\n array,\n boolean,\n exactOptional,\n nonempty,\n object,\n partial,\n} from '@metamask/superstruct';\nimport type { Infer } from '@metamask/superstruct';\n\nimport { CaipChainIdStruct } from '../../api/caip';\nimport {\n ExportPrivateKeyFormatStruct,\n ImportPrivateKeyFormatStruct,\n} from './private-key';\n\n/**\n * Struct for {@link KeyringCapabilities}.\n */\nexport const KeyringCapabilitiesStruct = object({\n /**\n * List of CAIP-2 chain IDs that this keyring supports.\n */\n scopes: nonempty(array(CaipChainIdStruct)),\n /**\n * BIP-44 capabilities supported by this keyring.\n */\n bip44: exactOptional(\n object({\n /**\n * Whether the keyring supports deriving accounts from a specific BIP-44 path.\n */\n derivePath: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a BIP-44 account index.\n */\n deriveIndex: exactOptional(boolean()),\n /**\n * Whether the keyring supports deriving accounts from a range of BIP-44 account indices.\n */\n deriveIndexRange: exactOptional(boolean()),\n /**\n * Whether the keyring supports BIP-44 account discovery.\n */\n discover: exactOptional(boolean()),\n }),\n ),\n /**\n * Private key capabilities supported by this keyring.\n */\n privateKey: exactOptional(\n object({\n /**\n * List of supported formats for importing private keys.\n */\n importFormats: exactOptional(array(ImportPrivateKeyFormatStruct)),\n /**\n * List of supported formats for exporting private keys.\n */\n exportFormats: exactOptional(array(ExportPrivateKeyFormatStruct)),\n }),\n ),\n /**\n * Indicates which Keyring methods accept non-standard options.\n *\n * When a method is set to `true`, it signals that the keyring implementation\n * accepts custom options for that method, different from the standard API.\n * This is a workaround for keyrings with very specific requirements.\n */\n custom: exactOptional(\n partial(\n object({\n createAccounts: boolean(),\n }),\n ),\n ),\n /**\n * Snap-specific capabilities supported by this keyring.\n *\n * Each flag maps to a Snap keyring RPC method that the Snap implements.\n */\n snap: exactOptional(\n object({\n /**\n * Asset-related capabilities.\n */\n assets: exactOptional(\n object({\n /**\n * Whether the keyring supports getting account assets\n * (`keyring_getAccountAssets`).\n */\n metadata: exactOptional(boolean()),\n /**\n * Whether the keyring supports getting account balances\n * (`keyring_getAccountBalances`).\n */\n balances: exactOptional(boolean()),\n }),\n ),\n /**\n * Whether the keyring supports getting account transactions\n * (`keyring_getAccountTransactions`).\n */\n transactions: exactOptional(boolean()),\n /**\n * Whether the keyring supports receiving selected accounts notifications\n * (`keyring_setSelectedAccounts`).\n */\n selectedAccounts: exactOptional(boolean()),\n /**\n * Whether the keyring supports resolving the account address to use for\n * routing a signing request (`keyring_resolveAccountAddress`).\n */\n resolveAccountAddress: exactOptional(boolean()),\n }),\n ),\n});\n\n/**\n * Type representing the capabilities supported by a keyring.\n *\n * @example\n * ```ts\n * const capabilities: KeyringCapabilities = {\n * scopes: ['bip122:_'],\n * bip44: {\n * derivePath: true,\n * deriveIndex: true,\n * deriveIndexRange: true,\n * discover: true,\n * },\n * privateKey: {\n * importFormats: [\n * { encoding: 'base58', type: 'bip122:p2sh' },\n * { encoding: 'base58', type: 'bip122:p2tr' },\n * { encoding: 'base58', type: 'bip122:p2pkh' },\n * { encoding: 'base58', type: 'bip122:p2wpkh' },\n * ],\n * exportFormats: [\n * { encoding: 'base58' },\n * { encoding: 'base58' },\n * ],\n * },\n * };\n * ```\n */\nexport type KeyringCapabilities = Infer<typeof KeyringCapabilitiesStruct>;\n"]}
|
|
@@ -38,24 +38,24 @@ const CommonHeader = {
|
|
|
38
38
|
};
|
|
39
39
|
// ----------------------------------------------------------------------------
|
|
40
40
|
// Get accounts
|
|
41
|
-
exports.GetAccountsRequestStruct = (0,
|
|
41
|
+
exports.GetAccountsRequestStruct = (0, superstruct_1.object)({
|
|
42
42
|
...CommonHeader,
|
|
43
43
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.GetAccounts}`),
|
|
44
44
|
});
|
|
45
45
|
exports.GetAccountsResponseStruct = (0, superstruct_1.array)(account_1.KeyringAccountStruct);
|
|
46
46
|
// ----------------------------------------------------------------------------
|
|
47
47
|
// Get account
|
|
48
|
-
exports.GetAccountRequestStruct = (0,
|
|
48
|
+
exports.GetAccountRequestStruct = (0, superstruct_1.object)({
|
|
49
49
|
...CommonHeader,
|
|
50
50
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.GetAccount}`),
|
|
51
|
-
params: (0,
|
|
51
|
+
params: (0, superstruct_1.object)({
|
|
52
52
|
id: keyring_utils_1.UuidStruct,
|
|
53
53
|
}),
|
|
54
54
|
});
|
|
55
55
|
exports.GetAccountResponseStruct = account_1.KeyringAccountStruct;
|
|
56
56
|
// ----------------------------------------------------------------------------
|
|
57
57
|
// Create accounts
|
|
58
|
-
exports.CreateAccountsRequestStruct = (0,
|
|
58
|
+
exports.CreateAccountsRequestStruct = (0, superstruct_1.object)({
|
|
59
59
|
...CommonHeader,
|
|
60
60
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.CreateAccounts}`),
|
|
61
61
|
params: create_account_1.CreateAccountOptionsStruct,
|
|
@@ -63,28 +63,28 @@ exports.CreateAccountsRequestStruct = (0, keyring_utils_1.object)({
|
|
|
63
63
|
exports.CreateAccountsResponseStruct = (0, superstruct_1.array)(account_1.KeyringAccountStruct);
|
|
64
64
|
// ----------------------------------------------------------------------------
|
|
65
65
|
// Delete account
|
|
66
|
-
exports.DeleteAccountRequestStruct = (0,
|
|
66
|
+
exports.DeleteAccountRequestStruct = (0, superstruct_1.object)({
|
|
67
67
|
...CommonHeader,
|
|
68
68
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.DeleteAccount}`),
|
|
69
|
-
params: (0,
|
|
69
|
+
params: (0, superstruct_1.object)({
|
|
70
70
|
id: keyring_utils_1.UuidStruct,
|
|
71
71
|
}),
|
|
72
72
|
});
|
|
73
73
|
exports.DeleteAccountResponseStruct = (0, superstruct_1.literal)(null);
|
|
74
74
|
// ----------------------------------------------------------------------------
|
|
75
75
|
// Export account
|
|
76
|
-
exports.ExportAccountRequestStruct = (0,
|
|
76
|
+
exports.ExportAccountRequestStruct = (0, superstruct_1.object)({
|
|
77
77
|
...CommonHeader,
|
|
78
78
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.ExportAccount}`),
|
|
79
|
-
params: (0,
|
|
79
|
+
params: (0, superstruct_1.object)({
|
|
80
80
|
id: keyring_utils_1.UuidStruct,
|
|
81
|
-
options: (0,
|
|
81
|
+
options: (0, superstruct_1.exactOptional)(export_account_1.ExportAccountOptionsStruct),
|
|
82
82
|
}),
|
|
83
83
|
});
|
|
84
84
|
exports.ExportAccountResponseStruct = export_account_1.PrivateKeyExportedAccountStruct;
|
|
85
85
|
// ----------------------------------------------------------------------------
|
|
86
86
|
// Submit request
|
|
87
|
-
exports.SubmitRequestRequestStruct = (0,
|
|
87
|
+
exports.SubmitRequestRequestStruct = (0, superstruct_1.object)({
|
|
88
88
|
...CommonHeader,
|
|
89
89
|
method: (0, superstruct_1.literal)(`${exports.KeyringRpcMethod.SubmitRequest}`),
|
|
90
90
|
params: request_1.KeyringRequestStruct,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-rpc.cjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"keyring-rpc.cjs","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":"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","sourcesContent":["import { UuidStruct } from '@metamask/keyring-utils';\nimport type { Infer } from '@metamask/superstruct';\nimport {\n array,\n exactOptional,\n literal,\n number,\n object,\n string,\n union,\n} from '@metamask/superstruct';\nimport { JsonStruct } from '@metamask/utils';\n\nimport { KeyringAccountStruct } from '../../api/account';\nimport { KeyringRequestStruct } from '../../api/request';\nimport { CreateAccountOptionsStruct } from './create-account';\nimport {\n ExportAccountOptionsStruct,\n PrivateKeyExportedAccountStruct,\n} from './export-account';\nimport type { Keyring } from './keyring';\n\n/**\n * Keyring interface for keyring methods that can be invoked through\n * RPC calls.\n */\nexport type KeyringRpc = {\n getAccount: Keyring['getAccount'];\n getAccounts: Keyring['getAccounts'];\n createAccounts: Keyring['createAccounts'];\n deleteAccount: Keyring['deleteAccount'];\n submitRequest: Keyring['submitRequest'];\n exportAccount?: Keyring['exportAccount'];\n};\n\n/**\n * Keyring RPC methods used by the API.\n */\nexport const KeyringRpcMethod = {\n GetAccounts: 'keyring_getAccounts',\n CreateAccounts: 'keyring_createAccounts',\n // Inherited from v1 (but method signatures may differ...):\n // NOTE: We use literals here to avoid circular dependencies.\n GetAccount: 'keyring_getAccount',\n DeleteAccount: 'keyring_deleteAccount',\n ExportAccount: 'keyring_exportAccount',\n SubmitRequest: 'keyring_submitRequest',\n} as const;\n\n/**\n * Keyring RPC methods used by the API.\n */\nexport type KeyringRpcMethod =\n (typeof KeyringRpcMethod)[keyof typeof KeyringRpcMethod];\n\n/**\n * Check if a method is a keyring RPC method (v2).\n *\n * @param method - Method to check.\n * @returns Whether the method is a keyring RPC method (v2).\n */\nexport function isKeyringRpcMethod(method: string): method is KeyringRpcMethod {\n return Object.values(KeyringRpcMethod).includes(method as KeyringRpcMethod);\n}\n\n// ----------------------------------------------------------------------------\n\nconst CommonHeader = {\n jsonrpc: literal('2.0'),\n id: union([string(), number(), literal(null)]),\n};\n\n// ----------------------------------------------------------------------------\n// Get accounts\n\nexport const GetAccountsRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.GetAccounts}`),\n});\n\nexport type GetAccountsRequest = Infer<typeof GetAccountsRequestStruct>;\n\nexport const GetAccountsResponseStruct = array(KeyringAccountStruct);\n\nexport type GetAccountsResponse = Infer<typeof GetAccountsResponseStruct>;\n\n// ----------------------------------------------------------------------------\n// Get account\n\nexport const GetAccountRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.GetAccount}`),\n params: object({\n id: UuidStruct,\n }),\n});\n\nexport type GetAccountRequest = Infer<typeof GetAccountRequestStruct>;\n\nexport const GetAccountResponseStruct = KeyringAccountStruct;\n\nexport type GetAccountResponse = Infer<typeof GetAccountResponseStruct>;\n\n// ----------------------------------------------------------------------------\n// Create accounts\n\nexport const CreateAccountsRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.CreateAccounts}`),\n params: CreateAccountOptionsStruct,\n});\n\nexport type CreateAccountsRequest = Infer<typeof CreateAccountsRequestStruct>;\n\nexport const CreateAccountsResponseStruct = array(KeyringAccountStruct);\n\nexport type CreateAccountsResponse = Infer<typeof CreateAccountsResponseStruct>;\n\n// ----------------------------------------------------------------------------\n// Delete account\n\nexport const DeleteAccountRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.DeleteAccount}`),\n params: object({\n id: UuidStruct,\n }),\n});\n\nexport type DeleteAccountRequest = Infer<typeof DeleteAccountRequestStruct>;\n\nexport const DeleteAccountResponseStruct = literal(null);\n\nexport type DeleteAccountResponse = Infer<typeof DeleteAccountResponseStruct>;\n\n// ----------------------------------------------------------------------------\n// Export account\n\nexport const ExportAccountRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.ExportAccount}`),\n params: object({\n id: UuidStruct,\n options: exactOptional(ExportAccountOptionsStruct),\n }),\n});\n\nexport type ExportAccountRequest = Infer<typeof ExportAccountRequestStruct>;\n\nexport const ExportAccountResponseStruct = PrivateKeyExportedAccountStruct;\n\nexport type ExportAccountResponse = Infer<typeof ExportAccountResponseStruct>;\n\n// ----------------------------------------------------------------------------\n// Submit request\n\nexport const SubmitRequestRequestStruct = object({\n ...CommonHeader,\n method: literal(`${KeyringRpcMethod.SubmitRequest}`),\n params: KeyringRequestStruct,\n});\n\nexport type SubmitRequestRequest = Infer<typeof SubmitRequestRequestStruct>;\n\nexport const SubmitRequestResponseStruct = JsonStruct;\n\nexport type SubmitRequestResponse = Infer<typeof SubmitRequestResponseStruct>;\n\n// ----------------------------------------------------------------------------\n\n/**\n * Keyring RPC requests.\n */\nexport type KeyringRpcRequests =\n | GetAccountsRequest\n | GetAccountRequest\n | CreateAccountsRequest\n | DeleteAccountRequest\n | ExportAccountRequest\n | SubmitRequestRequest;\n\n/**\n * Extract the proper request type for a given `KeyringRpcMethod`.\n */\nexport type KeyringRpcRequest<RpcMethod extends KeyringRpcMethod> = Extract<\n KeyringRpcRequests,\n { method: `${RpcMethod}` }\n>;\n"]}
|
|
@@ -358,7 +358,7 @@ export declare const ExportAccountRequestStruct: import("@metamask/superstruct")
|
|
|
358
358
|
};
|
|
359
359
|
}, {
|
|
360
360
|
id: import("@metamask/superstruct").Struct<string, null>;
|
|
361
|
-
options: import("@metamask/superstruct").
|
|
361
|
+
options: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
362
362
|
type: "private-key";
|
|
363
363
|
encoding: "hexadecimal" | "base58";
|
|
364
364
|
}, {
|
|
@@ -421,7 +421,7 @@ export declare const SubmitRequestRequestStruct: import("@metamask/superstruct")
|
|
|
421
421
|
params?: Record<string, import("@metamask/utils").Json> | import("@metamask/utils").Json[];
|
|
422
422
|
}, {
|
|
423
423
|
method: import("@metamask/superstruct").Struct<string, null>;
|
|
424
|
-
params: import("@metamask/superstruct").
|
|
424
|
+
params: import("@metamask/superstruct").ExactOptionalStruct<Record<string, import("@metamask/utils").Json> | import("@metamask/utils").Json[], null>;
|
|
425
425
|
}>;
|
|
426
426
|
}>;
|
|
427
427
|
jsonrpc: import("@metamask/superstruct").Struct<"2.0", "2.0">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-rpc.d.cts","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;
|
|
1
|
+
{"version":3,"file":"keyring-rpc.d.cts","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":"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"}
|
|
@@ -358,7 +358,7 @@ export declare const ExportAccountRequestStruct: import("@metamask/superstruct")
|
|
|
358
358
|
};
|
|
359
359
|
}, {
|
|
360
360
|
id: import("@metamask/superstruct").Struct<string, null>;
|
|
361
|
-
options: import("@metamask/superstruct").
|
|
361
|
+
options: import("@metamask/superstruct").ExactOptionalStruct<{
|
|
362
362
|
type: "private-key";
|
|
363
363
|
encoding: "hexadecimal" | "base58";
|
|
364
364
|
}, {
|
|
@@ -421,7 +421,7 @@ export declare const SubmitRequestRequestStruct: import("@metamask/superstruct")
|
|
|
421
421
|
params?: Record<string, import("@metamask/utils").Json> | import("@metamask/utils").Json[];
|
|
422
422
|
}, {
|
|
423
423
|
method: import("@metamask/superstruct").Struct<string, null>;
|
|
424
|
-
params: import("@metamask/superstruct").
|
|
424
|
+
params: import("@metamask/superstruct").ExactOptionalStruct<Record<string, import("@metamask/utils").Json> | import("@metamask/utils").Json[], null>;
|
|
425
425
|
}>;
|
|
426
426
|
}>;
|
|
427
427
|
jsonrpc: import("@metamask/superstruct").Struct<"2.0", "2.0">;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyring-rpc.d.mts","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,8BAA8B;
|
|
1
|
+
{"version":3,"file":"keyring-rpc.d.mts","sourceRoot":"","sources":["../../../src/v2/api/keyring-rpc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { array, literal, number, string, union } from "@metamask/superstruct";
|
|
1
|
+
import { UuidStruct } from "@metamask/keyring-utils";
|
|
2
|
+
import { array, exactOptional, literal, number, object, string, union } from "@metamask/superstruct";
|
|
3
3
|
import { JsonStruct } from "@metamask/utils";
|
|
4
4
|
import { KeyringAccountStruct } from "../../api/account.mjs";
|
|
5
5
|
import { KeyringRequestStruct } from "../../api/request.mjs";
|