import type { _NSError } from "../Foundation/NSError.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NEFilterProviderConfiguration } from "./NEFilterProviderConfiguration.js";
import type { NEFilterManagerGrade } from "./NEFilterManagerGrade.js";
export declare class _NEFilterManager extends _NSObject {
    static alloc(): _NEFilterManager;
    static new(): _NEFilterManager;
    init(): _NEFilterManager;
    /**
     * @method sharedManager @return The singleton NEFilterManager object for the calling process.
     */
    static sharedManager(): _NEFilterManager;
    /**
     * @method loadFromPreferencesWithCompletionHandler: @discussion This function loads the current filter configuration from the caller's filter preferences. @param completionHandler A block that will be called when the load operation is completed. The NSError passed to this block will be nil if the load operation succeeded, non-nil otherwise.
     */
    loadFromPreferencesWithCompletionHandler$(completionHandler: ((error: _NSError) => void) | null): void;
    /**
     * @method removeFromPreferencesWithCompletionHandler: @discussion This function removes the filter configuration from the caller's filter preferences. If the filter is enabled, the filter becomes disabled. @param completionHandler A block that will be called when the remove operation is completed. The NSError passed to this block will be nil if the remove operation succeeded, non-nil otherwise.
     */
    removeFromPreferencesWithCompletionHandler$(completionHandler: ((error: _NSError) => void) | null): void;
    /**
     * @method saveToPreferencesWithCompletionHandler: @discussion This function saves the filter configuration in the caller's filter preferences. If the filter is enabled, it will become active. @param completionHandler A block that will be called when the save operation is completed. The NSError passed to this block will be nil if the save operation succeeded, non-nil otherwise.
     */
    saveToPreferencesWithCompletionHandler$(completionHandler: ((error: _NSError) => void) | null): void;
    /**
     * @property localizedDescription @discussion A string containing a description of the filter.
     */
    localizedDescription(): _NSString | null;
    setLocalizedDescription$(value: _NSString | null): void;
    /**
     * @property providerConfiguration @discussion An NEFilterProviderConfiguration object containing the provider-specific portion of the filter configuration.
     */
    providerConfiguration(): _NEFilterProviderConfiguration | null;
    setProviderConfiguration$(value: _NEFilterProviderConfiguration | null): void;
    /**
     * @property enabled @discussion Toggles the enabled status of the filter. On iOS, setting this property will disable filter configurations of other apps, and this property will be set to NO when other filter configurations are enabled. On macOS, up to 4 filter configurations of the same grade can be enabled simultaneously.
     */
    enabled(): boolean;
    setEnabled$(value: boolean): void;
    /**
     * @property grade @discussion The grade of the filter. The default grade is NEFilterManagerGradeFirewall.
     */
    grade(): NEFilterManagerGrade;
    setGrade$(value: NEFilterManagerGrade): void;
    /**
     * @property disableEncryptedDNSSettings @discussion Causes the content filter to disable any other installed encrypted DNS settings, including iCloud Private Relay system-wide DNS encryption. This should only be used if the content filter expects to intercept cleartext UDP DNS packets.
     */
    disableEncryptedDNSSettings(): boolean;
    setDisableEncryptedDNSSettings$(value: boolean): void;
}
