export type Event = {id: string, created_at: unknown, organization_id?: string | undefined, name: unknown, description?: unknown | undefined, visibility?: unknown | undefined, cover_url: unknown, start_at?: unknown | undefined, end_at?: unknown | undefined, timezone?: unknown | undefined, virtual_info: unknown, location_type?: unknown | undefined, geo_longitude?: number | undefined, geo_latitude?: number | undefined, geo_address_metadata: unknown, geo_address_visible: boolean, ticket_currency?: unknown | undefined, max_capacity?: number | undefined, spots_remaining?: number | undefined, is_capped: boolean, require_approval: boolean, hide_rsvp: boolean, show_guest_list: boolean, allow_price_range: boolean, creator_email_is_verified: boolean, enable_tipping: boolean, waitlist_enabled: boolean, geo_address_info: unknown, slug: unknown, eventspace_id?: string | undefined}; export type CreateApiEventArgs = {select?: string | undefined, Prefer?: ('return=representation' | 'return=minimal' | 'return=none' | 'resolution=ignore-duplicates' | 'resolution=merge-duplicates') | undefined, body: Event}; export type CreateApiEventOptions = {baseUrl?: string | undefined, fetch?: typeof fetch | undefined}; /** * POST /event */ export const createApiEvent = async (args: CreateApiEventArgs, options?: CreateApiEventOptions) => { const {baseUrl = "https://vnaabuozknwgxuvnfwjo.supabase.co:443", fetch: fetchFn = fetch} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") if (args.select != null) query.append("select", String(args.select)) if (args.Prefer != null) headers.set("Prefer", String(args.Prefer)) const url = `${baseUrl.replace(/\/+$/, '')}/event${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return undefined };