import { QueryKey } from '@tanstack/react-query';

type WidgetsApiClient<T> = (data: {
    url: string;
    method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
    params?: Record<string, any>;
    headers?: Record<string, any>;
    data?: BodyType<unknown>;
    signal?: AbortSignal;
}) => Promise<T>;
declare const useWidgetsApiClient: <T>() => WidgetsApiClient<T>;
type ErrorType<ErrorData> = ErrorData;
type BodyType<BodyData> = BodyData & {
    headers?: any;
};
declare const useWidgetsApiQueryOptions: <QueryOptions extends {
    queryKey: QK;
}, QK extends QueryKey>(queryOptions: QueryOptions) => QueryOptions & {
    queryKey: QK;
};

export { type BodyType, type ErrorType, useWidgetsApiClient, useWidgetsApiQueryOptions };
