#ifndef WKCookieManager_h
#define WKCookieManager_h
#include <WebKit2/WKBase.h>
#ifdef __cplusplus
extern "C" {
#endif
enum {
kWKHTTPCookieAcceptPolicyAlways = 0,
kWKHTTPCookieAcceptPolicyNever = 1,
kWKHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain = 2
};
typedef uint32_t WKHTTPCookieAcceptPolicy;
typedef void (*WKCookieManagerCookiesDidChangeCallback)(WKCookieManagerRef cookieManager, const void *clientInfo);
struct WKCookieManagerClient {
int version;
const void * clientInfo;
WKCookieManagerCookiesDidChangeCallback cookiesDidChange;
};
typedef struct WKCookieManagerClient WKCookieManagerClient;
enum { kWKCookieManagerClientCurrentVersion = 0 };
WK_EXPORT WKTypeID WKCookieManagerGetTypeID();
WK_EXPORT void WKCookieManagerSetClient(WKCookieManagerRef cookieManager, const WKCookieManagerClient* client);
typedef void (*WKCookieManagerGetCookieHostnamesFunction)(WKArrayRef, WKErrorRef, void*);
WK_EXPORT void WKCookieManagerGetHostnamesWithCookies(WKCookieManagerRef cookieManager, void* context, WKCookieManagerGetCookieHostnamesFunction function);
WK_EXPORT void WKCookieManagerDeleteCookiesForHostname(WKCookieManagerRef cookieManager, WKStringRef hostname);
WK_EXPORT void WKCookieManagerDeleteAllCookies(WKCookieManagerRef cookieManager);
WK_EXPORT void WKCookieManagerSetHTTPCookieAcceptPolicy(WKCookieManagerRef cookieManager, WKHTTPCookieAcceptPolicy policy);
typedef void (*WKCookieManagerGetHTTPCookieAcceptPolicyFunction)(WKHTTPCookieAcceptPolicy, WKErrorRef, void*);
WK_EXPORT void WKCookieManagerGetHTTPCookieAcceptPolicy(WKCookieManagerRef cookieManager, void* context, WKCookieManagerGetHTTPCookieAcceptPolicyFunction callback);
WK_EXPORT void WKCookieManagerStartObservingCookieChanges(WKCookieManagerRef cookieManager);
WK_EXPORT void WKCookieManagerStopObservingCookieChanges(WKCookieManagerRef cookieManager);
#ifdef __cplusplus
}
#endif
#endif // WKCookieManager_h