import { TCommonsScheduleTime } from 'tscommons-esm-async'; import { CommonsConfigFile } from 'nodecommons-esm-config'; import { DatabaseService } from '../services/database.service.mjs'; import { IMatch } from '../interfaces/imatch.mjs'; import { IExpiry } from '../interfaces/iexpiry.mjs'; import { EList } from '../enums/elist.mjs'; export interface IInternalHydraCommonApp { loadConfigFile(file: string): CommonsConfigFile; loadRawJsonConfigFile(file: string): unknown; start(): Promise; getAppName(): string; } export interface IInternalHydraCommonDbApp extends IInternalHydraCommonApp { setDatabaseService(databaseService: DatabaseService): void; } export declare function isIInternalHydraCommonDbApp(test: IInternalHydraCommonApp): test is IInternalHydraCommonDbApp; export interface IInternalHydraCommonListApp extends IInternalHydraCommonDbApp { addToList(list: EList, entries: IMatch[]): void; } export declare function isIInternalHydraCommonListApp(test: IInternalHydraCommonApp): test is IInternalHydraCommonListApp; export interface IInternalHydraCommonExpiryApp extends IInternalHydraCommonDbApp { addToExpiry(expiries: IExpiry[]): void; } export declare function isIInternalHydraCommonExpiryApp(test: IInternalHydraCommonApp): test is IInternalHydraCommonExpiryApp; export interface IInternalHydraCommonMaintenanceApp extends IInternalHydraCommonDbApp { setMaintenanceSchedule(times: TCommonsScheduleTime[]): void; } export declare function isIInternalHydraCommonMaintenanceApp(test: IInternalHydraCommonApp): test is IInternalHydraCommonMaintenanceApp;