import { DexConfig } from '@nexex/api';
import { Command, flags } from '@oclif/command';
import cosmiconfig from 'cosmiconfig';
export default abstract class Base extends Command {
    static flags: {
        help: import("@oclif/parser/lib/flags").IBooleanFlag<void>;
        endpoint: flags.IOptionFlag<string>;
        showAddr: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
    };
    protected initDir(): void;
    protected readConfig(): Promise<{
        config: cosmiconfig.Config;
        filepath: string;
        isEmpty?: boolean;
    }>;
    protected saveConfig(newConfig: any): Promise<void>;
    protected readonly homeDir: string;
    protected readonly defaultConfig: string;
    protected getDexConfig(): Promise<DexConfig>;
}
export declare function initDir(target: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<(...args: any[]) => any>): void;
