Skip to content
Effect Days 2026 Get your ticket

Activity

9 exports Added in v1.0.0 Source

Attempts

Signature

declare class CurrentAttempt extends any {
constructor();
}

Constructors

make

Added in v1.0.0 Source

Signature

declare function make<R, Success extends Any = Void, Error extends All = Never>(options: {
readonly error?: Error;
readonly execute: Effect<Success["Type"], Error["Type"], R>;
readonly interruptRetryPolicy?: Schedule<any, Cause<unknown>, never, never>;
readonly name: string;
readonly success?: Success;
}): Activity<Success, Error, Exclude<R, WorkflowEngine | WorkflowInstance | Scope>>

Error Handling

retry

Added in v1.0.0 Source

Signature

declare const retry: {
<E, O extends NoExcessProperties<Omit<Options<E>, "schedule">, O>>(options: O): <A, R>(self: Effect<A, E, R>) => Effect<A, O extends {
schedule: Schedule<infer _O, infer _I, infer _E1, infer _R>;
} ? E : O extends {
times: number;
} ? E : O extends {
until: Predicate.Refinement<E, infer E2>;
} ? E2 : O extends {
while: Predicate.Refinement<E, infer E2>;
} ? Exclude<E, E2> : E | O extends {
schedule: Schedule<infer _O, infer _I, infer E, infer _R>;
} ? E : never | O extends {
while: (...args: Array<any>) => Effect<infer _A, infer E, infer _R>;
} ? E : never | O extends {
until: (...args: Array<any>) => Effect<infer _A, infer E, infer _R>;
} ? E : never, R | O extends {
schedule: Schedule<infer _O, infer _I, infer _E1, infer R>;
} ? R : never | O extends {
while: (...args: Array<any>) => Effect<infer _A, infer _E, infer R>;
} ? R : never | O extends {
until: (...args: Array<any>) => Effect<infer _A, infer _E, infer R>;
} ? R : never>;
<A, E, R, O extends NoExcessProperties<Omit<Options<E>, "schedule">, O>>(self: Effect<A, E, R>, options: O): Effect<A, O extends {
schedule: Schedule<infer _O, infer _I, infer _E1, infer _R>;
} ? E : O extends {
times: number;
} ? E : O extends {
until: Predicate.Refinement<E, infer E2>;
} ? E2 : O extends {
while: Predicate.Refinement<E, infer E2>;
} ? Exclude<E, E2> : E | O extends {
schedule: Schedule<infer _O, infer _I, infer E, infer _R>;
} ? E : never | O extends {
while: (...args: Array<any>) => Effect<infer _A, infer E, infer _R>;
} ? E : never | O extends {
until: (...args: Array<any>) => Effect<infer _A, infer E, infer _R>;
} ? E : never, R | O extends {
schedule: Schedule<infer _O, infer _I, infer _E1, infer R>;
} ? R : never | O extends {
while: (...args: Array<any>) => Effect<infer _A, infer _E, infer R>;
} ? R : never | O extends {
until: (...args: Array<any>) => Effect<infer _A, infer _E, infer R>;
} ? R : never>;
}

Idempotency

Signature

declare const idempotencyKey: (name: string, options?: {
readonly includeAttempt?: boolean;
}) => Effect.Effect<string, never, WorkflowInstance>

Models

Activity interface

Added in v1.0.0 Source

Signature

interface Activity<Success extends Schema.Schema.Any = typeof Schema.Void, Error extends Schema.Schema.All = typeof Schema.Never, R = never> extends Effect<Success["Type"], Error["Type"], Success["Context"] | Error["Context"] | R | WorkflowEngine | WorkflowInstance> {
readonly [TypeId]: typeof TypeId;
readonly errorSchema: Error;
readonly execute: Effect<Success["Type"], Error["Type"], R | WorkflowEngine | WorkflowInstance | Success["Context"] | Error["Context"] | Scope>;
readonly executeEncoded: Effect<Success["Encoded"], Error["Encoded"], R | WorkflowEngine | WorkflowInstance | Success["Context"] | Error["Context"] | Scope>;
readonly exitSchema: any;
readonly name: string;
readonly successSchema: Success;
}

Any interface

Added in v1.0.0 Source

Signature

interface Any {
readonly [TypeId]: typeof TypeId;
readonly errorSchema: All;
readonly execute: Effect<any, any, any>;
readonly executeEncoded: Effect<any, any, any>;
readonly name: string;
readonly successSchema: Any;
}

Racing

raceAll

Added in v1.0.0 Source

Signature

declare function raceAll<Activities extends readonly [Any, Any]>(name: string, activities: Activities): Effect<Activities[number] extends Activity<_A, _E, _R> ? _A["Type"] : never, Activities[number] extends Activity<_A, _E, _R> ? _E["Type"] : never, WorkflowEngine | WorkflowInstance | Activities[number] extends Activity<Success, Error, R> ? R | Success["Context"] | Error["Context"] : never>

Symbols

TypeId

Added in v1.0.0 Source

Signature

declare const TypeId: unique symbol

TypeId type

Added in v1.0.0 Source

Signature

type TypeId = typeof TypeId