import { FilterOptions, PaginatedListIterator, SortableFilterOptions } from '../cardinal-sdk-ts.mjs'; import { FormShareOptions } from '../crypto/entities/FormShareOptions.mjs'; import { EntityReferenceInGroup } from '../model/EntityReferenceInGroup.mjs'; import { Form } from '../model/Form.mjs'; import { GroupScoped } from '../model/GroupScoped.mjs'; import { StoredDocumentIdentifier } from '../model/StoredDocumentIdentifier.mjs'; import { ArrayWithUniqueKeys } from '../utils/ArrayWithUniqueKeys.mjs'; export interface FormFlavouredInGroupApi { /** * * In-group version of [FormFlavouredApi.shareWith] */ shareWith(delegate: EntityReferenceInGroup, form: GroupScoped, options?: { options?: FormShareOptions | undefined; }): Promise>; /** * * In-group version of [FormFlavouredApi.shareWithMany] */ shareWithMany(form: GroupScoped, delegates: ArrayWithUniqueKeys<{ delegate: EntityReferenceInGroup; shareOptions: FormShareOptions; }, 'delegate'>): Promise>; /** * * In-group version of [FormFlavouredApi.filterFormsBy] */ filterFormsBy(groupId: string, filter: FilterOptions
): Promise>>; /** * * In-group version of [FormFlavouredApi.filterFormsBySorted] */ filterFormsBySorted(groupId: string, filter: SortableFilterOptions): Promise>>; /** * * In-group version of [FormBasicFlavouredApi.createForm]. */ createForm(entity: GroupScoped): Promise>; /** * * In-group version of [FormBasicFlavouredApi.createForms]. */ createForms(entities: Array>): Promise>>; /** * * In-group version of [FormBasicFlavouredApi.undeleteFormById] */ undeleteFormById(entityId: GroupScoped): Promise>; /** * * In-group version of [FormBasicFlavouredApi.undeleteFormsByIds] */ undeleteFormsByIds(entityIds: Array>): Promise>>; /** * * In-group version of [FormBasicFlavouredApi.undeleteForm] */ undeleteForm(form: GroupScoped): Promise>; /** * * In-group version of [FormBasicFlavouredApi.undeleteForms] */ undeleteForms(forms: Array>): Promise>>; /** * * In-group version of [FormBasicFlavouredApi.modifyForm] */ modifyForm(entity: GroupScoped): Promise>; /** * * In-group version of [FormBasicFlavouredApi.modifyForms] */ modifyForms(entities: Array>): Promise>>; /** * * In-group version of [FormBasicFlavouredApi.getForm] */ getForm(groupId: string, entityId: string): Promise | undefined>; /** * * In-group version of [FormBasicFlavouredApi.getForms] */ getForms(groupId: string, entityIds: Array): Promise>>; }