import type { Container, Slice, SliceType } from '../context'; import type { Clock, TimerType } from '../timer'; import { Inspector } from '../inspector'; import type { Meta } from '../inspector'; export declare class Ctx { #private; constructor(container: Container, clock: Clock, meta?: Meta); get meta(): Meta | undefined; get inspector(): Inspector | undefined; readonly produce: (meta?: Meta) => Ctx; readonly inject: (sliceType: SliceType, value?: T | undefined) => this; readonly remove: (sliceType: N | SliceType) => this; readonly record: (timerType: TimerType) => this; readonly clearTimer: (timerType: TimerType) => this; readonly isInjected: (sliceType: N | SliceType) => boolean; readonly isRecorded: (timerType: TimerType) => boolean; readonly use: (sliceType: N | SliceType) => Slice; readonly get: (sliceType: N | SliceType) => T; readonly set: (sliceType: N | SliceType, value: T) => void; readonly update: (sliceType: N | SliceType, updater: (prev: T) => T) => void; readonly timer: (timer: TimerType) => import("../timer").Timer; readonly done: (timer: TimerType) => void; readonly wait: (timer: TimerType) => Promise; readonly waitTimers: (slice: SliceType) => Promise; } //# sourceMappingURL=ctx.d.ts.map