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; export declare class Storage { private readonly bidi; private constructor(); static create(driver: unknown): Promise; deleteCookies(params: StorageDeleteCookiesParameters): Promise; getCookies(params: StorageGetCookiesParameters): Promise; setCookie(params: StorageSetCookieParameters): Promise; }