import { EAPMethod } from '../Wifi/IWifi';
import INetworkInfo, { INetworkInterface, INetworkOptions, INetworkOptionsLegacy, NetworkInterface } from './INetworkInfo';
/** Details for importing a certificate for EAP authentication. */
export interface CertificateEapDetails {
    /** Type of EAP authentication */
    type: EAPMethod;
    /** CA certificate */
    caCertificate?: string;
    /** Client certificate for EAP-TLS */
    clientCertificate?: string;
    /** Private key for client certificate for EAP-TLS */
    clientKey?: string;
    /** Password for the private key, if it's encrypted */
    clientCertificatePassword?: string;
}
export default interface INetwork {
    getActiveInfo(): Promise<INetworkInfo>;
    listInterfaces(): Promise<INetworkInterface[]>;
    setManual(options: INetworkOptionsLegacy): Promise<void>;
    setManual(interfaceName: string, options: INetworkOptions): Promise<void>;
    setDHCP(networkInterface: NetworkInterface): Promise<void>;
    setDHCP(interfaceName: string): Promise<void>;
    disableInterface(interfaceName: string): Promise<void>;
    importCertificate(details: CertificateEapDetails): Promise<void>;
}
export declare const VCertificateEapDetails: {
    type: {
        string: string[];
    };
    caCertificate: string;
    clientCertificate: string;
    clientKey: string;
    clientCertificatePassword: string;
};
