Files
recap/node_modules/@start9labs/start-sdk/package/lib/backup/setupBackups.d.ts
T

27 lines
1.1 KiB
TypeScript

import { Backups } from './Backups';
import * as T from '../../../base/lib/types';
import { InitScript } from '../../../base/lib/inits';
/**
* Parameters for `setupBackups`. Either:
* - An array of volume IDs to back up entirely, or
* - An async factory function that returns a fully configured {@link Backups} instance
*/
export type SetupBackupsParams<M extends T.SDKManifest> = M['volumes'][number][] | ((_: {
effects: T.Effects;
}) => Promise<Backups<M>>);
type SetupBackupsRes = {
createBackup: T.ExpectedExports.createBackup;
restoreInit: InitScript;
};
/**
* 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)
*/
export declare function setupBackups<M extends T.SDKManifest>(options: SetupBackupsParams<M>): SetupBackupsRes;
export {};