import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _OSSystemExtensionRequestDelegate } from "./OSSystemExtensionRequestDelegate.js";
export declare class _OSSystemExtensionRequest extends _NSObject {
    static alloc(): _OSSystemExtensionRequest;
    static new(): _OSSystemExtensionRequest;
    init(): _OSSystemExtensionRequest;
    /**
     * Creates a request to activate a System Extension. This method creates a new request to activate a System Extension. Extensions are bundles discovered from the `Contents/Library/SystemExtensions` directory of the main application bundle. The bundle identifier of the target extension. The dispatch queue to use when calling delegate methods. A new extension request. It is expected that an application create and submit an activation request whenever an extension should be active. Upon submitting an activation request for an inactive extension, user approval may be required and the request will not succeed until approval is given. If the extension is already active then the request will succeed in short order without significant delay or user interaction. Activating an new version of an already active extension will prompt the delegate to resolve the conflict before proceeding. An activation request can be successful but also indicate that a reboot is required in order for the extension to become active. This can occur when replacing an existing extension that required a reboot in order to deactivate. The most recently activated extension will then become active when the system is next rebooted.
     */
    static activationRequestForExtension$queue$(identifier: _NSString, queue: _NSObject): _OSSystemExtensionRequest;
    /**
     * Creates a request to deactivate a System Extension. This method creates a new request to deactivate a System Extension. Extensions are discovered from the `Contents/Library/SystemExtensions` directory of the main application bundle. The bundle identifier of the target extension. The dispatch queue to use when calling delegate methods. It is possible for an extension to require a reboot before it is fully deactivated. If a request succeeds and indicates a reboot is required, the extension may still appear to be operational until that time.
     */
    static deactivationRequestForExtension$queue$(identifier: _NSString, queue: _NSObject): _OSSystemExtensionRequest;
    /**
     * Creates a request to get information about System Extensions. This method creates a new request to retrieve the properties of any System Extensions matching the given identifier. The bundle identifier of the target extension(s). The dispatch queue to use when calling delegate methods.
     */
    static propertiesRequestForExtension$queue$(identifier: _NSString, queue: _NSObject): _OSSystemExtensionRequest;
    /** A delegate to receive updates about the progress of a request */
    delegate(): _OSSystemExtensionRequestDelegate;
    setDelegate$(value: _OSSystemExtensionRequestDelegate): void;
    /** The bundle identifier of the target extension */
    identifier(): _NSString;
}
