/// <reference types="fhir" />
import { DecryptedAppData, DecryptedFhirRecord, Key, QueryParams } from './types';
declare const recordService: {
    updateRecord(ownerId: string, record: DecryptedFhirRecord | DecryptedAppData): Promise<DecryptedFhirRecord | DecryptedAppData>;
    createRecord(ownerId: string, record: DecryptedFhirRecord): Promise<DecryptedFhirRecord>;
    uploadFhirRecord(ownerId: string, record: DecryptedFhirRecord, uploadRequest: Promise<DecryptedFhirRecord>): Promise<DecryptedFhirRecord>;
    uploadRecord(ownerId: string, record: DecryptedFhirRecord | DecryptedAppData, uploadRequest: (userId: string, data: object) => Promise<DecryptedFhirRecord | DecryptedAppData>): Promise<{
        data: any;
        customCreationDate: any;
        id: any;
        tags: string[];
        updatedDate: any;
    } | {
        fhirResource: fhir.Resource;
        customCreationDate: any;
        id: any;
        tags: string[];
        updatedDate: any;
    }>;
    downloadRecord(ownerId: string, recordId: string): Promise<DecryptedFhirRecord>;
    searchRecords(ownerId: string, params: QueryParams, countOnly?: boolean): Promise<any>;
    deleteRecord(ownerId: string, recordId: string): any;
    decryptResourceAndTags(record: any, tagKey: Key): Promise<DecryptedFhirRecord>;
};
export default recordService;
