@metamask/snaps-sdk
Version:
A library containing the core functionality for building MetaMask Snaps
57 lines • 1.49 kB
text/typescript
import type { Infer } from "@metamask/superstruct";
/**
* The supported node types. This is based on SIP-7.
*
* @see https://metamask.github.io/SIPs/SIPS/sip-7
*/
export declare enum NodeType {
Copyable = "copyable",
Divider = "divider",
Heading = "heading",
Panel = "panel",
Spinner = "spinner",
Text = "text",
Image = "image",
Row = "row",
Address = "address",
Button = "button",
Input = "input",
Form = "form"
}
/**
* @internal
*/
export declare const NodeStruct: import("@metamask/superstruct").Struct<{
type: string;
}, {
type: import("@metamask/superstruct").Struct<string, null>;
}>;
/**
* The base node type. All nodes extend this type.
*
* @property type - The type of the node. See {@link NodeType} for the supported
* node types.
* @internal
*/
export type Node = Infer<typeof NodeStruct>;
/**
* @internal
*/
export declare const LiteralStruct: import("@metamask/superstruct").Struct<{
value: unknown;
type: string;
}, {
value: import("@metamask/superstruct").Struct<unknown, null>;
type: import("@metamask/superstruct").Struct<string, null>;
}>;
/**
* A node with a value. This is used for nodes that render a value, such as
* {@link Text}.
*
* @property type - The type of the node.
* @property value - The value of the node. The type of the value depends on the
* node type.
* @internal
*/
export type Literal = Infer<typeof LiteralStruct>;
//# sourceMappingURL=nodes.d.cts.map