import { IDIService } from "../../IDIService";
export interface IFindControllerService extends IDIService {
    FindControllerInLocalNetworkAsync(controllerHostName: string): Promise<string | null>;
    GetLastKnownControllerLocalIpAddress(): string | null;
    GetMdnsHostName(): string;
    GetControllerHostName(controllerSerial: string): string;
}
export declare class FindControllerService implements IFindControllerService, IDIService {
    private _connection;
    private _logger;
    private _storage;
    private _localIpAddress;
    private _publicIpAddress;
    private _gatewayIpAddress;
    private _macAddress;
    private _isInLocalNetwork;
    static readonly ServiceName: string;
    private readonly nativeFindControllerApi;
    constructor();
    FindControllerInLocalNetworkAsync(controllerHostName: string): Promise<string | null>;
    GetLastKnownControllerLocalIpAddress(): string | null;
    GetControllerHostName(controllerSerial: string): string;
    GetMdnsHostName(): string;
    GetControllerNetworkConfigurationAsync(): Promise<NetworkConfigurationResponse | null>;
    GetServiceName(): string;
    private isIosNative;
    private getIosControllerIpAsync;
}
declare class NetworkConfigurationResponse {
    Id: string;
    Name: string;
    LocalIPv4: string;
    MaskIPv4: string;
    GatewayIPv4: string;
    BroadcastIp: string;
    PublicIPv4: string;
    MAC: string;
    IsDhcpEnabled: boolean;
    InterfaceType: NetworkInterfaceType;
    OperationalStatus: OperationalStatus;
    Speed: number;
}
declare enum NetworkInterfaceType {
    Unknown = 1,
    Ethernet = 6,
    TokenRing = 9,
    Fddi = 15,
    BasicIsdn = 20,
    PrimaryIsdn = 21,
    Ppp = 23,
    Loopback = 24,
    Ethernet3Megabit = 26,
    Slip = 28,
    Atm = 37,
    GenericModem = 48,
    FastEthernetT = 62,
    Isdn = 63,
    FastEthernetFx = 69,
    Wireless80211 = 71,
    AsymmetricDsl = 94,
    RateAdaptDsl = 95,
    SymmetricDsl = 96,
    VeryHighSpeedDsl = 97,
    IPOverAtm = 114,
    GigabitEthernet = 117,
    Tunnel = 131,
    MultiRateSymmetricDsl = 143,
    HighPerformanceSerialBus = 144,
    Wman = 237,
    Wwanpp = 243,
    Wwanpp2 = 244
}
declare enum OperationalStatus {
    Up = 1,
    Down = 2,
    Testing = 3,
    Unknown = 4,
    Dormant = 5,
    NotPresent = 6,
    LowerLayerDown = 7
}
export {};
