import { GenericSchema } from '@supabase-cache-helpers/postgrest-core';
import { PostgrestSingleResponse, PostgrestMaybeSingleResponse, PostgrestResponse, PostgrestClientOptions, PostgrestTransformBuilder } from '@supabase/postgrest-js';

declare function fetchQueryFallbackData<Result>(query: PromiseLike<PostgrestSingleResponse<Result>>): Promise<[string, PostgrestSingleResponse<Result>]>;
declare function fetchQueryFallbackData<Result>(query: PromiseLike<PostgrestMaybeSingleResponse<Result>>): Promise<[string, PostgrestMaybeSingleResponse<Result>]>;
declare function fetchQueryFallbackData<Result>(query: PromiseLike<PostgrestResponse<Result>>): Promise<[string, PostgrestResponse<Result>]>;
declare function fetchOffsetPaginationHasMoreFallbackData<ClientOptions extends PostgrestClientOptions, Schema extends GenericSchema, Table extends Record<string, unknown>, Result extends Record<string, unknown>, RelationName = unknown, Relationships = unknown>(query: PostgrestTransformBuilder<ClientOptions, Schema, Table, Result[], RelationName, Relationships>, pageSize: number): Promise<[
    string,
    [
        {
            data: Result[];
            hasMore: boolean;
        }
    ]
]>;
declare const fetchOffsetPaginationFallbackData: <ClientOptions extends PostgrestClientOptions, Schema extends GenericSchema, Table extends Record<string, unknown>, Result extends Record<string, unknown>, RelationName = unknown, Relationships = unknown>(query: PostgrestTransformBuilder<ClientOptions, Schema, Table, Result[], RelationName, Relationships>, pageSize: number) => Promise<[string, [Result[]]]>;

export { fetchOffsetPaginationFallbackData, fetchOffsetPaginationHasMoreFallbackData, fetchQueryFallbackData };
