import * as Effect from "effect/Effect"; import * as Schedule from "effect/Schedule"; declare const PredicateFailed_base: new = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & { readonly _tag: "PredicateFailed"; } & Readonly; export declare class PredicateFailed extends PredicateFailed_base<{ message: string; actual: unknown; }> { } export declare const isPredicateFailed: (e: unknown) => e is PredicateFailed; /** * Retries an effect until a predicate is met. * @param input - The input to the poll function. * @param input.description - The description of what is being polled; used in the error message if the predicate fails. * @param input.effect - The effect to execute until the predicate is met. * @param input.predicate - The predicate to check if the effect has met the desired state. * @param input.schedule - The schedule to use for retries; defaults to every 3 seconds. * @param input.times - The maximum number of times to poll; defaults to 50. * @returns The value that satisfies the predicate. */ export declare const poll: (input: { description?: string; effect: Effect.Effect; predicate: (value: A) => boolean; schedule?: Schedule.Schedule; }) => Effect.Effect; export {}; //# sourceMappingURL=poll.d.ts.map