run402-mcp
Version:
MCP server for Run402 — full-stack backend infrastructure for AI agents: Postgres, auth, storage, serverless functions and atomic deploys. Paid with x402/MPP. Includes $0.03 image generation.
43 lines • 1.66 kB
TypeScript
/**
* A wallet is backed by exactly one of: a local private key (`privateKey`),
* or a signer reference (`signer`) naming where the key lives. A signer
* reference holds no secret.
*/
export interface WalletData {
address: string;
/** Local signing key. Absent on a signer-backed wallet. */
privateKey?: string;
/** Where a signer-backed wallet's key lives. Absent on a key-backed wallet. */
signer?: WalletSigner;
created?: string;
funded?: boolean;
lastFaucet?: string;
rail?: "x402" | "mpp" | "lightning";
/** The Lightning wallet (`run402 init lightning`): a budgeted wallet on Run402's Hub. `nwc` is the pairing secret. */
lightning?: WalletLightning;
}
/** An AWS KMS `ECC_SECG_P256K1` / `SIGN_VERIFY` key, adopted by reference. */
export interface WalletSigner {
kind: "aws_kms";
key_arn: string;
region: string;
/** The AWS profile used to reach the key (an SSO profile); default credential chain when absent. */
aws_profile?: string;
}
export interface WalletLightning {
wallet_id: string;
nwc: string;
lightning_address: string | null;
budget_sats: number;
starter_sats: number;
custody: "run402_hub";
minted_at: string;
}
export declare const KMS_KEY_ARN_RE: RegExp;
/** True when the wallet signs through a signer instead of a local key. */
export declare function isSignerWallet(wallet: Pick<WalletData, "signer">): wallet is WalletData & {
signer: WalletSigner;
};
export declare function readWallet(path?: string): WalletData | null;
export declare function saveWallet(data: WalletData, path?: string): void;
//# sourceMappingURL=wallet.d.ts.map