@smthrs/triggers 0.0.0-stage → 1.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/CHANGELOG.md +219 -0
  2. package/LICENSE +21 -0
  3. package/README.md +109 -2
  4. package/dist/cjs/CatchUp.d.ts +25 -0
  5. package/dist/cjs/CatchUp.d.ts.map +1 -0
  6. package/dist/cjs/CatchUp.js +72 -0
  7. package/dist/cjs/CatchUp.js.map +7 -0
  8. package/dist/cjs/Channel.d.ts +108 -0
  9. package/dist/cjs/Channel.d.ts.map +1 -0
  10. package/dist/cjs/Channel.js +25 -0
  11. package/dist/cjs/Channel.js.map +7 -0
  12. package/dist/cjs/ClaimDecision.d.ts +183 -0
  13. package/dist/cjs/ClaimDecision.d.ts.map +1 -0
  14. package/dist/cjs/ClaimDecision.js +144 -0
  15. package/dist/cjs/ClaimDecision.js.map +7 -0
  16. package/dist/cjs/Cron.d.ts +91 -0
  17. package/dist/cjs/Cron.d.ts.map +1 -0
  18. package/dist/cjs/Cron.js +108 -0
  19. package/dist/cjs/Cron.js.map +7 -0
  20. package/dist/cjs/DispatchReader.d.ts +77 -0
  21. package/dist/cjs/DispatchReader.d.ts.map +1 -0
  22. package/dist/cjs/DispatchReader.js +121 -0
  23. package/dist/cjs/DispatchReader.js.map +7 -0
  24. package/dist/cjs/Overlap.d.ts +40 -0
  25. package/dist/cjs/Overlap.d.ts.map +1 -0
  26. package/dist/cjs/Overlap.js +37 -0
  27. package/dist/cjs/Overlap.js.map +7 -0
  28. package/dist/cjs/Schedule.d.ts +96 -0
  29. package/dist/cjs/Schedule.d.ts.map +1 -0
  30. package/dist/cjs/Schedule.js +61 -0
  31. package/dist/cjs/Schedule.js.map +7 -0
  32. package/dist/cjs/Scheduler.d.ts +248 -0
  33. package/dist/cjs/Scheduler.d.ts.map +1 -0
  34. package/dist/cjs/Scheduler.js +647 -0
  35. package/dist/cjs/Scheduler.js.map +7 -0
  36. package/dist/cjs/SqlTriggerStore.d.ts +29 -0
  37. package/dist/cjs/SqlTriggerStore.d.ts.map +1 -0
  38. package/dist/cjs/SqlTriggerStore.js +483 -0
  39. package/dist/cjs/SqlTriggerStore.js.map +7 -0
  40. package/dist/cjs/Trigger.d.ts +81 -0
  41. package/dist/cjs/Trigger.d.ts.map +1 -0
  42. package/dist/cjs/Trigger.js +54 -0
  43. package/dist/cjs/Trigger.js.map +7 -0
  44. package/dist/cjs/TriggerError.d.ts +58 -0
  45. package/dist/cjs/TriggerError.d.ts.map +1 -0
  46. package/dist/cjs/TriggerError.js +83 -0
  47. package/dist/cjs/TriggerError.js.map +7 -0
  48. package/dist/cjs/TriggerStore.d.ts +411 -0
  49. package/dist/cjs/TriggerStore.d.ts.map +1 -0
  50. package/dist/cjs/TriggerStore.js +127 -0
  51. package/dist/cjs/TriggerStore.js.map +7 -0
  52. package/dist/cjs/Webhook.d.ts +118 -0
  53. package/dist/cjs/Webhook.d.ts.map +1 -0
  54. package/dist/cjs/Webhook.js +153 -0
  55. package/dist/cjs/Webhook.js.map +7 -0
  56. package/dist/cjs/index.d.ts +30 -0
  57. package/dist/cjs/index.d.ts.map +1 -0
  58. package/dist/cjs/index.js +57 -0
  59. package/dist/cjs/index.js.map +7 -0
  60. package/dist/cjs/internal/ActiveRuns.d.ts +51 -0
  61. package/dist/cjs/internal/ActiveRuns.d.ts.map +1 -0
  62. package/dist/cjs/internal/ActiveRuns.js +56 -0
  63. package/dist/cjs/internal/ActiveRuns.js.map +7 -0
  64. package/dist/cjs/internal/DueOccurrences.d.ts +32 -0
  65. package/dist/cjs/internal/DueOccurrences.d.ts.map +1 -0
  66. package/dist/cjs/internal/DueOccurrences.js +80 -0
  67. package/dist/cjs/internal/DueOccurrences.js.map +7 -0
  68. package/dist/cjs/internal/WallClock.d.ts +59 -0
  69. package/dist/cjs/internal/WallClock.d.ts.map +1 -0
  70. package/dist/cjs/internal/WallClock.js +132 -0
  71. package/dist/cjs/internal/WallClock.js.map +7 -0
  72. package/dist/cjs/migrations/0001_triggers.d.ts +15 -0
  73. package/dist/cjs/migrations/0001_triggers.d.ts.map +1 -0
  74. package/dist/cjs/migrations/0001_triggers.js +64 -0
  75. package/dist/cjs/migrations/0001_triggers.js.map +7 -0
  76. package/dist/cjs/migrations/0002_reservation_lease.d.ts +15 -0
  77. package/dist/cjs/migrations/0002_reservation_lease.d.ts.map +1 -0
  78. package/dist/cjs/migrations/0002_reservation_lease.js +41 -0
  79. package/dist/cjs/migrations/0002_reservation_lease.js.map +7 -0
  80. package/dist/cjs/migrations/0003_heartbeat.d.ts +16 -0
  81. package/dist/cjs/migrations/0003_heartbeat.d.ts.map +1 -0
  82. package/dist/cjs/migrations/0003_heartbeat.js +44 -0
  83. package/dist/cjs/migrations/0003_heartbeat.js.map +7 -0
  84. package/dist/cjs/migrations/0004_fire_run_index.d.ts +17 -0
  85. package/dist/cjs/migrations/0004_fire_run_index.d.ts.map +1 -0
  86. package/dist/cjs/migrations/0004_fire_run_index.js +40 -0
  87. package/dist/cjs/migrations/0004_fire_run_index.js.map +7 -0
  88. package/dist/cjs/migrations/index.d.ts +33 -0
  89. package/dist/cjs/migrations/index.d.ts.map +1 -0
  90. package/dist/cjs/migrations/index.js +50 -0
  91. package/dist/cjs/migrations/index.js.map +7 -0
  92. package/dist/cjs/package.json +1 -0
  93. package/dist/cjs/test/TestTriggers.d.ts +12 -0
  94. package/dist/cjs/test/TestTriggers.d.ts.map +1 -0
  95. package/dist/cjs/test/TestTriggers.js +421 -0
  96. package/dist/cjs/test/TestTriggers.js.map +7 -0
  97. package/dist/esm/CatchUp.d.ts +25 -0
  98. package/dist/esm/CatchUp.d.ts.map +1 -0
  99. package/dist/esm/CatchUp.js +52 -0
  100. package/dist/esm/CatchUp.js.map +1 -0
  101. package/dist/esm/Channel.d.ts +108 -0
  102. package/dist/esm/Channel.d.ts.map +1 -0
  103. package/dist/esm/Channel.js +19 -0
  104. package/dist/esm/Channel.js.map +1 -0
  105. package/dist/esm/ClaimDecision.d.ts +183 -0
  106. package/dist/esm/ClaimDecision.d.ts.map +1 -0
  107. package/dist/esm/ClaimDecision.js +172 -0
  108. package/dist/esm/ClaimDecision.js.map +1 -0
  109. package/dist/esm/Cron.d.ts +91 -0
  110. package/dist/esm/Cron.d.ts.map +1 -0
  111. package/dist/esm/Cron.js +132 -0
  112. package/dist/esm/Cron.js.map +1 -0
  113. package/dist/esm/DispatchReader.d.ts +77 -0
  114. package/dist/esm/DispatchReader.d.ts.map +1 -0
  115. package/dist/esm/DispatchReader.js +152 -0
  116. package/dist/esm/DispatchReader.js.map +1 -0
  117. package/dist/esm/Overlap.d.ts +40 -0
  118. package/dist/esm/Overlap.d.ts.map +1 -0
  119. package/dist/esm/Overlap.js +31 -0
  120. package/dist/esm/Overlap.js.map +1 -0
  121. package/dist/esm/Schedule.d.ts +96 -0
  122. package/dist/esm/Schedule.d.ts.map +1 -0
  123. package/dist/esm/Schedule.js +73 -0
  124. package/dist/esm/Schedule.js.map +1 -0
  125. package/dist/esm/Scheduler.d.ts +248 -0
  126. package/dist/esm/Scheduler.d.ts.map +1 -0
  127. package/dist/esm/Scheduler.js +734 -0
  128. package/dist/esm/Scheduler.js.map +1 -0
  129. package/dist/esm/SqlTriggerStore.d.ts +29 -0
  130. package/dist/esm/SqlTriggerStore.d.ts.map +1 -0
  131. package/dist/esm/SqlTriggerStore.js +483 -0
  132. package/dist/esm/SqlTriggerStore.js.map +1 -0
  133. package/dist/esm/Trigger.d.ts +81 -0
  134. package/dist/esm/Trigger.d.ts.map +1 -0
  135. package/dist/esm/Trigger.js +56 -0
  136. package/dist/esm/Trigger.js.map +1 -0
  137. package/dist/esm/TriggerError.d.ts +58 -0
  138. package/dist/esm/TriggerError.d.ts.map +1 -0
  139. package/dist/esm/TriggerError.js +110 -0
  140. package/dist/esm/TriggerError.js.map +1 -0
  141. package/dist/esm/TriggerStore.d.ts +411 -0
  142. package/dist/esm/TriggerStore.d.ts.map +1 -0
  143. package/dist/esm/TriggerStore.js +209 -0
  144. package/dist/esm/TriggerStore.js.map +1 -0
  145. package/dist/esm/Webhook.d.ts +118 -0
  146. package/dist/esm/Webhook.d.ts.map +1 -0
  147. package/dist/esm/Webhook.js +186 -0
  148. package/dist/esm/Webhook.js.map +1 -0
  149. package/dist/esm/index.d.ts +30 -0
  150. package/dist/esm/index.d.ts.map +1 -0
  151. package/dist/esm/index.js +30 -0
  152. package/dist/esm/index.js.map +1 -0
  153. package/dist/esm/internal/ActiveRuns.d.ts +51 -0
  154. package/dist/esm/internal/ActiveRuns.d.ts.map +1 -0
  155. package/dist/esm/internal/ActiveRuns.js +34 -0
  156. package/dist/esm/internal/ActiveRuns.js.map +1 -0
  157. package/dist/esm/internal/DueOccurrences.d.ts +32 -0
  158. package/dist/esm/internal/DueOccurrences.d.ts.map +1 -0
  159. package/dist/esm/internal/DueOccurrences.js +55 -0
  160. package/dist/esm/internal/DueOccurrences.js.map +1 -0
  161. package/dist/esm/internal/WallClock.d.ts +59 -0
  162. package/dist/esm/internal/WallClock.d.ts.map +1 -0
  163. package/dist/esm/internal/WallClock.js +155 -0
  164. package/dist/esm/internal/WallClock.js.map +1 -0
  165. package/dist/esm/migrations/0001_triggers.d.ts +15 -0
  166. package/dist/esm/migrations/0001_triggers.d.ts.map +1 -0
  167. package/dist/esm/migrations/0001_triggers.js +42 -0
  168. package/dist/esm/migrations/0001_triggers.js.map +1 -0
  169. package/dist/esm/migrations/0002_reservation_lease.d.ts +15 -0
  170. package/dist/esm/migrations/0002_reservation_lease.d.ts.map +1 -0
  171. package/dist/esm/migrations/0002_reservation_lease.js +19 -0
  172. package/dist/esm/migrations/0002_reservation_lease.js.map +1 -0
  173. package/dist/esm/migrations/0003_heartbeat.d.ts +16 -0
  174. package/dist/esm/migrations/0003_heartbeat.d.ts.map +1 -0
  175. package/dist/esm/migrations/0003_heartbeat.js +23 -0
  176. package/dist/esm/migrations/0003_heartbeat.js.map +1 -0
  177. package/dist/esm/migrations/0004_fire_run_index.d.ts +17 -0
  178. package/dist/esm/migrations/0004_fire_run_index.d.ts.map +1 -0
  179. package/dist/esm/migrations/0004_fire_run_index.js +20 -0
  180. package/dist/esm/migrations/0004_fire_run_index.js.map +1 -0
  181. package/dist/esm/migrations/index.d.ts +33 -0
  182. package/dist/esm/migrations/index.d.ts.map +1 -0
  183. package/dist/esm/migrations/index.js +37 -0
  184. package/dist/esm/migrations/index.js.map +1 -0
  185. package/dist/esm/test/TestTriggers.d.ts +12 -0
  186. package/dist/esm/test/TestTriggers.d.ts.map +1 -0
  187. package/dist/esm/test/TestTriggers.js +439 -0
  188. package/dist/esm/test/TestTriggers.js.map +1 -0
  189. package/docs/README.md +140 -0
  190. package/docs/api.md +1186 -0
  191. package/docs/concepts/channels.md +103 -0
  192. package/docs/concepts/claim-protocol.md +229 -0
  193. package/docs/concepts/policies.md +124 -0
  194. package/docs/concepts/schedules.md +134 -0
  195. package/docs/guides/choose-a-policy.md +113 -0
  196. package/docs/guides/declare-a-trigger.md +136 -0
  197. package/docs/guides/ingest-a-webhook.md +164 -0
  198. package/docs/guides/run-the-scheduler.md +173 -0
  199. package/docs/guides/testing.md +157 -0
  200. package/docs/installation.md +81 -0
  201. package/docs/quickstart.md +163 -0
  202. package/docs/troubleshooting.md +281 -0
  203. package/package.json +241 -3
  204. package/src/CatchUp.ts +73 -0
  205. package/src/Channel.ts +121 -0
  206. package/src/ClaimDecision.ts +303 -0
  207. package/src/Cron.ts +173 -0
  208. package/src/DispatchReader.ts +179 -0
  209. package/src/Overlap.ts +53 -0
  210. package/src/Schedule.ts +112 -0
  211. package/src/Scheduler.ts +1154 -0
  212. package/src/SqlTriggerStore.ts +638 -0
  213. package/src/Trigger.ts +84 -0
  214. package/src/TriggerError.ts +129 -0
  215. package/src/TriggerStore.ts +514 -0
  216. package/src/Webhook.ts +270 -0
  217. package/src/index.ts +30 -0
  218. package/src/internal/ActiveRuns.ts +83 -0
  219. package/src/internal/DueOccurrences.ts +101 -0
  220. package/src/internal/WallClock.ts +172 -0
  221. package/src/migrations/0001_triggers.ts +43 -0
  222. package/src/migrations/0002_reservation_lease.ts +20 -0
  223. package/src/migrations/0003_heartbeat.ts +24 -0
  224. package/src/migrations/0004_fire_run_index.ts +21 -0
  225. package/src/migrations/index.ts +40 -0
  226. package/src/test/TestTriggers.ts +563 -0
@@ -0,0 +1,248 @@
1
+ /**
2
+ * Durable, Clock-driven trigger scheduling.
3
+ *
4
+ * @see packages/smithers/agent/triggers/docs/api.md
5
+ *
6
+ * @since 0.1.0
7
+ */
8
+ import * as Control from "@smthrs/control/Control";
9
+ import * as Context from "effect/Context";
10
+ import * as Duration from "effect/Duration";
11
+ import * as Effect from "effect/Effect";
12
+ import * as Layer from "effect/Layer";
13
+ import type * as Scope from "effect/Scope";
14
+ import { TriggerError } from "./TriggerError.ts";
15
+ import { TriggerStore } from "./TriggerStore.ts";
16
+ /**
17
+ * Arguments used to launch one scheduled flow.
18
+ *
19
+ * @category models
20
+ * @since 0.1.0
21
+ */
22
+ export interface StartInput {
23
+ readonly flowId: string;
24
+ readonly input: unknown;
25
+ readonly idempotencyKey: string;
26
+ }
27
+ /**
28
+ * What the runtime says about one scheduled run.
29
+ *
30
+ * `active` keeps the monitor polling. `completed` is the only state recorded as
31
+ * a completed occurrence; `failed`, `cancelled`, and `missing` (the runtime has
32
+ * no record of the run) are recorded as `failed` with the state in the error.
33
+ *
34
+ * @category models
35
+ * @since 1.0.0-rc.1
36
+ */
37
+ export type RunState = "active" | "completed" | "failed" | "cancelled" | "missing";
38
+ /**
39
+ * Runtime operations required by the scheduler.
40
+ *
41
+ * @category models
42
+ * @since 0.1.0
43
+ */
44
+ export interface RunnerService {
45
+ readonly start: (input: StartInput) => Effect.Effect<string, TriggerError>;
46
+ readonly inspect: (runId: string) => Effect.Effect<RunState, TriggerError>;
47
+ readonly cancel: (runId: string) => Effect.Effect<void, TriggerError>;
48
+ }
49
+ declare const Runner_base: Context.ServiceClass<Runner, "flows/triggers/Scheduler/Runner", RunnerService>;
50
+ /**
51
+ * Injectable scheduled-run launcher.
52
+ *
53
+ * Constructed with {@link makeRunner}, {@link makeNoopRunner}, or
54
+ * {@link layerNoopRunner}; the tag itself carries no constructors, so there is
55
+ * one spelling of each and the module's own `make`/`makeNoop` can only mean
56
+ * the scheduler.
57
+ *
58
+ * @category services
59
+ * @since 0.1.0
60
+ */
61
+ export declare class Runner extends Runner_base {
62
+ }
63
+ /**
64
+ * Constructs a scheduled-run launcher.
65
+ *
66
+ * @category constructors
67
+ * @since 0.1.0
68
+ */
69
+ export declare const makeRunner: (implementation: RunnerService) => RunnerService;
70
+ /**
71
+ * Constructs a launcher that returns the idempotency key as a terminal run.
72
+ *
73
+ * @category constructors
74
+ * @since 0.1.0
75
+ */
76
+ export declare const makeNoopRunner: (overrides?: Partial<RunnerService>) => RunnerService;
77
+ /**
78
+ * Provides the terminal no-op launcher.
79
+ *
80
+ * @category layers
81
+ * @since 0.1.0
82
+ */
83
+ export declare const layerNoopRunner: (overrides?: Partial<RunnerService>) => Layer.Layer<Runner>;
84
+ /**
85
+ * How many times a parked plan is re-offered before the launch is abandoned.
86
+ *
87
+ * The delay doubles from one second, so the eighth attempt lands a little over
88
+ * two minutes in. A plan nobody approves used to be re-offered once a second
89
+ * for the life of the scope while the launch reservation behind it expired.
90
+ *
91
+ * @category constants
92
+ * @since 0.1.0
93
+ */
94
+ export declare const parkedAttempts = 8;
95
+ /**
96
+ * Runner layer backed by the authoritative Control plan/run/list/cancel API.
97
+ *
98
+ * A parked plan waits for approval and retries the same idempotent run request
99
+ * a bounded number of times; this adapter never approves it or reconstructs an
100
+ * execution envelope.
101
+ *
102
+ * @category layers
103
+ * @since 0.1.0
104
+ */
105
+ export declare const layerControlRunner: Layer.Layer<Runner, never, Control.Control>;
106
+ /**
107
+ * Scheduler timing configuration.
108
+ *
109
+ * @category models
110
+ * @since 0.1.0
111
+ */
112
+ export interface Options {
113
+ readonly pollInterval?: Duration.Input | undefined;
114
+ readonly runPollInterval?: Duration.Input | undefined;
115
+ /**
116
+ * How many triggers one tick processes at the same time. Defaults to
117
+ * {@link defaultConcurrency}. A tick never waits for a launch: the claim is
118
+ * durable and the launch runs on its own fiber.
119
+ */
120
+ readonly concurrency?: number | undefined;
121
+ /**
122
+ * How long one `Runner.start` may take before the launch is abandoned with
123
+ * `runner_timeout`. Defaults to four minutes: above the Control adapter's
124
+ * bounded parked-approval retries and below the five-minute reservation
125
+ * lease, so an abandoned launch still owns its reservation and re-arms the
126
+ * occurrence itself. The next tick retries it under the same idempotency
127
+ * key. A deadline above the lease is allowed; a start that answers after
128
+ * its lease is reconciled as a late launch.
129
+ */
130
+ readonly startTimeout?: Duration.Input | undefined;
131
+ /**
132
+ * How long one `Runner.inspect` may take. Defaults to thirty seconds. A
133
+ * timeout is an inspection failure: the monitor retries and then detaches,
134
+ * retaining the durable owner.
135
+ */
136
+ readonly inspectTimeout?: Duration.Input | undefined;
137
+ /**
138
+ * How long one `Runner.cancel` may take. Defaults to thirty seconds. A
139
+ * timeout fails the supersede, which restores the prior run as active and
140
+ * queues the replacement.
141
+ */
142
+ readonly cancelTimeout?: Duration.Input | undefined;
143
+ /**
144
+ * The name this scheduler records its heartbeat under, so a listing can say
145
+ * which host last polled the store. Defaults to {@link defaultHost}.
146
+ */
147
+ readonly host?: string | undefined;
148
+ /**
149
+ * How long settled fire ledger rows are kept. Defaults to
150
+ * {@link defaultFireRetention}. A tick deletes older settled rows through
151
+ * `TriggerStore.pruneFires` at most once an hour; a failed prune is logged
152
+ * and the tick goes on.
153
+ */
154
+ readonly fireRetention?: Duration.Input | undefined;
155
+ }
156
+ /**
157
+ * The heartbeat host name a scheduler records under when its options name
158
+ * none.
159
+ *
160
+ * @category constants
161
+ * @since 1.0.0-rc.0
162
+ */
163
+ export declare const defaultHost = "local";
164
+ /**
165
+ * How many triggers one tick processes at the same time when its options name
166
+ * no `concurrency`.
167
+ *
168
+ * @category constants
169
+ * @since 1.0.0-rc.0
170
+ */
171
+ export declare const defaultConcurrency = 4;
172
+ /**
173
+ * How long settled fire ledger rows are kept when the options name no
174
+ * `fireRetention`: thirty days.
175
+ *
176
+ * @category constants
177
+ * @since 1.0.0-rc.1
178
+ */
179
+ export declare const defaultFireRetention: Duration.Duration;
180
+ /**
181
+ * Histogram boundaries, in milliseconds, of `smithers.triggers.tick_duration_ms`
182
+ * and `smithers.triggers.launch_duration_ms`.
183
+ *
184
+ * @category constants
185
+ * @since 1.0.0-rc.1
186
+ */
187
+ export declare const durationBoundaries: ReadonlyArray<number>;
188
+ /**
189
+ * Scheduler operations.
190
+ *
191
+ * @category models
192
+ * @since 0.1.0
193
+ */
194
+ export interface Service {
195
+ readonly runOnce: Effect.Effect<void, TriggerError>;
196
+ }
197
+ declare const Scheduler_base: Context.ServiceClass<Scheduler, "flows/triggers/Scheduler", Service>;
198
+ /**
199
+ * The live trigger scheduler.
200
+ *
201
+ * @category services
202
+ * @since 0.1.0
203
+ */
204
+ export declare class Scheduler extends Scheduler_base {
205
+ }
206
+ /** Stable Control request identity for one manual or scheduled occurrence.
207
+ * @category constructors
208
+ * @since 0.1.0
209
+ */
210
+ export declare const idempotencyKey: (triggerId: string, occurrence: number) => string;
211
+ /**
212
+ * Constructs a scheduler service in the current Scope.
213
+ *
214
+ * @category constructors
215
+ * @since 0.1.0
216
+ */
217
+ export declare const make: (options?: Options) => Effect.Effect<Service, TriggerError, Runner | Scope.Scope | TriggerStore>;
218
+ /**
219
+ * Constructs a scheduler that performs no work.
220
+ *
221
+ * @category constructors
222
+ * @since 0.1.0
223
+ */
224
+ export declare const makeNoop: () => Service;
225
+ /**
226
+ * Scoped scheduler layer. Its supervisor sleeps only through the Effect Clock,
227
+ * so scope closure interrupts the poll loop and detaches every run monitor.
228
+ * Detaching is all it does: the runs themselves are durable and keep going,
229
+ * and the next incarnation re-attaches to them from the store.
230
+ *
231
+ * The loop recovers from the whole cause rather than the typed error alone. A
232
+ * defect raised anywhere under a tick, which `Effect.catch` by contract leaves
233
+ * alone, would otherwise kill this fiber and stop every trigger in the process
234
+ * with nothing written down.
235
+ *
236
+ * @category layers
237
+ * @since 0.1.0
238
+ */
239
+ export declare const layer: (options?: Options) => Layer.Layer<Scheduler, TriggerError, Runner | TriggerStore>;
240
+ /**
241
+ * Provides an inert scheduler without allocating a supervisor fiber.
242
+ *
243
+ * @category layers
244
+ * @since 0.1.0
245
+ */
246
+ export declare const layerNoop: Layer.Layer<Scheduler>;
247
+ export {};
248
+ //# sourceMappingURL=Scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Scheduler.d.ts","sourceRoot":"","sources":["../../src/Scheduler.ts"],"names":[],"mappings":"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"}