@metamask/snaps-rpc-methods
Version:
MetaMask Snaps JSON-RPC method implementations
163 lines • 12 kB
text/typescript
import type { PermissionConstraint } from "@metamask/permission-controller";
import { HandlerType } from "@metamask/snaps-utils";
import type { Json } from "@metamask/utils";
export declare const endowmentPermissionBuilders: {
readonly "endowment:network-access": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.NetworkAccess;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.NetworkAccess;
endowmentGetter: (_options?: any) => ["fetch", "Request", "Headers", "Response"];
allowedCaveats: null;
}>;
}>;
readonly "endowment:transaction-insight": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.TransactionInsight;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.TransactionInsight;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
}>;
}>;
readonly "endowment:cronjob": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.Cronjob;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.Cronjob;
endowmentGetter: (_options?: any) => null;
allowedCaveats: readonly [string, ...string[]] | null;
}>;
}>;
readonly "endowment:ethereum-provider": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.EthereumProvider;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.EthereumProvider;
endowmentGetter: (_options?: any) => ["ethereum"];
allowedCaveats: null;
}>;
}>;
readonly "endowment:rpc": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.Rpc;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, {}, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.Rpc;
endowmentGetter: (_options?: any) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
subjectTypes: readonly import("@metamask/permission-controller").SubjectType[];
}>;
}>;
readonly "endowment:webassembly": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.WebAssemblyAccess;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.WebAssemblyAccess;
endowmentGetter: (_options?: any) => ["WebAssembly"];
allowedCaveats: null;
}>;
}>;
readonly "endowment:name-lookup": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.NameLookup;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.NameLookup;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
}>;
}>;
readonly "endowment:lifecycle-hooks": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.LifecycleHooks;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.LifecycleHooks;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
}>;
}>;
readonly "endowment:keyring": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.Keyring;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.Keyring;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
subjectTypes: readonly import("@metamask/permission-controller").SubjectType[];
}>;
}>;
readonly "endowment:page-settings": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.SettingsPage;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.SettingsPage;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
}>;
}>;
readonly "endowment:protocol": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.Protocol;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.Protocol;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
subjectTypes: readonly import("@metamask/permission-controller").SubjectType[];
}>;
}>;
readonly "endowment:page-home": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.HomePage;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.HomePage;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
}>;
}>;
readonly "endowment:signature-insight": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.SignatureInsight;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.SignatureInsight;
endowmentGetter: (_options?: import("@metamask/permission-controller").EndowmentGetterParams | undefined) => null;
allowedCaveats: readonly [string, ...string[]] | null;
validator: import("@metamask/permission-controller").PermissionValidatorConstraint;
}>;
}>;
readonly "endowment:assets": Readonly<{
readonly targetName: import("./enum.mjs").SnapEndowments.Assets;
readonly specificationBuilder: import("@metamask/permission-controller").PermissionSpecificationBuilder<import("@metamask/permission-controller").PermissionType.Endowment, any, {
permissionType: import("@metamask/permission-controller").PermissionType.Endowment;
targetName: import("./enum.mjs").SnapEndowments.Assets;
endowmentGetter: (_options?: any) => null;
allowedCaveats: readonly [string, ...string[]] | null;
}>;
}>;
};
export declare const endowmentCaveatSpecifications: {
protocolSnapScopes: import("@metamask/permission-controller").CaveatSpecificationConstraint;
maxRequestTime: import("@metamask/permission-controller").CaveatSpecificationConstraint;
signatureOrigin: import("@metamask/permission-controller").CaveatSpecificationConstraint;
keyringOrigin: import("@metamask/permission-controller").CaveatSpecificationConstraint;
chainIds: import("@metamask/permission-controller").CaveatSpecificationConstraint;
lookupMatchers: import("@metamask/permission-controller").CaveatSpecificationConstraint;
rpcOrigin: import("@metamask/permission-controller").CaveatSpecificationConstraint;
transactionOrigin: import("@metamask/permission-controller").CaveatSpecificationConstraint;
snapCronjob: import("@metamask/permission-controller").CaveatSpecificationConstraint;
};
export declare const endowmentCaveatMappers: Record<string, (value: Json) => Pick<PermissionConstraint, 'caveats'>>;
export declare const handlerEndowments: Record<HandlerType, string | null>;
export * from "./enum.mjs";
export { getRpcCaveatOrigins } from "./rpc.mjs";
export { getSignatureOriginCaveat } from "./signature-insight.mjs";
export { getTransactionOriginCaveat } from "./transaction-insight.mjs";
export { getChainIdsCaveat, getLookupMatchersCaveat } from "./name-lookup.mjs";
export { getKeyringCaveatOrigins } from "./keyring.mjs";
export { getMaxRequestTimeCaveat } from "./caveats/index.mjs";
export { getCronjobCaveatJobs } from "./cronjob.mjs";
export { getProtocolCaveatScopes } from "./protocol.mjs";
//# sourceMappingURL=index.d.mts.map