import { FilterOptions, PaginatedListIterator, SortableFilterOptions } from '../cardinal-sdk-ts.mjs'; import { PatientShareOptions } from '../crypto/entities/PatientShareOptions.mjs'; import { EntityReferenceInGroup } from '../model/EntityReferenceInGroup.mjs'; import { GroupScoped } from '../model/GroupScoped.mjs'; import { Patient } from '../model/Patient.mjs'; import { StoredDocumentIdentifier } from '../model/StoredDocumentIdentifier.mjs'; import { ArrayWithUniqueKeys } from '../utils/ArrayWithUniqueKeys.mjs'; export interface PatientFlavouredInGroupApi { /** * * In-group version of [PatientFlavouredApi.shareWith] */ shareWith(delegate: EntityReferenceInGroup, patient: GroupScoped, options?: { options?: PatientShareOptions | undefined; }): Promise>; /** * * In-group version of [PatientFlavouredApi.shareWithMany] */ shareWithMany(patient: GroupScoped, delegates: ArrayWithUniqueKeys<{ delegate: EntityReferenceInGroup; shareOptions: PatientShareOptions; }, 'delegate'>): Promise>; /** * * In-group version of [PatientFlavouredApi.initializeConfidentialSecretId] */ initializeConfidentialSecretId(patient: GroupScoped): Promise>; /** * * In-group version of [PatientFlavouredApi.filterPatientsBy] */ filterPatientsBy(groupId: string, filter: FilterOptions): Promise>>; /** * * In-group version of [PatientFlavouredApi.filterPatientsBySorted] */ filterPatientsBySorted(groupId: string, filter: SortableFilterOptions): Promise>>; /** * * In-group version of [PatientBasicFlavouredApi.createPatient] */ createPatient(patient: GroupScoped): Promise>; /** * * In-group version of [PatientBasicFlavouredApi.createPatients] */ createPatients(patients: Array>): Promise>>; /** * * In-group version of [PatientBasicFlavouredApi.undeletePatient] */ undeletePatient(patient: GroupScoped): Promise>; /** * * In-group version of [PatientBasicFlavouredApi.undeletePatients] */ undeletePatients(patients: Array>): Promise>>; /** * * In-group version of [PatientBasicFlavouredApi.modifyPatient] */ modifyPatient(entity: GroupScoped): Promise>; /** * * In-group version of [PatientBasicFlavouredApi.undeletePatientById] */ undeletePatientById(patientId: GroupScoped): Promise>; /** * * In-group version of [PatientBasicFlavouredApi.undeletePatientsByIds] */ undeletePatientsByIds(patientIds: Array>): Promise>>; /** * * In-group version of [PatientBasicFlavouredApi.getPatient] */ getPatient(groupId: string, entityId: string): Promise | undefined>; /** * * In-group version of [PatientBasicFlavouredApi.getPatientResolvingMerges] */ getPatientResolvingMerges(groupId: string, patientId: string, maxMergeDepth: number | undefined): Promise>; /** * * In-group version of [PatientBasicFlavouredApi.getPatients] */ getPatients(groupId: string, patientIds: Array): Promise>>; /** * * In-group version of [PatientBasicFlavouredApi.modifyPatients] */ modifyPatients(patients: Array>): Promise>>; }