(
build: (api: ScheduleDefineApi) => ReadonlyArray<ScheduleEntry>
): DaemonScheduleLayerInputA declarative schedule layer from a builder DSL:
Daemon.scheduleDefine(({ at, window }) => [at("daily", d), window("game", start, end)]).
schedule
Source src/Daemon.ts:19653 lines
export const const scheduleDefine: (
build: (
api: ScheduleDefineApi
) => ReadonlyArray<ScheduleEntry>
) => DaemonScheduleLayerInput
A declarative schedule layer from a builder DSL:
Daemon.scheduleDefine(({ at, window }) => [at("daily", d), window("game", start, end)]).
scheduleDefine = (
build: (
api: ScheduleDefineApi
) => ReadonlyArray<ScheduleEntry>
build: (api: ScheduleDefineApi(parameter) api: {
at: typeof at;
window: typeof window;
fromStarts: typeof fromStarts;
all: (...entries: ReadonlyArray<DaemonScheduleEntry>) => ReadonlyArray<DaemonScheduleEntry>;
}
api: ScheduleDefineApi) => interface ReadonlyArray<T>ReadonlyArray<type ScheduleEntry = DaemonScheduleEntryA native engine schedule entry — { id?, startAt, stopAt? }, the same shape as a
ScheduleWindow
(
at
/
window
build these). Element of a
ScheduleService
's entries.
ScheduleEntry>,
): type DaemonScheduleLayerInput =
Layer.Layer<DaemonScheduleTag, never, never>
DaemonScheduleLayerInput => const DaemonSchedule: typeof DaemonScheduleTag & {
readonly inMemory: (
initial?: ReadonlyArray<DaemonScheduleEntry>
) => Layer.Layer<DaemonScheduleTag>
readonly empty: Layer.Layer<DaemonScheduleTag>
readonly alwaysArmed: Layer.Layer<DaemonScheduleTag>
readonly at: {
(startAt: Date): DaemonScheduleEntry
(
id: string,
startAt: Date
): DaemonScheduleEntry
}
readonly window: {
(
startAt: Date,
stopAt: Date
): DaemonScheduleEntry
(
id: string,
startAt: Date,
stopAt: Date
): DaemonScheduleEntry
}
readonly fromStarts: (
starts: ReadonlyArray<Date>
) => ReadonlyArray<DaemonScheduleEntry>
readonly define: (
build: (
api: ScheduleDefineApi
) => ReadonlyArray<DaemonScheduleEntry>
) => Layer.Layer<DaemonScheduleTag>
}
DaemonSchedule — schedule storage, CRUD, and sync.
DaemonSchedule.define: (
build: (
api: ScheduleDefineApi
) => ReadonlyArray<DaemonScheduleEntry>
) => Layer.Layer<DaemonScheduleTag>
Declarative schedule Layer from a combinator DSL.
define(build: (
api: ScheduleDefineApi
) => ReadonlyArray<ScheduleEntry>
build);