/**
 * SIWX auth helper — generates SIWX (Sign-In With X / EIP-4361) headers for Run402 API.
 * Uses @noble/curves (lighter than viem) for signing.
 */
import type { WalletData } from "./wallet.js";
export interface SIWxAuthHeaders {
    "SIGN-IN-WITH-X": string;
}
/**
 * EIP-55 mixed-case checksum encoding.
 */
export declare function toChecksumAddress(address: string): string;
interface SIWEMessageOpts {
    domain: string;
    uri: string;
    statement: string;
    version?: string;
    chainId: number | string;
    nonce: string;
    issuedAt: string;
    expirationTime?: string;
    resources?: string[];
}
export interface SIWxAuthOptions extends SIWEMessageOpts {
    wallet: Pick<WalletData, "address" | "privateKey">;
    type?: "eip191";
}
/**
 * Format an EIP-4361 (SIWE) message. Must be byte-for-byte compatible
 * with the `siwe` library's message format used server-side for verification.
 */
export declare function formatSIWEMessage(opts: SIWEMessageOpts, address: string): string;
export declare function buildSIWxAuthHeaders(opts: SIWxAuthOptions): SIWxAuthHeaders;
/**
 * Get SIWX auth headers for the Run402 API.
 * Returns null if no local wallet is configured.
 *
 * @param path - API path (e.g. "/projects/v1") used to build the SIWE uri field.
 */
export declare function getWalletAuthHeaders(path: string, walletPath?: string): SIWxAuthHeaders | null;
export {};
//# sourceMappingURL=wallet-auth.d.ts.map