UNPKG

nuxt-csurf

Version:

Nuxt Cross-Site Request Forgery (CSRF) Prevention

23 lines (22 loc) 763 B
import type { FetchOptions, FetchRequest, $Fetch } from 'ofetch'; interface ResponseMap { blob: Blob; text: string; arrayBuffer: ArrayBuffer; stream: ReadableStream<Uint8Array>; } type ResponseType = keyof ResponseMap | 'json'; type MappedType<R extends ResponseType, JsonType = any> = R extends keyof ResponseMap ? ResponseMap[R] : JsonType; type $CsrfFetch = <T = any, R extends ResponseType = 'json'>(request: FetchRequest, options?: FetchOptions<R>, fetch?: $Fetch) => Promise<MappedType<R, T>>; declare const _default: any; export default _default; declare module '#app' { interface NuxtApp { $csrfFetch: $CsrfFetch; } } declare module 'vue' { interface ComponentCustomProperties { $csrfFetch: $CsrfFetch; } }