harperdb
Version:
HarperDB is a distributed database, caching service, streaming broker, and application development platform focused on performance and ease of use.
27 lines (26 loc) • 1.2 kB
TypeScript
import { type StatusId, type StatusValueMap, type StatusRecord } from './definitions.ts';
import { type AggregatedComponentStatus } from '../../components/status/index.ts';
export { clearStatus as clear, getStatus as get, setStatus as set };
export type { StatusId, StatusRecord, StatusValueMap } from './definitions.ts';
export { STATUS_IDS, DEFAULT_STATUS_ID } from './definitions.ts';
type StatusRequestBody = {
id: StatusId;
};
type StatusWriteRequestBody<T extends StatusId = StatusId> = {
id?: T;
status: StatusValueMap[T];
};
export declare const Status: {
readonly primaryStore: any;
};
declare function clearStatus({ id }: StatusRequestBody): Promise<boolean>;
interface AggregatedComponentStatusWithName extends AggregatedComponentStatus {
name: string;
}
interface AllStatusSummary {
systemStatus: Promise<AsyncIterable<StatusRecord>>;
componentStatus: AggregatedComponentStatusWithName[];
restartRequired: boolean;
}
declare function getStatus({ id }: Partial<StatusRequestBody>): Promise<StatusRecord | AllStatusSummary>;
declare function setStatus<T extends StatusId = StatusId>({ status, id, }: StatusWriteRequestBody<T>): Promise<StatusRecord<T>>;