/**
* React Query Hook for Listing Notifications
* Provides query state and caching
*/
import type { ServiceOptions, QueryKey, UseQueryResult, ApiQueryOptions } from '@plyaz/types/api';
import type { ListNotificationFilters, ListNotificationResponse } from '@plyaz/types/api';
import type { ErrorResponse } from '@plyaz/types/errors';
import type { EndpointsList } from '@/api/endpoints';
/**
* Hook for fetching list of notifications
*
* @param queryKey - React Query cache key
* @param filters - Optional query filters (page, limit, status, etc.)
* @param serviceOptions - Service options (apiClient, apiConfig, updateConfigOptions)
* @param queryOptions - React Query options
* @returns React Query result
*
* @example
* ```typescript
* const { data, isLoading } = useNotifications(
* ['notifications', { page: 1 }],
* { page: 1, limit: 20, status: 'sent' },
* undefined,
* { enabled: true }
* );
*
* if (isLoading) return