import { BaseCommandDefinition } from './base-command-definition.js';
import { type CommandDefinition } from '../../types/index.js';
import { type SoloLogger } from '../../core/logging/solo-logger.js';
import { AccountCommand } from '../account.js';
import { FileCommand } from '../file.js';
export declare class LedgerCommandDefinition extends BaseCommandDefinition {
    private readonly logger?;
    readonly accountCommand?: AccountCommand;
    readonly fileCommand?: FileCommand;
    constructor(logger?: SoloLogger, accountCommand?: AccountCommand, fileCommand?: FileCommand);
    static readonly COMMAND_NAME = "ledger";
    protected static readonly DESCRIPTION: string;
    static readonly SYSTEM_SUBCOMMAND_NAME = "system";
    private static readonly SYSTEM_SUBCOMMAND_DESCRIPTION;
    static readonly ACCOUNT_SUBCOMMAND_NAME = "account";
    private static readonly ACCOUNT_SUBCOMMAND_DESCRIPTION;
    static readonly CRYPTO_SUBCOMMAND_NAME = "crypto";
    private static readonly CRYPTO_SUBCOMMAND_DESCRIPTION;
    static readonly FILE_SUBCOMMAND_NAME = "file";
    private static readonly FILE_SUBCOMMAND_DESCRIPTION;
    static readonly SYSTEM_INIT = "init";
    static readonly ACCOUNT_UPDATE = "update";
    static readonly ACCOUNT_CREATE = "create";
    static readonly ACCOUNT_INFO = "info";
    static readonly FILE_CREATE = "create";
    static readonly FILE_UPDATE = "update";
    getCommandDefinition(): CommandDefinition;
}
