@supabase-kit/react
Version:
> Hooks by management data from supabase and fetch data by react.
20 lines (19 loc) • 1.38 kB
TypeScript
import { PostgrestFilterBuilder } from '@supabase/postgrest-js';
import { GenericSchema } from '@supabase/supabase-js/dist/module/lib/types';
import { DatabaseTemp } from './types';
import { SupabaseQueryConfig } from './types.query';
type ConfigObj<D extends DatabaseTemp, S extends keyof D> = Omit<SupabaseQueryConfig<D, S>, 'table' | 'column' | 'count'>;
/**
* Enhances a Supabase query with various filtering, ordering, and formatting options.
*
* @template D - The database schema type.
* @template SchemaName - The schema name within the database.
* @template Schema - The specific schema definition.
*
* @param {ConfigObj<D>} param0 - Configuration object containing filtering and other options.
* @param {PostgrestFilterBuilder<Schema, any, any>} Query - The initial Postgrest query builder object.
*
* @returns {PostgrestFilterBuilder<Schema, any, any>} - The enhanced Postgrest query builder object with applied configurations.
*/
export declare const QueryBuilder: <D extends DatabaseTemp, S extends keyof D, SchemaName extends string & keyof D = "public" extends keyof D ? "public" : string & keyof D, Schema extends GenericSchema = D[SchemaName] extends GenericSchema ? D[SchemaName] : any>({ where, ...options }: ConfigObj<D, S>, Query: PostgrestFilterBuilder<Schema, any, any>) => PostgrestFilterBuilder<Schema, any, any, unknown, unknown>;
export {};