import type { Infer } from "@metamask/superstruct";
/**
 * Stellar account addresses use strkey encoding: non-muxed accounts start with `G`
 * and are 56 characters long.
 *
 * TODO: Add checksum validation.
 */
export declare const XlmAddressStruct: import("@metamask/superstruct").Struct<string, null>;
/**
 * Supported Stellar methods.
 */
export declare enum XlmMethod {
    SignMessage = "signMessage",
    SignTransaction = "signTransaction"
}
export declare const XlmAccountStruct: import("@metamask/superstruct").Struct<{
    type: "stellar:account";
    id: string;
    options: Record<string, import("@metamask/utils").Json> & {
        entropy?: {
            type: "mnemonic";
            id: string;
            derivationPath: string;
            groupIndex: number;
        } | {
            type: "private-key";
        } | {
            type: "custom";
        };
        exportable?: boolean;
    };
    address: string;
    scopes: `${string}:${string}`[];
    methods: XlmMethod[];
}, {
    /**
     * Account address.
     */
    address: import("@metamask/superstruct").Struct<string, null>;
    /**
     * Account type.
     */
    type: import("@metamask/superstruct").Struct<"stellar:account", "stellar: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<XlmMethod[], import("@metamask/superstruct").Struct<XlmMethod, {
        signMessage: XlmMethod.SignMessage;
        signTransaction: XlmMethod.SignTransaction;
    }>>;
    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";
        } | {
            type: "custom";
        };
        exportable?: boolean;
    }, null>;
}>;
export type XlmAccount = Infer<typeof XlmAccountStruct>;
//# sourceMappingURL=types.d.cts.map