import type { EndpointsOption, SchemePartialOptions, SchemeCheck, CookieUserOptions, HTTPRequest, HTTPResponse } from "../../types"; import type { Auth } from ".."; import { BaseScheme } from "./base"; import { RequestHandler } from "../inc"; export interface CookieSchemeEndpoints extends EndpointsOption { login: HTTPRequest; logout: HTTPRequest | false; user: HTTPRequest | false; csrf: HTTPRequest | false; } export interface CookieSchemeCookie { name: string; server: boolean; } export interface CookieSchemeOptions { name: string; endpoints: CookieSchemeEndpoints; user: CookieUserOptions; cookie: CookieSchemeCookie; } export declare class CookieScheme extends BaseScheme { requestHandler: RequestHandler; constructor($auth: Auth, options: SchemePartialOptions, ...defaults: SchemePartialOptions[]); mounted(): Promise; check(): SchemeCheck; login(endpoint: HTTPRequest): Promise; fetchUser(endpoint?: HTTPRequest): Promise; logout(endpoint?: HTTPRequest): Promise; reset({ resetInterceptor }?: { resetInterceptor?: boolean; }): void; isServerCookie(): boolean; isClientCookie(): boolean; initializeRequestInterceptor(): void; }