import { BaseConnection, DeviceCredentials, CommandResult } from '../base-connection';
export declare class LinuxConnection extends BaseConnection {
    private shellPrompt;
    private rootUser;
    private initialPromptDetected;
    constructor(credentials: DeviceCredentials);
    protected sessionPreparation(): Promise<void>;
    private createLinuxShellChannel;
    private waitForInitialPrompt;
    private detectLinuxPrompt;
    protected setBasePrompt(): Promise<void>;
    private extractPromptFromOutput;
    private setFallbackPrompt;
    private checkRootUser;
    private setShellOptions;
    sendCommand(command: string): Promise<CommandResult>;
    private readUntilPromptEnhanced;
    sendConfig(configCommands: string[]): Promise<CommandResult>;
    getCurrentConfig(): Promise<CommandResult>;
    saveConfig(): Promise<CommandResult>;
    rebootDevice(): Promise<CommandResult>;
    protected sanitizeOutput(output: string, command: string): string;
    isRootUser(): boolean;
    executeAsRoot(command: string): Promise<CommandResult>;
    getSystemInfo(): Promise<CommandResult>;
    getProcessList(): Promise<CommandResult>;
    getDiskUsage(): Promise<CommandResult>;
    getMemoryInfo(): Promise<CommandResult>;
    getNetworkInterfaces(): Promise<CommandResult>;
    getServiceStatus(serviceName: string): Promise<CommandResult>;
    startService(serviceName: string): Promise<CommandResult>;
    stopService(serviceName: string): Promise<CommandResult>;
    restartService(serviceName: string): Promise<CommandResult>;
}
