https://github.com/web-platform-tests/wpt
Raw File
Tip revision: 7b34dc7dc9f2ff8fbcf3445709fa7e517f2c6fb4 authored by Domenic Denicola on 06 April 2018, 22:15:02 UTC
WIP tests for text/css link quirk
Tip revision: 7b34dc7
cookie-store.idl
// https://github.com/WICG/cookie-store/blob/gh-pages/explainer.md

dictionary CookieListItem {
  USVString name;
  USVString value;
};

typedef sequence<CookieListItem> CookieList;

dictionary CookieChangeEventInit : EventInit {
  CookieList changed;
  CookieList deleted;
};

[
  Exposed=(ServiceWorker,Window),
  Constructor(DOMString type, optional CookieChangeEventInit eventInitDict)
] interface CookieChangeEvent : Event {
  readonly attribute CookieList changed;
  readonly attribute CookieList deleted;
};

enum CookieMatchType {
  "equals",
  "startsWith"
};

dictionary CookieStoreGetOptions {
  USVString name;
  USVString url;
  CookieMatchType matchType = "equals";
};

dictionary CookieStoreSetOptions {
  USVString name;
  USVString value;
  DOMTimeStamp? expires = null;
  USVString domain;
  USVString path = "/";
  boolean? secure;
  boolean httpOnly = false;
};

[
  Exposed=(ServiceWorker,Window)
] interface CookieStore : EventTarget {
  Promise<CookieList?> getAll(USVString name, optional CookieStoreGetOptions options);
  Promise<CookieList?> getAll(optional CookieStoreGetOptions options);

  Promise<CookieListItem?> get(USVString name, optional CookieStoreGetOptions options);
  Promise<CookieListItem?> get(optional CookieStoreGetOptions options);

  Promise<boolean> has(USVString name, optional CookieStoreGetOptions options);
  Promise<boolean> has(optional CookieStoreGetOptions options);

  Promise<void> set(USVString name, USVString value, optional CookieStoreSetOptions options);
  Promise<void> set(CookieStoreSetOptions options);

  Promise<void> delete(USVString name, optional CookieStoreSetOptions options);
  Promise<void> delete(CookieStoreSetOptions options);

  attribute EventHandler onchange;
};

partial interface Window {
  [Replaceable, SameObject] readonly attribute CookieStore cookieStore;
};

partial interface ServiceWorkerGlobalScope {
  [Replaceable, SameObject] readonly attribute CookieStore cookieStore;
};
back to top