import { Stream } from "@effect/core/stream/Stream/definition";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
import { Channel } from "@effect/core/stream/Channel/definition/base";
/**
 * If this stream is empty, produce the specified element or chunk of elements,
 * or switch to the specified stream.
 * @tsplus fluent ets/Stream defaultIfEmpty
 * @tsplus location "@effect/core/stream/Stream/operations/defaultIfEmpty"
 */
export declare function defaultIfEmpty_<R, R1, E, E1, A, A1>(self: Stream<R, E, A>, stream: Stream<R1, E1, A1>): Stream<R | R1, E | E1, A | A1>;
export declare function defaultIfEmpty_<R, E, A, A1>(self: Stream<R, E, A>, chunk: Chunk<A1>): Stream<R, E, A | A1>;
export declare function defaultIfEmpty_<R, E, A, A1>(self: Stream<R, E, A>, a: A1): Stream<R, E, A | A1>;
/**
 * If this stream is empty, produce the specified element or chunk of elements,
 * or switch to the specified stream.
 * @tsplus static ets/Stream/Aspects defaultIfEmpty
 * @tsplus pipeable ets/Stream defaultIfEmpty
 * @tsplus location "@effect/core/stream/Stream/operations/defaultIfEmpty"
 */
export declare const defaultIfEmpty: <R1, E1, A1>(stream: import("../definition").Stream<R1, E1, A1>) => <R, E, A>(self: import("../definition").Stream<R, E, A>) => import("../definition").Stream<R | R1, E | E1, A | A1>;
//# sourceMappingURL=defaultIfEmpty.d.ts.map