import { LazyArg } from "@tsplus/stdlib/data/Function";
import { Maybe } from "@tsplus/stdlib/data/Maybe/definition";
import { Tuple } from "@tsplus/stdlib/data/Tuple/definition";
import { Stream } from "@effect/core/stream/Stream/definition";
/**
 * Creates a stream by peeling off the "layers" of a value of type `S`.
 * @tsplus static ets/Stream/Ops unfold
 * @tsplus location "@effect/core/stream/Stream/operations/unfold"
 */
export declare function unfold<S, A>(s: LazyArg<S>, f: (s: S) => Maybe<Tuple<[A, S]>>, __tsplusTrace?: string): Stream<never, never, A>;
//# sourceMappingURL=unfold.d.ts.map