Skip to main content

Class: EncryptedSyncCloudStorageProvider

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:34

Decorator around a CloudStorageProvider that encrypts/decrypts sync artifacts under sync/.

Implements

Constructors

Constructor

new EncryptedSyncCloudStorageProvider(args: { inner: CloudStorageProvider; key: Buffer; }): EncryptedSyncCloudStorageProvider

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:153

Parameters

args
inner

CloudStorageProvider

key

Buffer

Returns

EncryptedSyncCloudStorageProvider

Properties

inner

private readonly inner: CloudStorageProvider

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:35


key

private readonly key: Buffer

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:37

Accessors

kind

Get Signature

get kind(): CloudProviderKind

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:39

Provider identifier.

Returns

CloudProviderKind

Provider identifier.

Implementation of

CloudStorageProvider.kind

Methods

deleteObject()

deleteObject(key: string): Promise<void>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:43

Deletes an object by key (no-op if missing).

Parameters

key

string

Returns

Promise<void>

Implementation of

CloudStorageProvider.deleteObject


downloadBackup()

downloadBackup(key: string): Promise<{ buffer: Buffer; entry: CloudBackupEntry; }>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:47

Downloads a previously uploaded backup.

Parameters

key

string

Returns

Promise<{ buffer: Buffer; entry: CloudBackupEntry; }>

Implementation of

CloudStorageProvider.downloadBackup


downloadObject()

downloadObject(key: string): Promise<Buffer<ArrayBufferLike>>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:53

Downloads an arbitrary object by key.

Parameters

key

string

Returns

Promise<Buffer<ArrayBufferLike>>

Implementation of

CloudStorageProvider.downloadObject


isConnected()

isConnected(): Promise<boolean>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:93

Returns true when the provider can perform operations right now.

Returns

Promise<boolean>

Implementation of

CloudStorageProvider.isConnected


listBackups()

listBackups(): Promise<CloudBackupEntry[]>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:97

Lists all backups currently stored with this provider.

Returns

Promise<CloudBackupEntry[]>

Implementation of

CloudStorageProvider.listBackups


listObjects()

listObjects(prefix: string): Promise<CloudObjectEntry[]>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:101

Lists objects under a prefix.

Parameters

prefix

string

Returns

Promise<CloudObjectEntry[]>

Remarks

Keys must use POSIX separators (/). Implementations must ensure the returned keys are confined to the provider root.

Implementation of

CloudStorageProvider.listObjects


uploadBackup()

uploadBackup(args: { buffer: Buffer; encrypted: boolean; fileName: string; metadata: SerializedDatabaseBackupMetadata; }): Promise<CloudBackupEntry>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:105

Uploads a backup blob and associated metadata.

Parameters

args

Upload parameters.

buffer

Buffer

encrypted

boolean

fileName

string

metadata

SerializedDatabaseBackupMetadata

Returns

Promise<CloudBackupEntry>

Implementation of

CloudStorageProvider.uploadBackup


uploadObject()

uploadObject(args: { buffer: Buffer; key: string; overwrite?: boolean; }): Promise<CloudObjectEntry>

Defined in: electron/services/cloud/providers/EncryptedSyncCloudStorageProvider.ts:114

Uploads an arbitrary object by key.

Parameters

args
buffer

Buffer

key

string

overwrite?

boolean

Returns

Promise<CloudObjectEntry>

Remarks

args.key must be a POSIX-style key relative to provider root.

Implementation of

CloudStorageProvider.uploadObject