import { AuthenticatedFetchOptions, OAuthClient } from '../../core'; export interface UseAuthenticatedFetchReturn { fetch: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; get: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; post: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; put: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; patch: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; delete: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; } export declare function buildFetch(client: OAuthClient): UseAuthenticatedFetchReturn; export declare function useAuthenticatedFetch(): UseAuthenticatedFetchReturn; /** * Convenience helpers for use outside of Vue setup scopes (e.g. plugins, route guards). * Requires a default client to have been registered via setDefaultClient or via * . */ export declare const $authFetch: { fetch: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; get: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; post: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; put: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; patch: (url: string | URL, body?: unknown, options?: AuthenticatedFetchOptions) => Promise; delete: (url: string | URL, options?: AuthenticatedFetchOptions) => Promise; };