The definition of a transport that handles sending and retrieving backup data.

interface BackupTransportInterface {
    deleteData: (
        backup: BackupEntity,
        resource: BackupResourceEntity,
    ) => void | Promise<void>;
    name: string;
    retrieveData: (
        backup: BackupEntity,
        resource: BackupResourceEntity,
    ) => Readable | Promise<Readable>;
    storeData: (
        data: Readable,
        backup: BackupEntity,
        resource: BackupResourceEntity,
    ) => void | Promise<void>;
}

Implemented by

Properties

deleteData: (
    backup: BackupEntity,
    resource: BackupResourceEntity,
) => void | Promise<void>

Deletes the backup data of the given resource.

name: string

The name of the transport. Is used to resolve the transport when restoring backups, so this should not change.

retrieveData: (
    backup: BackupEntity,
    resource: BackupResourceEntity,
) => Readable | Promise<Readable>

Retrieves the backup data for the given resource.

storeData: (
    data: Readable,
    backup: BackupEntity,
    resource: BackupResourceEntity,
) => void | Promise<void>

Stores the given data somewhere.