import { InfiniteData, keepPreviousData, Query } from '@tanstack/react-query'; import { ApiCollection, ApiResource, ResourceObject } from '../types'; import { GetRequest } from '../utils/client'; import { ResponseError } from '../utils/response_error'; import { App } from './use_api_client'; interface ApiGetOptions extends GetRequest { app?: App; } export type ApiGetQueryOptions = { staleTime?: number; gcTime?: number; enabled?: boolean; throwOnError?: boolean | ((error: ResponseError, query: Query) => boolean); placeholderData?: typeof keepPreviousData; }; export declare const useApiGet: (args: ApiGetOptions, opts?: ApiGetQueryOptions) => { error: ResponseError; isError: true; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: true; isSuccess: false; isPlaceholderData: false; status: "error"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; } | { error: null; isError: false; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isSuccess: true; isPlaceholderData: false; status: "success"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; } | { error: ResponseError; isError: true; isPending: false; isLoading: false; isLoadingError: true; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "error"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; } | { error: null; isError: false; isPending: true; isLoading: true; isLoadingError: false; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; } | { error: null; isError: false; isPending: true; isLoadingError: false; isRefetchError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isLoading: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; } | { isError: false; error: null; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isSuccess: true; isPlaceholderData: true; status: "success"; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise>; data?: T | undefined; links?: Record | undefined; meta?: Record | undefined; }; export declare const useApiPaginator: (args: ApiGetOptions, opts?: ApiGetQueryOptions) => { data: T[]; error: ResponseError; isError: true; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: true; isSuccess: false; isPlaceholderData: false; status: "error"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchNextPageError: boolean; isFetchingNextPage: boolean; isFetchPreviousPageError: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; } | { data: T[]; error: null; isError: false; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isFetchNextPageError: false; isFetchPreviousPageError: false; isSuccess: true; isPlaceholderData: false; status: "success"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchingNextPage: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; } | { data: T[]; error: ResponseError; isError: true; isPending: false; isLoading: false; isLoadingError: true; isRefetchError: false; isFetchNextPageError: false; isFetchPreviousPageError: false; isSuccess: false; isPlaceholderData: false; status: "error"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchingNextPage: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; } | { data: T[]; error: null; isError: false; isPending: true; isLoading: true; isLoadingError: false; isRefetchError: false; isFetchNextPageError: false; isFetchPreviousPageError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchingNextPage: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; } | { data: T[]; error: null; isError: false; isPending: true; isLoadingError: false; isRefetchError: false; isFetchNextPageError: false; isFetchPreviousPageError: false; isSuccess: false; isPlaceholderData: false; status: "pending"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchingNextPage: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isLoading: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; } | { data: T[]; isError: false; error: null; isPending: false; isLoading: false; isLoadingError: false; isRefetchError: false; isSuccess: true; isPlaceholderData: true; isFetchNextPageError: false; isFetchPreviousPageError: false; status: "success"; fetchNextPage: (options?: import("@tanstack/query-core").FetchNextPageOptions) => Promise, unknown>, ResponseError>>; fetchPreviousPage: (options?: import("@tanstack/query-core").FetchPreviousPageOptions) => Promise, unknown>, ResponseError>>; hasNextPage: boolean; hasPreviousPage: boolean; isFetchingNextPage: boolean; isFetchingPreviousPage: boolean; dataUpdatedAt: number; errorUpdatedAt: number; failureCount: number; failureReason: ResponseError | null; errorUpdateCount: number; isFetched: boolean; isFetchedAfterMount: boolean; isFetching: boolean; isInitialLoading: boolean; isPaused: boolean; isRefetching: boolean; isStale: boolean; refetch: (options?: import("@tanstack/query-core").RefetchOptions) => Promise, unknown>, ResponseError>>; fetchStatus: import("@tanstack/query-core").FetchStatus; promise: Promise, unknown>>; }; export {}; //# sourceMappingURL=use_api.d.ts.map