UNPKG

@push.rocks/smartlog

Version:

A minimalistic, distributed, and extensible logging tool supporting centralized log management.

29 lines (28 loc) 1.06 kB
import * as plugins from './sl.receiver.plugins.js'; import type { ILogPackage, ILogPackageAuthenticated } from '../dist_ts_interfaces/index.js'; export type TValidatorFunction = (logPackage: ILogPackage) => Promise<boolean>; export interface ISmartlogReceiverOptions { smartlogInstance: plugins.smartlog.Smartlog; passphrase: string; validatorFunction: TValidatorFunction; } /** * a class that receives smartlog packages */ export declare class SmartlogReceiver { passphrase: string; validatorFunction: TValidatorFunction; smartlogInstance: plugins.smartlog.Smartlog; constructor(smartlogReceiverOptions: ISmartlogReceiverOptions); /** * handles a authenticated log */ handleAuthenticatedLog(authenticatedLogPackageArg: ILogPackageAuthenticated): Promise<{ status: string; }>; /** * handles an array of authenticated logs * @param authenticatedLogsPackageArrayArg */ handleManyAuthenticatedLogs(authenticatedLogsPackageArrayArg: ILogPackageAuthenticated[]): Promise<void>; }