/** * iCure Data Stack API Documentation * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2. * * OpenAPI spec version: v1 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ import { IccApplicationsettingsApi } from '../icc-api'; import { EncryptedEntityXApi } from './basexapi/EncryptedEntityXApi'; import * as models from '../icc-api/model/models'; import { IccCryptoXApi } from './icc-crypto-x-api'; import { IccDataOwnerXApi } from './icc-data-owner-x-api'; import { SecretIdUseOption } from './crypto/SecretIdUseOption'; import { ShareMetadataBehaviour } from './crypto/ShareMetadataBehaviour'; import { ShareResult } from './utils/ShareResult'; import { ApplicationSettings, SecureDelegation, User } from '../icc-api/model/models'; import AccessLevelEnum = SecureDelegation.AccessLevelEnum; import { AuthenticationProvider } from './auth/AuthenticationProvider'; import { EntityShareRequest } from '../icc-api/model/requests/EntityShareRequest'; import RequestedPermissionEnum = EntityShareRequest.RequestedPermissionEnum; import { XHR } from '../icc-api/api/XHR'; export declare class IccApplicationSettingsXApi extends IccApplicationsettingsApi implements EncryptedEntityXApi { private readonly autofillAuthor; crypto: IccCryptoXApi; dataOwnerApi: IccDataOwnerXApi; private readonly encryptedFields; get headers(): Promise>; constructor(host: string, headers: { [key: string]: string; }, crypto: IccCryptoXApi, dataOwnerApi: IccDataOwnerXApi, autofillAuthor: boolean, encryptedKeys?: Array, authenticationProvider?: AuthenticationProvider, fetchImpl?: (input: RequestInfo, init?: RequestInit) => Promise); newInstance(user: models.User, c?: any, options?: { additionalDelegates?: { [dataOwnerId: string]: AccessLevelEnum; }; sfkOption?: SecretIdUseOption; ignoreAutoDelegations?: boolean; alternateRootDelegation?: string; }): Promise; hasWriteAccess(applicationSettings: models.ApplicationSettings): Promise; shareWith(delegateId: string, applicationSettings: models.ApplicationSettings, options?: { requestedPermissions?: RequestedPermissionEnum; shareEncryptionKey?: ShareMetadataBehaviour; }): Promise; shareWithMany(applicationSettings: models.ApplicationSettings, delegates: { [delegateId: string]: { requestedPermissions?: RequestedPermissionEnum; shareEncryptionKey?: ShareMetadataBehaviour; }; }): Promise; tryShareWithMany(applicationSettings: models.ApplicationSettings, delegates: { [delegateId: string]: { requestedPermissions?: RequestedPermissionEnum; shareEncryptionKey?: ShareMetadataBehaviour; }; }): Promise>; getDataOwnersWithAccessTo(entity: models.ApplicationSettings): Promise<{ permissionsByDataOwnerId: { [p: string]: AccessLevelEnum; }; hasUnknownAnonymousDataOwners: boolean; }>; getEncryptionKeysOf(entity: models.ApplicationSettings): Promise; createDelegationDeAnonymizationMetadata(entity: models.ApplicationSettings, delegates: string[]): Promise; createApplicationSettings(body?: ApplicationSettings): Promise; getApplicationSettings(): Promise>; updateApplicationSettings(body?: ApplicationSettings): Promise; createApplicationSettingsWithUser(user: User | undefined, body: ApplicationSettings): Promise; getApplicationSettingsWithUser(user: User | undefined): Promise>; updateApplicationSettingsWithUser(user: User | undefined, body: ApplicationSettings): Promise; private tryDecryptOrReturnOriginal; private encrypt; }