export namespace NetworkInterfaceTypeDefinition {
    export let name: string;
    export let priority: number;
    export let owners: string[];
    let _extends: {
        name: string;
        owners: any[];
        properties: {
            owner: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            type: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            name: {
                type: string;
                collection: boolean;
                identifier: boolean;
                writeable: boolean;
            };
            description: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            priority: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            directory: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            packaging: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            tags: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
        };
    };
    export { _extends as extends };
    export let specializations: {};
    export function factoryFor(owner: any, value: any): any;
    export let properties: {
        hostName: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        ipAddresses: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        hwaddr: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        network: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        destination: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        cidrAddresses: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        cidrAddress: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        addresses: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        address: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        scope: {
            type: string;
            collection: boolean;
            writeable: boolean;
            values: string[];
            default: string;
        };
        class: {
            type: string;
            collection: boolean;
            writeable: boolean;
            values: string[];
        };
        kind: {
            type: string;
            collection: boolean;
            writeable: boolean;
            values: string[];
        };
        ssid: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        psk: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        metric: {
            type: string;
            collection: boolean;
            writeable: boolean;
            default: number;
        };
        MTU: {
            type: string;
            collection: boolean;
            writeable: boolean;
            default: number;
        };
        gateway: {
            type: string;
            collection: boolean;
            writeable: boolean;
        };
        multicastDNS: {
            type: string;
            collection: boolean;
            writeable: boolean;
            default: boolean;
        };
    };
}
export class NetworkInterface extends SkeletonNetworkInterface {
    static get typeDefinition(): {
        name: string;
        priority: number;
        owners: string[];
        extends: {
            name: string;
            owners: any[];
            properties: {
                owner: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                type: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                name: {
                    type: string;
                    collection: boolean;
                    identifier: boolean;
                    writeable: boolean;
                };
                description: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                priority: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                directory: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                packaging: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
                tags: {
                    type: string;
                    collection: boolean;
                    writeable: boolean;
                };
            };
        };
        specializations: {};
        factoryFor(owner: any, value: any): any;
        properties: {
            hostName: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            ipAddresses: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            hwaddr: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            network: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            destination: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            cidrAddresses: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            cidrAddress: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            addresses: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            address: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            scope: {
                type: string;
                collection: boolean;
                writeable: boolean;
                values: string[];
                default: string;
            };
            class: {
                type: string;
                collection: boolean;
                writeable: boolean;
                values: string[];
            };
            kind: {
                type: string;
                collection: boolean;
                writeable: boolean;
                values: string[];
            };
            ssid: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            psk: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            metric: {
                type: string;
                collection: boolean;
                writeable: boolean;
                default: number;
            };
            MTU: {
                type: string;
                collection: boolean;
                writeable: boolean;
                default: number;
            };
            gateway: {
                type: string;
                collection: boolean;
                writeable: boolean;
            };
            multicastDNS: {
                type: string;
                collection: boolean;
                writeable: boolean;
                default: boolean;
            };
        };
    };
    _ipAddresses: Map<any, any>;
    _scope: any;
    _metric: any;
    _kind: any;
    _hostName: any;
    _hwaddr: any;
    _class: any;
    addSubnet(address: any): any;
    set ipAddresses(value: Map<any, any>);
    get ipAddresses(): Map<any, any>;
    subnetForAddress(address: any): any;
    get gateway(): any;
    get gatewayAddress(): any;
    set hostName(value: any);
    get hostName(): any;
    get domainNames(): any;
    set scope(value: any);
    get scope(): any;
    set hwaddr(value: any);
    get hwaddr(): any;
    set metric(value: any);
    get metric(): any;
    set MTU(value: any);
    get MTU(): any;
    _MTU: any;
    set class(value: any);
    get class(): any;
    set kind(value: any);
    get kind(): any;
}
import { SkeletonNetworkInterface } from "./skeleton.mjs";
