import { buildManifest } from '@start9labs/start-sdk' import { sdk } from './sdk' import { versions } from './versions' import { actions } from './actions' import { setInterfaces } from './interfaces' import { manifest as sdkManifest } from './manifest' // Required ABI exports for a StartOS service package. The PUBLISHABLE manifest is // the static manifest combined with version-graph metadata (version, release // notes, migration ranges) — start-cli reads this `manifest` export, and it must // include `version`, which buildManifest() supplies from the VersionGraph. export const manifest = buildManifest(versions, sdkManifest) export { main } from './main' export { actions } from './actions' // Back up the whole volume (config, ssh key, optional HF token, inbox, reports). export const { createBackup, restoreInit } = sdk.setupBackups(async () => sdk.Backups.ofVolumes('main'), ) // init composes: version migrations, action registration, interface export, // and backup restore. export const init = sdk.setupInit(versions, actions, setInterfaces, restoreInit) export const uninit = sdk.setupUninit(versions)