import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NSImage } from "../AppKit/NSImage.js";
import type { _NSPopover } from "../AppKit/NSPopover.js";
import type { _WKWebExtensionContext } from "./WKWebExtensionContext.js";
import type { _WKWebExtensionTab } from "./WKWebExtensionTab.js";
import type { _WKWebView } from "./WKWebView.js";
import type { CGSize } from "../structs/CGSize.js";
export declare class _WKWebExtensionAction extends _NSObject {
    static alloc(): _WKWebExtensionAction;
    static new(): _WKWebExtensionAction;
    init(): _WKWebExtensionAction;
    iconForSize$(size: CGSize): _NSImage | null;
    /**
     * Triggers the dismissal process of the popup. Invoke this method to manage the popup's lifecycle, ensuring the web view is unloaded and resources are released once the popup closes. This method is automatically called upon the dismissal of the action's ``UIViewController`` or ``NSPopover``. For custom scenarios where the popup's lifecycle is manually managed, it must be explicitly invoked to ensure proper closure.
     */
    closePopup(): void;
    /** The extension context to which this action is related. */
    webExtensionContext(): _WKWebExtensionContext | null;
    /**
     * The tab that this action is associated with, or `nil` if it is the default action. When this property is `nil`, it indicates that the action is the default action and not associated with a specific tab.
     */
    associatedTab(): _WKWebExtensionTab | null;
    /** The localized display label for the action. */
    label(): _NSString;
    /**
     * The badge text for the action. Provides the text that appears on the badge for the action. An empty string signifies that no badge should be shown.
     */
    badgeText(): _NSString;
    /**
     * A Boolean value indicating whether the badge text is unread. This property is automatically set to `YES` when ``badgeText`` changes and is not empty. If ``badgeText`` becomes empty or the popup associated with the action is presented, this property is automatically set to `NO`. Additionally, it should be set to `NO` by the app when the badge has been presented to the user. This property is useful for higher-level notification badges when extensions might be hidden behind an action sheet.
     */
    hasUnreadBadgeText(): boolean;
    setHasUnreadBadgeText$(value: boolean): void;
    /**
     * The name shown when inspecting the popup web view. This is the text that will appear when inspecting the popup web view.
     */
    inspectionName(): _NSString | null;
    setInspectionName$(value: _NSString | null): void;
    /** A Boolean value indicating whether the action is enabled. */
    enabled(): boolean;
    menuItems(): _NSArray;
    /**
     * A Boolean value indicating whether the action has a popup. Use this property to check if the action has a popup before attempting to show any popup views.
     */
    presentsPopup(): boolean;
    /**
     * A popover that presents a web view loaded with the popup page for this action, or `nil` if no popup is specified. This popover contains a view controller with a web view preloaded with the popup page. It automatically adjusts its size to fit the web view's content size. The ``presentsPopup`` property should be checked to determine the availability of a popup before using this property. Dismissing the popover will close the popup and unload the web view. presentsPopup
     */
    popupPopover(): _NSPopover | null;
    /**
     * A web view loaded with the popup page for this action, or `nil` if no popup is specified. The web view will be preloaded with the popup page upon first access or after it has been unloaded. Use the ``presentsPopup`` property to determine whether a popup should be displayed before using this property. presentsPopup
     */
    popupWebView(): _WKWebView | null;
}
