"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.setupBackups = setupBackups; const Backups_1 = require("./Backups"); /** * Set up backup and restore exports for the service. * * Returns `{ createBackup, restoreInit }` which should be exported and wired into * the service's init and backup entry points. * * @param options - Either an array of volume IDs or an async factory returning a Backups instance * @returns An object with `createBackup` (the backup export) and `restoreInit` (an InitScript for restore) */ function setupBackups(options) { let backupsFactory; if (options instanceof Function) { backupsFactory = options; } else { backupsFactory = async () => Backups_1.Backups.ofVolumes(...options); } const answer = { get createBackup() { return (async (options) => { return (await backupsFactory(options)).createBackup(options.effects); }); }, get restoreInit() { return { init: async (effects, kind) => { return (await backupsFactory({ effects })).init(effects, kind); }, }; }, }; return answer; } //# sourceMappingURL=setupBackups.js.map