import { ApolloClient, DocumentNode, NormalizedCacheObject } from '@apollo/client'; import { FulfillmentType, LatLongSearch, Pharmacy } from '../types'; /** * GetPharmacies options * @param name Filter the result by pharmacy name * @param location The latitude, longitude, and radius of the search * @param type The fulfillment type of the pharmacy * @param fragment Allows you to override the default query to request more fields */ export interface GetPharmaciesOptions { name?: string; location?: LatLongSearch; type?: FulfillmentType; after?: number; first?: number; fragment?: Record; } /** * GetPharmacy options * @param id The id of the pharmacy * @param fragment Allows you to override the default query to request more fields */ export interface GetPharmacyOptions { id?: string; fragment?: Record; } /** * Contains various methods for Photon Pharmacies */ export declare class PharmacyQueryManager { private apollo; /** * @param apollo - An Apollo client instance */ constructor(apollo: ApolloClient | ApolloClient); /** * Retrieves all pharmacies, optionally filtered by pharmacy name, in a given latitude/longitude/radius * @param options - Query options * @returns */ getPharmacies({ name, location, type, after, first, fragment }?: GetPharmaciesOptions): Promise>; /** * Retrieves pharmacy by id * @param options - Query options * @returns */ getPharmacy({ id, fragment }?: GetPharmacyOptions): Promise>; }