import { APIResponse, Fetcher, FetchFunction } from '../../core'; import { Middleware } from '../middleware'; export declare const CSRF_HEADER = "X-CSRF-Token"; export declare const SAFE_HTTP_METHODS: string[]; export type Token = string; export type HttpTextResponse = { ok: boolean; text: () => Promise; }; type CsrfHttpClient = (url: string, method: 'POST') => Promise; export declare class CsrfMiddleware implements Middleware { private options; constructor(options?: { attachExternalHeaderToRequests?: boolean; csrfEndpoint?: string; csrfHttpClient?: CsrfHttpClient; }); protected token: Token | undefined; protected issueCsrfToken(): Promise; protected setCsrfToken(token: Token): void; protected getCsrfToken(): Token | undefined; protected configureCsrf(): Promise; protected verify(): Promise; process(args: Fetcher.Args, next: FetchFunction): Promise>; } export {}; //# sourceMappingURL=csrf.d.ts.map