export type StatusWithDate = { status: TStatus | null; date: number; }; type HistoryItem = { d: number; s: TStatus | null; }; export type EntityWithStatus = StatusWithDate & { history?: HistoryItem[]; }; export declare namespace EntityWithStatus { function changeStatus, TStatus extends string>(entity: Partial, status: TStatus, date?: number | null, allowStatusUpdate?: boolean): boolean; function getLastStatusDate, TStatus extends string>(entity: T, ...statuses: TStatus[]): number | null; function getFullHistory, TStatus extends string>(entity: T): StatusWithDate[]; } export {};