import { NetworkInterfaceOptions } from './types';
import { EthernetData, Ip44Settings, NetworkInterfaceCategory, NetworkInterfaceData, WifiData } from './services';
import { IKosDataModel, IKosIdentifiable, KosCreationContext, PublicModelInterface } from '../../../core';

export declare const MODEL_TYPE = "network-interface-model";
export type NetworkInterfaceModel = PublicModelInterface<NetworkInterfaceModelImpl>;
export declare class NetworkInterfaceModelImpl implements IKosDataModel, IKosIdentifiable, NetworkInterfaceData {
    id: string;
    name: string;
    type: string;
    nmdevicestate: number;
    hwaddress: string;
    mtu: number;
    configured: boolean;
    wifi?: WifiData;
    ethernet?: EthernetData;
    ip4settings?: Ip44Settings;
    category: NetworkInterfaceCategory;
    private logger;
    constructor(modelId: string, options: NetworkInterfaceOptions, context: KosCreationContext);
    updateModel(options: NetworkInterfaceOptions): void;
    init(): Promise<void>;
    load(): Promise<void>;
}
//# sourceMappingURL=network-interface-model.d.ts.map