@metamask/keyring-api
Version:
MetaMask Keyring API
72 lines • 2.53 kB
text/typescript
import type { Infer } from "@metamask/superstruct";
/**
* Solana addresses are represented in the format of a 256-bit ed25519 public key and
* are encoded using base58.
* They are usually 32 to 44 characters long.
*/
export declare const SolAddressStruct: import("@metamask/superstruct").Struct<string, null>;
/**
* Supported Solana methods.
*/
export declare enum SolMethod {
SendAndConfirmTransaction = "sendAndConfirmTransaction",
SignAndSendTransaction = "signAndSendTransaction",
SignTransaction = "signTransaction",
SignMessage = "signMessage",
SignIn = "signIn"
}
export declare const SolDataAccountStruct: import("@metamask/superstruct").Struct<{
type: "solana:data-account";
id: string;
options: Record<string, import("@metamask/utils").Json> & {
entropy?: {
type: "mnemonic";
id: string;
derivationPath: string;
groupIndex: number;
} | {
type: "private-key";
};
exportable?: boolean;
};
address: string;
scopes: `${string}:${string}`[];
methods: SolMethod[];
}, {
/**
* Account address.
*/
address: import("@metamask/superstruct").Struct<string, null>;
/**
* Account type.
*/
type: import("@metamask/superstruct").Struct<"solana:data-account", "solana:data-account">;
/**
* Account supported scopes (CAIP-2 chain IDs).
*/
scopes: import("@metamask/superstruct").Struct<`${string}:${string}`[], import("@metamask/superstruct").Struct<`${string}:${string}`, null>>;
/**
* Account supported methods.
*/
methods: import("@metamask/superstruct").Struct<SolMethod[], import("@metamask/superstruct").Struct<SolMethod, {
sendAndConfirmTransaction: SolMethod.SendAndConfirmTransaction;
signAndSendTransaction: SolMethod.SignAndSendTransaction;
signTransaction: SolMethod.SignTransaction;
signMessage: SolMethod.SignMessage;
signIn: SolMethod.SignIn;
}>>;
id: import("@metamask/superstruct").Struct<string, null>;
options: import("@metamask/superstruct").Struct<Record<string, import("@metamask/utils").Json> & {
entropy?: {
type: "mnemonic";
id: string;
derivationPath: string;
groupIndex: number;
} | {
type: "private-key";
};
exportable?: boolean;
}, null>;
}>;
export type SolDataAccount = Infer<typeof SolDataAccountStruct>;
//# sourceMappingURL=types.d.cts.map