UNPKG

@adventurelabs/scout-core

Version:

Core utilities and helpers for Adventure Labs Scout applications

25 lines (24 loc) 1.56 kB
import { SupabaseClient } from "@supabase/supabase-js"; import { IArtifactWithMediaUrl, ISessionWithCoordinates, IEventAndTagsPrettyLocation } from "../types/db"; interface UseInfiniteScrollOptions { limit?: number; enabled?: boolean; supabase: SupabaseClient; } interface InfiniteScrollData<T> { items: T[]; isLoading: boolean; isLoadingMore: boolean; hasMore: boolean; loadMore: () => void; refetch: () => void; error: any; } export declare const useInfiniteSessionsByHerd: (herdId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<ISessionWithCoordinates>; export declare const useInfiniteSessionsByDevice: (deviceId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<ISessionWithCoordinates>; export declare const useInfiniteEventsByHerd: (herdId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<IEventAndTagsPrettyLocation>; export declare const useInfiniteEventsByDevice: (deviceId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<IEventAndTagsPrettyLocation>; export declare const useInfiniteArtifactsByHerd: (herdId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<IArtifactWithMediaUrl>; export declare const useInfiniteArtifactsByDevice: (deviceId: number, options: UseInfiniteScrollOptions) => InfiniteScrollData<IArtifactWithMediaUrl>; export declare const useIntersectionObserver: (callback: () => void, options?: IntersectionObserverInit) => import("react").Dispatch<import("react").SetStateAction<Element | null>>; export {};