selenium-webdriver
Version:
The official WebDriver JavaScript bindings from the Selenium project
85 lines (84 loc) • 3.02 kB
TypeScript
import type { BrowsingContextBrowsingContext } from './browsing_context.js';
import type { Extensible, JsUint } from './common.js';
import type { NetworkBytesValue, NetworkCookie, NetworkSameSite } from './network.js';
export type StorageCommand = StorageDeleteCookies | StorageGetCookies | StorageSetCookie;
export type StorageResult = StorageDeleteCookiesResult | StorageGetCookiesResult | StorageSetCookieResult;
export type StoragePartitionKey = Extensible & {
userContext?: string;
sourceOrigin?: string;
};
export interface StorageGetCookies {
method: "storage.getCookies";
params: StorageGetCookiesParameters;
}
export type StorageCookieFilter = Extensible & {
name?: string;
value?: NetworkBytesValue;
domain?: string;
path?: string;
size?: JsUint;
httpOnly?: boolean;
secure?: boolean;
sameSite?: NetworkSameSite;
expiry?: JsUint;
};
export interface StorageBrowsingContextPartitionDescriptor {
type: "context";
context: BrowsingContextBrowsingContext;
}
export type StorageStorageKeyPartitionDescriptor = Extensible & {
type: "storageKey";
userContext?: string;
sourceOrigin?: string;
};
export type StoragePartitionDescriptor = StorageBrowsingContextPartitionDescriptor | StorageStorageKeyPartitionDescriptor;
export interface StorageGetCookiesParameters {
filter?: StorageCookieFilter;
partition?: StoragePartitionDescriptor;
}
export interface StorageGetCookiesResult {
cookies: NetworkCookie[];
partitionKey: StoragePartitionKey;
}
export interface StorageSetCookie {
method: "storage.setCookie";
params: StorageSetCookieParameters;
}
export type StoragePartialCookie = Extensible & {
name: string;
value: NetworkBytesValue;
domain: string;
path?: string;
httpOnly?: boolean;
secure?: boolean;
sameSite?: NetworkSameSite;
expiry?: JsUint;
};
export interface StorageSetCookieParameters {
cookie: StoragePartialCookie;
partition?: StoragePartitionDescriptor;
}
export interface StorageSetCookieResult {
partitionKey: StoragePartitionKey;
}
export interface StorageDeleteCookies {
method: "storage.deleteCookies";
params: StorageDeleteCookiesParameters;
}
export interface StorageDeleteCookiesParameters {
filter?: StorageCookieFilter;
partition?: StoragePartitionDescriptor;
}
export interface StorageDeleteCookiesResult {
partitionKey: StoragePartitionKey;
}
/** @deprecated Use {@link Storage.create} instead — will be removed in a future major version. */
export declare function getStorageInstance(driver: unknown): Promise<Storage>;
export declare class Storage {
private readonly bidi;
private constructor();
static create(driver: unknown): Promise<Storage>;
deleteCookies(params: StorageDeleteCookiesParameters): Promise<StorageDeleteCookiesResult>;
getCookies(params: StorageGetCookiesParameters): Promise<StorageGetCookiesResult>;
setCookie(params: StorageSetCookieParameters): Promise<StorageSetCookieResult>;
}