import { TQueue } from "@effect/core/stm/TQueue/definition";
import { USTM } from "@effect/core/stm/STM/definition/base";
/**
 * Drops elements from the queue while they do not satisfy the predicate,
 * taking and returning the first element that does satisfy the predicate.
 * Retries if no elements satisfy the predicate.
 * @tsplus fluent ets/TQueue seek
 * @tsplus location "@effect/core/stm/TQueue/operations/seek"
 */
export declare function seek_<A>(self: TQueue<A>, f: (a: A) => boolean): USTM<A>;
/**
 * Drops elements from the queue while they do not satisfy the predicate,
 * taking and returning the first element that does satisfy the predicate.
 * Retries if no elements satisfy the predicate.
 * @tsplus static ets/TQueue/Aspects seek
 * @tsplus pipeable ets/TQueue seek
 * @tsplus location "@effect/core/stm/TQueue/operations/seek"
 */
export declare const seek: <A>(f: (a: A) => boolean) => (self: import("../definition").TQueue<A>) => import("../../STM").USTM<A>;
//# sourceMappingURL=seek.d.ts.map