/**
 * Network interface categories for organizational purposes.
 * @group KOS Model
 * @category Network Interfaces
 */
export type NetworkInterfaceCategory = "INTERNAL" | "INTEGRATION" | "EXTERNAL" | "NONE";
/**
 * Ethernet-specific interface data including connection status and performance metrics.
 * @group KOS Model
 * @category Network Interfaces
 */
export interface EthernetData {
    /** Whether the Ethernet cable is connected (link up/down status) */
    carrier: boolean;
    /** Connection speed in Mbps (e.g., 10, 100, 1000) */
    speed: number;
    /** Duplex mode - 'full' for full-duplex, 'half' for half-duplex */
    duplex: string;
}
/**
 * WiFi-specific interface data including access point details and signal metrics.
 * @group KOS Model
 * @category Network Interfaces
 */
export interface WifiData {
    /** Access Point flags indicating capabilities and features */
    apFlags: number;
    /** BSSID (MAC address) of the connected access point */
    bssid: string;
    /** WPA security flags for the connection */
    wpaFlags: number;
    /** Connection bitrate in bits per second */
    bitrate: number;
    /** Network name (Service Set Identifier) */
    ssid: string;
    /** Signal strength percentage (0-100) */
    signal: number;
    /** RSN (Robust Security Network) flags for WPA2/WPA3 */
    rsnFlags: number;
    /** Time in seconds since the access point was last seen */
    lastSeenAgo: number;
    /** WiFi frequency in MHz (e.g., 2437 for 2.4GHz, 5220 for 5GHz) */
    frequency: number;
}
/**
 * IPv4 network configuration settings including addressing and DNS.
 * @group KOS Model
 * @category Network Interfaces
 */
export interface Ip44Settings {
    /** Subnet prefix length (e.g., 24 for /24 subnet mask) */
    prefix: number;
    /** List of address/prefix combinations in CIDR notation */
    addressprefixlist: string[];
    /** Primary IP address assigned to the interface */
    address: string;
    /** IP configuration method ('auto' for DHCP, 'manual' for static) */
    method: string;
    /** Default gateway IP address for routing */
    gateway: string;
    /** List of DNS server IP addresses */
    dnslist: string[];
}
/**
 * Complete network interface data structure containing all interface properties.
 * This is the main interface that NetworkInterfaceModel implements.
 * @group KOS Model
 * @category Network Interfaces
 */
export interface NetworkInterfaceData {
    /** Network interface name (e.g., 'eth0', 'wlan0', 'lo') */
    name: string;
    /** Interface type identifier (e.g., 'ethernet', 'wifi', 'loopback') */
    type: string;
    /** NetworkManager device state code indicating connection status */
    nmdevicestate: number;
    /** Hardware MAC address of the network interface */
    hwaddress: string;
    /** Maximum Transmission Unit size for the interface */
    mtu: number;
    /** Whether the interface is currently configured and active */
    configured: boolean;
    /** WiFi-specific connection data (only present for WiFi interfaces) */
    wifi?: WifiData;
    /** Ethernet-specific connection data (only present for Ethernet interfaces) */
    ethernet?: EthernetData;
    /** IPv4 network settings (present when interface has IP configuration) */
    ip4settings?: Ip44Settings;
    /** Interface categorization for organizational purposes */
    category: NetworkInterfaceCategory;
}
type NetworkInterfaceResponse = [error: string, data: undefined] | [error: undefined, data: NetworkInterfaceData[] | undefined];
/**
 * @category Service
 * @internal
 * Retrieves the initial network-interface data.
 */
export declare const getNetworkInterfaces: () => Promise<NetworkInterfaceResponse>;
export {};
//# sourceMappingURL=network-interface-services.d.ts.map