import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSSecureCoding } from "../Foundation/NSSecureCoding.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NEDNSSettings } from "./NEDNSSettings.js";
import type { _NEProxySettings } from "./NEProxySettings.js";
export declare class _NETunnelNetworkSettings extends _NSObject {
    static alloc(): _NETunnelNetworkSettings;
    static new(): _NETunnelNetworkSettings;
    init(): _NETunnelNetworkSettings;
    /**
     * @method initWithTunnelRemoteAddress: @discussion This function initializes a newly-allocated NETunnelNetworkSettings object with a given tunnel remote address. @param address The address of the remote endpoint that is providing the tunnel service.
     */
    initWithTunnelRemoteAddress$(address: _NSString): _NETunnelNetworkSettings;
    /**
     * @property tunnelRemoteAddress @discussion A string containing the IP address of the remote endpoint that is providing the tunnel service.
     */
    tunnelRemoteAddress(): _NSString;
    /**
     * @property DNSSettings @discussion An NEDNSSettings object that contains the desired tunnel DNS settings.
     */
    DNSSettings(): _NEDNSSettings;
    setDNSSettings$(value: _NEDNSSettings): void;
    /**
     * @property proxySettings @discussion An NEProxySettings object that contains the desired tunnel proxy settings.
     */
    proxySettings(): _NEProxySettings;
    setProxySettings$(value: _NEProxySettings): void;
}
export interface _NETunnelNetworkSettings extends _NSSecureCoding, _NSCopying {
}
