import type { NobjcObject } from "objc-js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSHTTPCookie } from "../Foundation/NSHTTPCookie.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _WKHTTPCookieStoreObserver } from "./WKHTTPCookieStoreObserver.js";
import type { WKCookiePolicy } from "./WKCookiePolicy.js";
export declare class _WKHTTPCookieStore extends _NSObject {
    static alloc(): _WKHTTPCookieStore;
    static new(): _WKHTTPCookieStore;
    init(): _WKHTTPCookieStore;
    /** Fetches all stored cookies. A block to invoke with the fetched cookies. */
    getAllCookies$(completionHandler: (arg0: _NSArray) => NobjcObject): void;
    /**
     * Set a cookie. The cookie to set. A block to invoke once the cookie has been stored.
     */
    setCookie$completionHandler$(cookie: _NSHTTPCookie, completionHandler: (() => NobjcObject) | null): void;
    /**
     * Set multiple cookies. An array of cookies to set. A block to invoke once the cookies have been stored.
     */
    setCookies$completionHandler$(cookies: _NSArray, completionHandler: (() => NobjcObject) | null): void;
    /**
     * Delete the specified cookie. A block to invoke once the cookie has been deleted.
     */
    deleteCookie$completionHandler$(cookie: _NSHTTPCookie, completionHandler: (() => NobjcObject) | null): void;
    /**
     * Adds a WKHTTPCookieStoreObserver object with the cookie store. The observer object to add. The observer is not retained by the receiver. It is your responsibility to unregister the observer before it becomes invalid.
     */
    addObserver$(observer: _WKHTTPCookieStoreObserver): void;
    /**
     * Removes a WKHTTPCookieStoreObserver object from the cookie store. The observer to remove.
     */
    removeObserver$(observer: _WKHTTPCookieStoreObserver): void;
    /**
     * Set whether cookies are allowed. A value indicating whether cookies are allowed. The default value is WKCookiePolicyAllow. A block to invoke once the cookie policy has been set.
     */
    setCookiePolicy$completionHandler$(policy: WKCookiePolicy, completionHandler: (() => NobjcObject) | null): void;
    /**
     * Get whether cookies are allowed. A block to invoke with the value of whether cookies are allowed.
     */
    getCookiePolicy$(completionHandler: (arg0: WKCookiePolicy) => NobjcObject): void;
}
