import { BaseCommand, type Opts } from './base.js';
import { type AccountId, AccountInfo, PrivateKey } from '@hashgraph/sdk';
import { type CommandBuilder } from '../types/aliases.js';
import { type NamespaceName } from '../core/kube/resources/namespace/namespace_name.js';
export declare class AccountCommand extends BaseCommand {
    private readonly accountManager;
    private accountInfo;
    private readonly systemAccounts;
    constructor(opts: Opts, systemAccounts?: number[][]);
    closeConnections(): Promise<void>;
    buildAccountInfo(accountInfo: AccountInfo, namespace: NamespaceName, shouldRetrievePrivateKey: boolean): Promise<{
        accountId: string;
        balance: number;
        publicKey: string;
        privateKey?: string;
        privateKeyRaw?: string;
    }>;
    createNewAccount(ctx: {
        config: {
            generateEcdsaKey: boolean;
            ecdsaPrivateKey?: string;
            ed25519PrivateKey?: string;
            namespace: NamespaceName;
            setAlias: boolean;
            amount: number;
        };
        privateKey: PrivateKey;
    }): Promise<{
        accountId: string;
        privateKey: string;
        publicKey: string;
        balance: number;
        accountAlias?: string;
    }>;
    getAccountInfo(ctx: {
        config: {
            accountId: string;
        };
    }): Promise<AccountInfo>;
    updateAccountInfo(ctx: any): Promise<boolean>;
    transferAmountFromOperator(toAccountId: AccountId, amount: number): Promise<boolean>;
    init(argv: any): Promise<boolean>;
    create(argv: any): Promise<boolean>;
    update(argv: any): Promise<boolean>;
    get(argv: any): Promise<boolean>;
    /** Return Yargs command definition for 'node' command */
    getCommandDefinition(): {
        command: string;
        desc: string;
        builder: CommandBuilder;
    };
    close(): Promise<void>;
}
