import { ApolloClient, DocumentNode, NormalizedCacheObject } from '@apollo/client'; import { Patient } from '../types'; /** * GetPatient options * @param id The id of the patient * @param fragment Allows you to override the default query to request more fields */ export interface GetPatientOptions { id?: string; fragment?: Record; } /** * GetPatients options * @param after Paginated query after this cursor * @param first Specify page size limit (default: 25) * @param name Filter the result by patient name * @param fragment Allows you to override the default query to request more fields */ export interface GetPatientsOptions { after?: string; first?: number; name?: string; fragment?: Record; } /** * CreatePatient options * @param fragment Allows you to override the default query to request more fields */ export interface CreatePatientOptions { fragment?: Record; } /** * UpdatePatient options * @param fragment Allows you to override the default query to request more fields */ export interface UpdatePatientOptions { fragment?: Record; } /** * RemovePatientPreferredPharmacy options * @param fragment Allows you to override the default query to request more fields */ export interface RemovePatientPreferredPharmacyOptions { fragment?: Record; } /** * removePatientAllergy options * @param fragment Allows you to override the default query to request more fields */ export interface RemovePatientAllergyOptions { fragment?: Record; } /** * Contains various methods for Photon Patients */ export declare class PatientQueryManager { private apollo; /** * @param apollo - An Apollo client instance */ constructor(apollo: ApolloClient | ApolloClient); /** * Retrieves patient by id * @param options - Query options * @returns */ getPatient({ id, fragment }?: GetPatientOptions): Promise>; /** * Retrieves all patients in a paginated fashion, optionally filtered by name * @param options - Query options * @returns */ getPatients({ after, first, name, fragment }?: GetPatientsOptions): Promise>; /** * Creates a new patient * @param options - Query options * @returns */ createPatient({ fragment }: CreatePatientOptions): import("../utils").MakeMutationReturn<{ createPatient: Patient; } | null | undefined>; /** * Updates an existing patient * @param options - Query options * @returns */ updatePatient({ fragment }: UpdatePatientOptions): import("../utils").MakeMutationReturn<{ updatePatient: Patient; } | null | undefined>; /** * Adds a preferred pharmcy to a patient * @param options - Query options * @returns */ removePatientPreferredPharmacy({ fragment }: RemovePatientPreferredPharmacyOptions): import("../utils").MakeMutationReturn<{ removePatientPreferredPharmacy: Patient; } | null | undefined>; /** * Removes an allergen from a patient * @param options - Query options * @returns */ removePatientAllergy({ fragment }: RemovePatientAllergyOptions): import("../utils").MakeMutationReturn<{ removePatientAllergy: Patient; } | null | undefined>; }