import type { Container , Slice } from '../context' ; import type { Clock , Timer } from '../timing' ; export class Pre { #container : Container ; #clock : Clock ; constructor ( container , clock ) { this . #container = container ; this . #clock = clock ; } param ctx param defaultValue returns readonly inject = < T > ( ctx , defaultValue ? ) => { ctx ( this . #container . sliceMap , defaultValue ) ; return this ; } ; param timer returns readonly record = ( timer ) => { timer ( this . #clock . store ) ; return this ; } ; }