/// export declare type Nboolean = 0 | 1; export interface SessionInfo { user_name: string; user_account: string; user_dn: string; user_type: string; user_ip: string; user_expires: string; login_priv: Nboolean; remote_cons_priv: Nboolean; virtual_media_priv: Nboolean; reset_priv: Nboolean; config_priv: Nboolean; user_priv: Nboolean; } export interface LoginResponse extends SessionInfo { session_key: string; } export interface VirtualMediaStatus { options: VirtualMediaOption[]; port: number; device?: any; boot_option?: any; command?: any; legacy_bios: Nboolean; } export interface VirtualMediaOption { device: "FLOPPY" | "CDROM"; image_inserted: Nboolean; boot_option: "NO_BOOT"; write_protect_flag: Nboolean; vm_url_connected: Nboolean; vm_connected: Nboolean; image_url: ""; image_url_file: ""; } export interface RemoteConsoleInfo { encKey: string; encType: 0; rcPort: number; vmKey: string; vmPort: number; cmdEncKey: string; protocolVersion: string; optionalFeatures: Set; serverName: string; iloFqdn: string; blade: number; bay: null; enclosure: null; } export declare enum Features { ENCRYPT_KEY = "ENCRYPT_KEY", ENCRYPT_VMKEY = "ENCRYPT_VMKEY", ENCRYPT_CMD = "ENCRYPT_CMD" } /** * Client for the HTTPS API at /json/*. Call `loginSession` * first to get a session key. iLO blocks you for some time * if you fail three(?) times. * * Attempting to call methods with an expired session key * will result in 403. */ export declare class RestAPIClient { base: string; requestOptions: any; sessionKey?: Buffer; private _getOptions; constructor(base: string, requestOptions?: any); /** * Logs in, returns session info (or fails with 403) * * (also sets `sessionKey` internally for further requests) */ loginSession(username: string, password: string): Promise; rekey(): Promise; updateConfig(configName: string): Promise; getSessionInfo(): Promise; getVmStatus(): Promise; getRcInfo(): Promise; } export default RestAPIClient;