import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSData } from "../Foundation/NSData.js";
import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSSecureCoding } from "../Foundation/NSSecureCoding.js";
import type { _NSString } from "../Foundation/NSString.js";
export declare class _NEFilterProviderConfiguration extends _NSObject {
    static alloc(): _NEFilterProviderConfiguration;
    static new(): _NEFilterProviderConfiguration;
    init(): _NEFilterProviderConfiguration;
    /**
     * If YES, the filter plugin will be allowed to filter browser traffic. If NO, the filter plugin will not see any browser flows. Defaults to NO. At least one of filterBrowsers and filterSockets should be set to YES to make the filter take effect.
     * @deprecated filterBrowsers is not supported on macOS
     */
    filterBrowsers(): boolean;
    setFilterBrowsers$(value: boolean): void;
    /**
     * If YES, the filter plugin will be allowed to filter socket traffic. If NO, the filter plugin will not see any socket flows. Defaults to NO. At least one of filterBrowsers and filterSockets should be set to YES to make the filter take effect.
     */
    filterSockets(): boolean;
    setFilterSockets$(value: boolean): void;
    /**
     * If YES, a NEFilterPacketProvider will be instantiated and will be allowed to filter packets.
     */
    filterPackets(): boolean;
    setFilterPackets$(value: boolean): void;
    /** An optional dictionary of plugin-specific keys to be passed to the plugin. */
    vendorConfiguration(): _NSDictionary | null;
    setVendorConfiguration$(value: _NSDictionary | null): void;
    /** The optional address of the server used to support the filter. */
    serverAddress(): _NSString | null;
    setServerAddress$(value: _NSString | null): void;
    /** The optional username associated with the filter. */
    username(): _NSString | null;
    setUsername$(value: _NSString | null): void;
    /** The optional organization associated with the filter. */
    organization(): _NSString | null;
    setOrganization$(value: _NSString | null): void;
    /** The optional password keychain reference associated with the filter. */
    passwordReference(): _NSData | null;
    setPasswordReference$(value: _NSData | null): void;
    /**
     * The optional certificate identity keychain reference associated with the filter.
     */
    identityReference(): _NSData | null;
    setIdentityReference$(value: _NSData | null): void;
    /**
     * A string containing the bundle identifier of the NEFilterDataProvider app extension or system extension. If this property is nil, then the bundle identifier of the NEFilterDataProvider extension in the calling app's bundle is used, and if the calling app's bundle contains more than one NEFilterDataProvider extension then which one will be used is undefined.
     */
    filterDataProviderBundleIdentifier(): _NSString;
    setFilterDataProviderBundleIdentifier$(value: _NSString): void;
    /**
     * A string containing the bundle identifier of the NEFilterPacketProvider app extension or system extension. If this property is nil, then the bundle identifier of the NEFilterPacketProvider extension in the calling app's bundle is used, and if the calling app's bundle contains more than one NEFilterPacketProvider extension then which one will be used is undefined.
     */
    filterPacketProviderBundleIdentifier(): _NSString;
    setFilterPacketProviderBundleIdentifier$(value: _NSString): void;
}
export interface _NEFilterProviderConfiguration extends _NSSecureCoding, _NSCopying {
}
