/** * 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 { MacrosFilter } from '../../functions/macros/get-many-macros'; import { CreatableMacro } from '../../models/macro/creatable-macro'; import { Macro } from '../../models/macro/macro'; import { UpdatableMacro } from '../../models/macro/updatable-macro'; export interface MacrosService { readonly get: { readonly one: (macroID: string) => Promise; readonly many: (filter?: MacrosFilter) => Promise>; readonly all: () => Promise>; readonly authorizedTo: { readonly me: () => Promise>; }; }; readonly create: { readonly one: (data: CreatableMacro) => Promise; }; readonly update: { readonly one: (data: UpdatableMacro) => Promise; }; readonly delete: { readonly one: (macroID: string) => Promise; }; }