import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Layer } from "@effect/core/io/Layer/definition";
/**
 * Lazily constructs a layer. This is useful to avoid infinite recursion when
 * creating layers that refer to themselves.
 * @tsplus static ets/Layer/Ops suspend
 * @tsplus location "@effect/core/io/Layer/operations/suspend"
 */
export declare function suspend<RIn, E, ROut>(f: LazyArg<Layer<RIn, E, ROut>>): Layer<RIn, E, ROut>;
//# sourceMappingURL=suspend.d.ts.map