import { type EventSubscription } from 'react-native'; import { type Cookie, type CookieChangeEvent, type CookieSameSite, type Cookies, type IOSCookieStore } from './NativeCookieManager.js'; import { isCookieManagerError, type CookieManagerError, type CookieManagerErrorCode } from './errors.js'; export type IOSCookieStoreOptions = { iosCookieStore?: IOSCookieStore; }; export type RemoveSessionCookiesOptions = { iosCookieStore?: IOSCookieStore | 'both'; }; export type SetCookieOptions = IOSCookieStoreOptions & { /** * @deprecated This temporary v7 compatibility option will be removed in the * next major version. Validation is enabled by default; use `false` only * while migrating input that relied on native-store handling in v6. */ validate?: boolean; }; export type CookieChangeListener = (event: CookieChangeEvent) => void; type IOSCookieStoreMethod = { (options?: IOSCookieStoreOptions): Promise; /** @deprecated Use `{ iosCookieStore: 'webKit' }` instead of `true`. */ (useWebKit?: boolean): Promise; }; type IOSCookieStoreURLMethod = { (url: string, options?: IOSCookieStoreOptions): Promise; /** @deprecated Use `{ iosCookieStore: 'webKit' }` instead of `true`. */ (url: string, useWebKit?: boolean): Promise; }; type ClearByName = { (url: string, name: string, options?: IOSCookieStoreOptions): Promise; /** @deprecated Use `{ iosCookieStore: 'webKit' }` instead of `true`. */ (url: string, name: string, useWebKit?: boolean): Promise; }; type SetCookie = { (url: string, cookie: Cookie, options?: SetCookieOptions): Promise; /** * @deprecated Use the options overload, for example * `set(url, cookie, { iosCookieStore: 'webKit' })`. */ (url: string, cookie: Cookie, useWebKit?: boolean): Promise; }; declare const CookieManager: { addCookieChangeListener: (listener: CookieChangeListener) => EventSubscription; getAll: IOSCookieStoreMethod; getAllAsArray: IOSCookieStoreMethod; clearAll: IOSCookieStoreMethod; clearAllStores: () => Promise; get: IOSCookieStoreURLMethod; getAsArray: IOSCookieStoreURLMethod; getCookieHeader: IOSCookieStoreURLMethod; set: SetCookie; clearByName: ClearByName; flush: () => Promise; removeSessionCookies: (options?: RemoveSessionCookiesOptions) => Promise; setFromResponse: (url: string, cookie: string) => Promise; /** * @deprecated Make the request with `fetch`/Axios and then call `get()`. * This upstream-compatible method performs its own GET request. */ getFromResponse: (url: string) => Promise; }; export type { Cookie, CookieChangeEvent, CookieManagerError, CookieManagerErrorCode, CookieSameSite, Cookies, IOSCookieStore, }; export { isCookieManagerError }; export default CookieManager; //# sourceMappingURL=index.d.ts.map