/**
 * CLI Error Handling
 *
 * Provides enhanced error formatting for CLI commands.
 */
/**
 * SDK CLI error codes
 */
export declare const ErrorCodes: {
    readonly MISSING_ENV: "sdk:missing-env";
    readonly INVALID_CONFIG: "sdk:invalid-config";
    readonly NETWORK_ERROR: "sdk:network-error";
    readonly TIMEOUT: "sdk:timeout";
    readonly UNAUTHORIZED: "sdk:unauthorized";
    readonly FORBIDDEN: "sdk:forbidden";
    readonly VALIDATION_ERROR: "sdk:validation-error";
    readonly MISSING_CONTENT_TYPE: "sdk:missing-content-type";
    readonly UNKNOWN_BLOCK_KIND: "sdk:unknown-block-kind";
    readonly FILE_NOT_FOUND: "sdk:file-not-found";
    readonly FILE_WRITE_ERROR: "sdk:file-write-error";
    readonly UNKNOWN: "sdk:unknown";
};
export type ErrorCode = (typeof ErrorCodes)[keyof typeof ErrorCodes];
/**
 * Format error for CLI display
 */
export interface FormattedError {
    code: string;
    message: string;
    details?: unknown;
    suggestion?: string;
}
export type CliEnvironmentTarget = 'local' | 'remote';
export interface CliErrorContext {
    target: CliEnvironmentTarget;
    dashboardUrl?: string;
    siteId?: string;
}
/**
 * Format an error for CLI display
 */
export declare function formatError(error: unknown, ctx?: CliErrorContext): FormattedError;
/**
 * Format validation errors for display
 */
export declare function formatValidationErrors(errors: Array<{
    path: string;
    message: string;
}>): string;
/**
 * Format push operation diff for display
 */
export interface DiffItem {
    type: 'add' | 'update' | 'delete';
    identifier: string;
    contentType?: string;
}
export declare function formatDiff(items: DiffItem[]): string;
/**
 * Get actionable message for SDK error
 */
export declare function getActionableMessage(code: string): string | undefined;
