import PasubotClient from './PasubotClient' import type { GenericSchema, PasubotClientOptions } from './lib/types' export * from 'pasubot-auth-js' export type { User as AuthUser, Session as AuthSession } from 'pasubot-auth-js' export type { PostgrestResponse, PostgrestSingleResponse, PostgrestMaybeSingleResponse, PostgrestError, } from 'pasubot-postgrest-js' export { FunctionsHttpError, FunctionsFetchError, FunctionsRelayError, FunctionsError, FunctionInvokeOptions, FunctionRegion, } from 'pasubot-functions-js' export * from 'pasubot-realtime-js' export { default as PasubotClient } from './PasubotClient' export type { PasubotClientOptions, QueryResult, QueryData, QueryError } from './lib/types' /** * Creates a new Pasubot Client. */ export const createClient = < Database = any, SchemaName extends string & keyof Database = 'public' extends keyof Database ? 'public' : string & keyof Database, Schema extends GenericSchema = Database[SchemaName] extends GenericSchema ? Database[SchemaName] : any >( pasubotUrl: string, pasubotKey: string, options?: PasubotClientOptions ): PasubotClient => { return new PasubotClient(pasubotUrl, pasubotKey, options) }