import { useQuery } from '@tanstack/react-query' import { integrationKeys } from './keys' import { get, handleError } from '@/data/fetchers' import type { ResponseError, UseCustomQueryOptions } from '@/types' export async function getIntegrations(signal?: AbortSignal) { const { data, error } = await get('/platform/integrations', { signal, }) if (error) handleError(error) return data } export type IntegrationsData = Awaited> export type ProjectIntegrationConnectionsData = Awaited> export type IntegrationsError = ResponseError export const useIntegrationsQuery = ({ enabled = true, ...options }: UseCustomQueryOptions = {}) => useQuery({ queryKey: integrationKeys.integrationsList(), queryFn: ({ signal }) => getIntegrations(signal), enabled: enabled, staleTime: 30 * 60 * 1000, ...options, })