/**
 * @returns the path to the anvil path to use, if `anvil` is in path then this will be returned
 *
 */
export declare function getAnvilCommand(): Promise<string>;
/**
 * @returns the path to the cast path to use, if `cast` is in path then this will be returned
 *
 */
export declare function getCastCommand(): Promise<string>;
/**
 * @returns the path to the forge path to use, if `forge` is in path then this will be returned
 *
 */
export declare function getForgeCommand(): Promise<string>;
/**
 * @returns the path to the forge path to use, if `forge` is in path then this will be returned
 *
 */
export declare function getForgeCommandSync(): string;
/**
 * @returns the path to the foundry directory: `$HOME/.foundry`
 */
export declare function foundryDir(): string;
/**
 * @returns the path to the foundry directory that stores the tool binaries: `$HOME/.foundry/bin`
 */
export declare function foundryBinDir(): string;
/**
 * @returns the path to the anvil binary in the foundry dir: `$HOME/.foundry/bin/anvil`
 */
export declare function foundryAnvilBinPath(): string;
/**
 * @returns the path to the cast binary in the foundry dir: `$HOME/.foundry/bin/cast`
 */
export declare function foundryCastBinPath(): string;
/**
 * @returns the path to the anvil forge in the foundry dir: `$HOME/.foundry/bin/forge`
 */
export declare function foundryForgeBinPath(): string;
/**
 * Installs foundryup via subprocess
 */
export declare function selfInstall(): Promise<boolean>;
/**
 * Optional target location `foundryup` accepts
 */
export interface FoundryupTarget {
    branch?: string;
    commit?: string;
    repo?: string;
    path?: string;
}
/**
 * Executes `foundryup`
 *
 * @param install whether to install `foundryup` itself
 * @param _target additional `foundryup` params
 */
export declare function run(install?: boolean, _target?: FoundryupTarget): Promise<boolean>;
/**
 * Checks if foundryup exists
 *
 * @return true if `foundryup` exists
 */
export declare function checkFoundryUp(): Promise<boolean>;
/**
 * Checks if anvil exists
 *
 * @return true if `anvil` exists
 */
export declare function checkAnvil(): Promise<boolean>;
/**
 * Checks if cast exists
 *
 * @return true if `cast` exists
 */
export declare function checkCast(): Promise<boolean>;
/**
 * Checks if cast exists
 *
 * @return true if `cast` exists
 */
export declare function checkForge(): Promise<boolean>;
//# sourceMappingURL=binary.d.ts.map