import { ResolvedConfig } from "../utils/config";
export interface InstallOptions {
    /**
     * Base directory to use instead of process.cwd()
     */
    cwd?: string;
    /**
     * Custom config object to use instead of loading from file
     */
    config?: ResolvedConfig;
    /**
     * allow installation on CI environments
     */
    installOnCI?: boolean;
    /**
     * Show verbose output during installation
     */
    verbose?: boolean;
    /**
     * Perform a dry run without writing any files
     */
    dryRun?: boolean;
}
/**
 * Result of the install operation
 */
export interface InstallResult {
    /**
     * Whether the operation was successful
     */
    success: boolean;
    /**
     * Error object if the operation failed
     */
    error?: Error;
    /**
     * Number of rules installed
     */
    installedRuleCount: number;
    /**
     * Number of packages installed
     */
    packagesCount: number;
}
/**
 * Install rules for a single package (used within workspaces and standalone installs)
 */
export declare function installPackage(options?: InstallOptions): Promise<InstallResult>;
/**
 * Core implementation of the rule installation logic
 */
export declare function install(options?: InstallOptions): Promise<InstallResult>;
/**
 * CLI command wrapper for install
 */
export declare function installCommand(installOnCI?: boolean, verbose?: boolean, dryRun?: boolean): Promise<void>;
