@supabase-kit/react
Version:
> Hooks by management data from supabase and fetch data by react.
47 lines (46 loc) • 4.13 kB
TypeScript
import { PostgrestError, SupabaseClient } from '@supabase/supabase-js';
import { UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
import { DatabaseTemp, SupabaseQueryResult } from './types';
import { SupabaseInfoniteQueryConfig } from './types.infonite';
import { SupabaseQueryConfig } from './types.query';
export declare const createSupabaseQuery: <D extends DatabaseTemp>(client: SupabaseClient<D>) => {
useSupaInfiniteQuery: <T extends keyof D["public"]["Tables"] & keyof D["public"]["Views"] & string>({ table, column, options, enabled, count, ...configObj }: SupabaseInfoniteQueryConfig<D> & {
table: T;
}) => import("@tanstack/react-query").DefinedUseInfiniteQueryResult<import("@tanstack/query-core").InfiniteData<SupabaseQueryResult<D["public"]["Tables"][T]["Row"][]>, unknown>, PostgrestError>;
useSupaQuery: {
<T extends keyof D["public"]["Tables"] | keyof D["public"]["Views"]>(config: SupabaseQueryConfig<D> & {
table: T;
single: true;
}): UseQueryResult<SupabaseQueryResult<D["public"]["Tables"][T]["Row"]>, PostgrestError>;
<T extends keyof D["public"]["Tables"] | keyof D["public"]["Views"]>(config: SupabaseQueryConfig<D> & {
table: T;
single?: false;
}): UseQueryResult<SupabaseQueryResult<D["public"]["Tables"][T]["Row"][]>, PostgrestError>;
};
QueryBuilder: <D_1 extends DatabaseTemp, SchemaName extends string & keyof D_1 = "public" extends keyof D_1 ? "public" : string & keyof D_1, Schema extends import("@supabase/supabase-js/dist/module/lib/types").GenericSchema = D_1[SchemaName] extends import("@supabase/supabase-js/dist/module/lib/types").GenericSchema ? D_1[SchemaName] : any>({ where, ...options }: {
options?: (Omit<UseQueryOptions<SupabaseQueryResult<(D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"] | (D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"][]>, PostgrestError, SupabaseQueryResult<(D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"] | (D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"][]>, import("@tanstack/query-core").QueryKey>, "queryKey" | "queryFn"> & {
queryKey?: string[];
}) | undefined;
enabled?: boolean | undefined;
where?: import("./types").Where<(D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"] | (D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"][]> | undefined;
limit?: number | undefined;
single?: boolean | undefined;
maybeSingle?: boolean | undefined;
order?: Partial<Record<((D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"] extends infer T ? T extends (D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"] ? T extends any[] ? keyof T[0] : keyof T : never : never) | keyof (D_1["public"]["Tables"] | D_1["public"]["Views"])[keyof D_1["public"]["Tables"] | keyof D_1["public"]["Views"]]["Row"], {
ascending?: boolean;
nullsFirst?: boolean;
foreignTable?: string;
referencedTable?: string;
}>> | undefined;
range?: (import("./types").baseRangeWhere | import("./types").baseRangeWhere[]) | undefined;
csv?: boolean | undefined;
explain?: {
analyze?: boolean;
verbose?: boolean;
settings?: boolean;
buffers?: boolean;
wal?: boolean;
format?: "json" | "text";
} | undefined;
}, Query: import("@supabase/postgrest-js").PostgrestFilterBuilder<Schema, any, any>) => import("@supabase/postgrest-js").PostgrestFilterBuilder<Schema, any, any, unknown, unknown>;
};