import { Command } from '@oclif/core'; import { Payments, EnvironmentName } from '@nevermined-io/payments'; import { ConfigManager } from './utils/config-manager.js'; import { OutputFormatter } from './utils/output-formatter.js'; export declare abstract class BaseCommand extends Command { static baseFlags: { profile: import("@oclif/core/lib/interfaces/parser.js").OptionFlag; format: import("@oclif/core/lib/interfaces/parser.js").OptionFlag; verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag; }; protected configManager: ConfigManager; protected formatter: OutputFormatter; protected payments?: Payments; /** * Environment + API key resolved by `initPayments()`. Stored here so * subclasses that need to talk to the backend directly (e.g. commands * that POST to endpoints the SDK does not yet wrap) don't have to * re-implement the env-var-first → config-file fallback and * accidentally diverge from the precedence the Payments instance was * actually constructed with. */ protected resolvedEnvironment?: EnvironmentName; protected resolvedNvmApiKey?: string; init(): Promise; /** * Initialize Payments SDK instance with configuration */ protected initPayments(): Promise; /** * Handle errors consistently with helpful messages */ protected handleError(error: any): void; /** * Validate required flags */ protected validateRequired(value: any, name: string): void; /** * Show success message with optional next steps */ protected showSuccess(message: string, nextSteps?: string[]): void; /** * Reviver for JSON.parse that converts known numeric fields to BigInt. * Fields like durationSecs, minAmount, maxAmount, amount, price, and * amountOfCredits are used in plan/credit configurations and must be * BigInt for the SDK to handle them correctly. */ private bigIntReviver; /** * Parse JSON input from string, file, or stdin */ protected parseJsonInput(input?: string): Promise; } //# sourceMappingURL=base-command.d.ts.map