/** * Copyright 2022 Gravwell, Inc. All rights reserved. * * Contact: [legal@gravwell.io](mailto:legal@gravwell.io) * * This software may be modified and distributed under the terms of the MIT * license. See the LICENSE file for details. */ import { GetAPIVersionResponse } from '~/functions/system/get-api-version'; import { SystemStatusCategory, SystemStatusMessageReceived, SystemStatusMessageSent, } from '~/functions/system/subscribe-to-many-system-informations'; import { APISubscription } from '~/functions/utils/api-subscription'; import { SystemSettings } from '~/models/system-settings/system-settings'; export interface SystemService { readonly subscribeTo: { readonly information: ( statusCategories: Array, ) => Promise>; }; readonly get: { readonly settings: () => Promise; readonly apiVersion: () => Promise; }; readonly is: { readonly connected: () => Promise; }; readonly backup: (includeSavedSearches: boolean) => Promise; readonly restore: (backup: File, signal?: AbortSignal) => Promise; }