UNPKG

state-switch

Version:

State Switch is a Change Monitor/Guarder for Async Actions.

39 lines 1.46 kB
import type { Loggable } from 'brolog'; import { StateSwitchOptions, ServiceableAbstract, StateSwitchInterface } from '../interfaces.js'; import { BusyIndicator } from '../busy-indicator.js'; declare const serviceCtlMixin: (serviceCtlName?: string, options?: StateSwitchOptions | undefined) => <SuperClass extends typeof ServiceableAbstract>(superClass: SuperClass) => ((abstract new (...args: any[]) => { state: StateSwitchInterface; __serviceCtlResettingIndicator: BusyIndicator; __serviceCtlLogger: Loggable; start(): Promise<void>; stop(): Promise<void>; reset(): Promise<void>; /** * onStart & onStop must be implemented by the child class */ onStart(): Promise<void>; onStop(): Promise<void>; emit(..._: any[]): any; }) & { VERSION: string; }) & SuperClass; declare const ServiceCtl_base: ((abstract new (...args: any[]) => { state: StateSwitchInterface; __serviceCtlResettingIndicator: BusyIndicator; __serviceCtlLogger: Loggable; start(): Promise<void>; stop(): Promise<void>; reset(): Promise<void>; /** * onStart & onStop must be implemented by the child class */ onStart(): Promise<void>; onStop(): Promise<void>; emit(..._: any[]): any; }) & { VERSION: string; }) & typeof ServiceableAbstract; declare abstract class ServiceCtl extends ServiceCtl_base { } export { ServiceCtl, serviceCtlMixin, }; //# sourceMappingURL=service-ctl.d.ts.map