/** * @since 1.0.0 */ import type * as Either from "@effect/data/Either"; import type * as Option from "@effect/data/Option"; import type * as STM from "@effect/stm/STM"; /** * @since 1.0.0 * @category symbols */ export declare const TDeferredTypeId: unique symbol; /** * @since 1.0.0 * @category symbols */ export type TDeferredTypeId = typeof TDeferredTypeId; /** * @since 1.0.0 * @category models */ export interface TDeferred extends TDeferred.Variance { } /** * @since 1.0.0 */ export declare namespace TDeferred { /** * @since 1.0.0 * @category models */ interface Variance { readonly [TDeferredTypeId]: { readonly _E: (_: never) => E; readonly _A: (_: never) => A; }; } } declare const _await: (self: TDeferred) => STM.STM; export { /** * @since 1.0.0 * @category getters */ _await as await }; /** * @since 1.0.0 * @category mutations */ export declare const done: { (either: Either.Either): (self: TDeferred) => STM.STM; (self: TDeferred, either: Either.Either): STM.STM; }; /** * @since 1.0.0 * @category mutations */ export declare const fail: { (error: E): (self: TDeferred) => STM.STM; (self: TDeferred, error: E): STM.STM; }; /** * @since 1.0.0 * @category constructors */ export declare const make: () => STM.STM>; /** * @since 1.0.0 * @category getters */ export declare const poll: (self: TDeferred) => STM.STM>>; /** * @since 1.0.0 * @category mutations */ export declare const succeed: { (value: A): (self: TDeferred) => STM.STM; (self: TDeferred, value: A): STM.STM; }; //# sourceMappingURL=TDeferred.d.ts.map