/**
 * @module cli/types
 * Shared types for xBind CLI commands.
 */
/**
 * Common CLI options across all commands.
 */
export interface GlobalOptions {
    /** Output JSON only (no human-readable text) */
    json?: boolean;
    /** Disable colored output */
    'no-color'?: boolean;
    /** Show detailed error information */
    debug?: boolean;
}
/**
 * Local identity stored in ~/.xbind/identity.json
 */
export interface LocalIdentity {
    /** DID (did:key format) */
    did: string;
    /** DeploymentID (DEP-YYYYMM-XXXXXXXXXX format) */
    deploymentId: string;
    /** Service/device name */
    name: string;
    /** Email address (verified or unverified) */
    email: string;
    /** Email verification status */
    emailVerified: boolean;
    /** Private key (Ed25519, base64-encoded) */
    privateKey: string;
    /** Public key (Ed25519, base64-encoded) */
    publicKey: string;
    /** Creation timestamp */
    createdAt: string;
    /** Last updated timestamp */
    updatedAt: string;
}
/**
 * Server account response from /auth/signup
 */
export interface ServerAccountResponse {
    success: boolean;
    account?: {
        did: string;
        deploymentId: string;
        email: string;
        emailVerified: boolean;
        tier: 'free' | 'pro' | 'vip';
    };
    error?: {
        code: string;
        message: string;
        hint?: string;
    };
}
/**
 * Exit codes for CLI commands.
 */
export declare const ExitCode: {
    readonly SUCCESS: 0;
    readonly USER_ERROR: 1;
    readonly SYSTEM_ERROR: 2;
    readonly AUTH_ERROR: 3;
    readonly BILLING_ERROR: 4;
    readonly USER_CANCELED: 130;
};
/**
 * ANSI color codes (only used if TTY detected).
 */
export declare const Colors: {
    readonly RED: "\u001B[31m";
    readonly GREEN: "\u001B[32m";
    readonly YELLOW: "\u001B[33m";
    readonly BLUE: "\u001B[34m";
    readonly CYAN: "\u001B[36m";
    readonly GRAY: "\u001B[90m";
    readonly RESET: "\u001B[0m";
};
