@metamask/keyring-internal-api
Version:
MetaMask Keyring Internal API
68 lines • 3.73 kB
JavaScript
;
/* eslint-disable @typescript-eslint/no-redundant-type-constituents */
/* eslint-disable @typescript-eslint/no-duplicate-type-constituents */
// FIXME: Those rules seem to be triggering a false positive on the `InternalAccountStructs`
// and `InternalAccountTypes`.
Object.defineProperty(exports, "__esModule", { value: true });
exports.InternalAccountStruct = exports.InternalAccountStructs = exports.InternalSolDataAccountStruct = exports.InternalBtcP2trAccountStruct = exports.InternalBtcP2wpkhAccountStruct = exports.InternalBtcP2shAccountStruct = exports.InternalBtcP2pkhAccountStruct = exports.InternalEthErc4337AccountStruct = exports.InternalEthEoaAccountStruct = exports.InternalAccountMetadataStruct = void 0;
const keyring_api_1 = require("@metamask/keyring-api");
const keyring_utils_1 = require("@metamask/keyring-utils");
const superstruct_1 = require("@metamask/superstruct");
exports.InternalAccountMetadataStruct = (0, keyring_utils_1.object)({
metadata: (0, keyring_utils_1.object)({
name: (0, superstruct_1.string)(),
nameLastUpdatedAt: (0, keyring_utils_1.exactOptional)((0, superstruct_1.number)()),
snap: (0, keyring_utils_1.exactOptional)((0, keyring_utils_1.object)({
id: (0, superstruct_1.string)(),
enabled: (0, superstruct_1.boolean)(),
name: (0, superstruct_1.string)(),
})),
lastSelected: (0, keyring_utils_1.exactOptional)((0, superstruct_1.number)()),
importTime: (0, superstruct_1.number)(),
keyring: (0, keyring_utils_1.object)({
type: (0, superstruct_1.string)(),
}),
}),
});
exports.InternalEthEoaAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.EthEoaAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalEthErc4337AccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.EthErc4337AccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalBtcP2pkhAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.BtcP2pkhAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalBtcP2shAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.BtcP2shAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalBtcP2wpkhAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.BtcP2wpkhAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalBtcP2trAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.BtcP2trAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalSolDataAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.SolDataAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
exports.InternalAccountStructs = {
[`${keyring_api_1.EthAccountType.Eoa}`]: exports.InternalEthEoaAccountStruct,
[`${keyring_api_1.EthAccountType.Erc4337}`]: exports.InternalEthErc4337AccountStruct,
[`${keyring_api_1.BtcAccountType.P2pkh}`]: exports.InternalBtcP2pkhAccountStruct,
[`${keyring_api_1.BtcAccountType.P2sh}`]: exports.InternalBtcP2shAccountStruct,
[`${keyring_api_1.BtcAccountType.P2wpkh}`]: exports.InternalBtcP2wpkhAccountStruct,
[`${keyring_api_1.BtcAccountType.P2tr}`]: exports.InternalBtcP2trAccountStruct,
[`${keyring_api_1.SolAccountType.DataAccount}`]: exports.InternalSolDataAccountStruct,
};
exports.InternalAccountStruct = (0, keyring_utils_1.object)({
...keyring_api_1.KeyringAccountStruct.schema,
...exports.InternalAccountMetadataStruct.schema,
});
//# sourceMappingURL=types.cjs.map