import { Ref } from "@confect/core"; import type { Scheduler as ConvexScheduler } from "convex/server"; import type { GenericId } from "convex/values"; import * as Context from "effect/Context"; import * as DateTime from "effect/DateTime"; import * as Duration from "effect/Duration"; import * as Effect from "effect/Effect"; import * as Layer from "effect/Layer"; export declare const Scheduler: Context.Service<{ cancel: (id: GenericId<"_scheduled_functions">) => Effect.Effect; runAfter: (delay: Duration.Duration, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; runAt: (dateTime: DateTime.DateTime, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; }, { cancel: (id: GenericId<"_scheduled_functions">) => Effect.Effect; runAfter: (delay: Duration.Duration, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; runAt: (dateTime: DateTime.DateTime, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; }>; export type Scheduler = typeof Scheduler.Identifier; export declare const layer: (scheduler: ConvexScheduler) => Layer.Layer<{ cancel: (id: GenericId<"_scheduled_functions">) => Effect.Effect; runAfter: (delay: Duration.Duration, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; runAt: (dateTime: DateTime.DateTime, ref: Ref_, ...args: Ref.OptionalArgs) => Effect.Effect, never, never>; }, never, never>; //# sourceMappingURL=Scheduler.d.ts.map