import { TPriorityQueue } from "@effect/core/stm/TPriorityQueue/definition";
import { USTM } from "@effect/core/stm/STM/definition/base";
import { Chunk } from "@tsplus/stdlib/collections/Chunk/definition";
import { Tuple } from "@tsplus/stdlib/data/Tuple/definition";
/**
 * Takes up to the specified maximum number of elements from the queue.
 * @tsplus fluent ets/TPriorityQueue takeUpTo
 * @tsplus location "@effect/core/stm/TPriorityQueue/operations/takeUpTo"
 */
export declare function takeUpTo_<A>(self: TPriorityQueue<A>, n: number): USTM<Chunk<A>>;
/**
 * Takes up to the specified maximum number of elements from the queue.
 * @tsplus static ets/TPriorityQueue takeUpTo
 * @tsplus pipeable ets/TPriorityQueue takeUpTo
 * @tsplus location "@effect/core/stm/TPriorityQueue/operations/takeUpTo"
 */
export declare const takeUpTo: (n: number) => <A>(self: import("../definition").TPriorityQueue<A>) => import("../../STM").USTM<import("@tsplus/stdlib/collections/Chunk").Chunk<A>>;
//# sourceMappingURL=takeUpTo.d.ts.map