import { LoginInformation } from './codeartifact-repo';
import { UsageDir } from './usage-dir';
export interface CodeArtifactCliOptions {
    readonly assumeRoleArn?: string;
}
export declare class CodeArtifactCli {
    private readonly options;
    readonly usageDir: UsageDir;
    constructor(options?: CodeArtifactCliOptions);
    private get repoOptions();
    /**
     * Create a random repository, return its name
     */
    create(): Promise<string>;
    /**
     * Delete the given repo
     */
    delete(repoName?: string): Promise<void>;
    /**
     * Log in to the given repo, write activation instructins to the usage dir
     */
    login(repoName?: string): Promise<LoginInformation>;
    publish(directory: string, repoName?: string): Promise<void>;
    gc(): Promise<void>;
    runCommand(command: string): Promise<void>;
    runInteractively(command: string): Promise<void>;
    /**
     * Return a CodeArtifactRepo object, either from the name argument or the most recently activated repository
     */
    private repoFromName;
}
