nuxt-kql
Version:
Kirby's Query Language API for Nuxt
23 lines (22 loc) • 1.3 kB
TypeScript
import type { KirbyQueryRequest, KirbyQueryResponse } from 'kirby-types';
import type { NitroFetchOptions } from 'nitropack';
import type { AsyncData, AsyncDataOptions, NuxtError } from 'nuxt/app';
import type { MaybeRefOrGetter, MultiWatchSources } from 'vue';
export type UseKqlOptions<T> = Omit<AsyncDataOptions<T>, 'watch'> & Pick<NitroFetchOptions<string>, 'onRequest' | 'onRequestError' | 'onResponse' | 'onResponseError' | 'headers' | 'retry' | 'retryDelay' | 'retryStatusCodes' | 'timeout'> & {
/**
* Language code to fetch data for in multi-language Kirby setups.
*/
language?: MaybeRefOrGetter<string>;
/**
* Cache the response between function calls for the same query.
* @default true
*/
cache?: boolean;
/**
* Watch an array of reactive sources and auto-refresh the fetch result when they change.
* Query and language are watched by default. You can completely ignore reactive sources by using `watch: false`.
* @default undefined
*/
watch?: MultiWatchSources | false;
};
export declare function useKql<ResT extends KirbyQueryResponse<any, boolean> = KirbyQueryResponse, ReqT extends KirbyQueryRequest = KirbyQueryRequest>(query: MaybeRefOrGetter<ReqT>, opts?: UseKqlOptions<ResT>): AsyncData<ResT | null, NuxtError>;