effect-cf 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/{Artifacts-DcoXcRP5.d.mts → Artifacts-DnHQA-Ax.d.mts} +42 -25
  3. package/dist/{Artifacts-BhWrdyqX.mjs → Artifacts-rq3hUKQE.mjs} +46 -30
  4. package/dist/{Binding-COCtoJXa.d.mts → Binding-xJJJPmiD.d.mts} +6 -5
  5. package/dist/ComputerArtifacts.d.mts +1 -1
  6. package/dist/ComputerArtifacts.mjs +9 -9
  7. package/dist/ComputerWorkspace.d.mts +5 -5
  8. package/dist/ComputerWorkspace.mjs +107 -75
  9. package/dist/ComputerWorkspaceHost.d.mts +1 -1
  10. package/dist/ComputerWorkspaceHost.mjs +18 -16
  11. package/dist/{DurableObjectState-biHrHwrh.d.mts → DurableObjectState-B3uFY1eM.d.mts} +85 -62
  12. package/dist/{DurableObjectState-Dux8KfjG.mjs → DurableObjectState-BjkK2kwH.mjs} +3 -3
  13. package/dist/{ErrorMessage-_lg53p3W.mjs → ErrorMessage-BM0K-Nik.mjs} +1 -4
  14. package/dist/{Hyperdrive-6p59yyVk.d.mts → Hyperdrive-z-9fFz15.d.mts} +2 -2
  15. package/dist/HyperdrivePg.d.mts +2 -2
  16. package/dist/Vitest.d.mts +6 -5
  17. package/dist/Vitest.mjs +2 -2
  18. package/dist/{WorkflowBinding-zlRPCXVf.d.mts → WorkflowBinding-wZ-yGHow.d.mts} +5 -10
  19. package/dist/index.d.mts +82 -60
  20. package/dist/index.mjs +268 -170
  21. package/package.json +1 -1
  22. package/src/AiGateway.ts +62 -7
  23. package/src/AnalyticsEngine.ts +17 -13
  24. package/src/Artifacts.ts +111 -47
  25. package/src/Binding.ts +34 -23
  26. package/src/BrowserRendering.ts +72 -33
  27. package/src/CloudflareOtlp.ts +8 -5
  28. package/src/ComputerArtifacts.ts +17 -9
  29. package/src/ComputerWorkspace.ts +202 -98
  30. package/src/ComputerWorkspaceHost.ts +55 -27
  31. package/src/ContainerNamespace.ts +8 -9
  32. package/src/D1.ts +8 -14
  33. package/src/DurableObject.ts +27 -11
  34. package/src/DurableObjectAlarm.ts +17 -5
  35. package/src/DurableObjectDefinition.ts +89 -72
  36. package/src/DurableObjectNamespace.ts +26 -12
  37. package/src/DurableObjectRpcWebSocket.ts +9 -10
  38. package/src/DurableObjectState.ts +1 -0
  39. package/src/DurableObjectStorage.ts +5 -2
  40. package/src/DurableObjectWebSocket.ts +4 -1
  41. package/src/Email.ts +26 -25
  42. package/src/Hyperdrive.ts +4 -10
  43. package/src/Images.ts +12 -14
  44. package/src/Kv.ts +15 -17
  45. package/src/Queue.ts +2 -1
  46. package/src/QueueBinding.ts +7 -12
  47. package/src/QueueDefinition.ts +7 -2
  48. package/src/R2.ts +33 -24
  49. package/src/Rpc.ts +15 -21
  50. package/src/RpcDefinition.ts +33 -38
  51. package/src/ServiceBinding.ts +26 -8
  52. package/src/Vectorize.ts +45 -18
  53. package/src/Vitest.ts +9 -3
  54. package/src/WebTransport.ts +11 -5
  55. package/src/Worker.ts +91 -21
  56. package/src/WorkerDefinition.ts +143 -63
  57. package/src/WorkersAi.ts +50 -28
  58. package/src/Workflow.ts +66 -13
  59. package/src/WorkflowBinding.ts +18 -25
  60. package/src/WorkflowDefinition.ts +4 -2
  61. package/src/internal/Entrypoint.ts +29 -13
  62. package/src/internal/ErrorMessage.ts +7 -6
  63. package/src/internal/RpcInvocation.ts +34 -11
  64. package/src/internal/Runtime.ts +33 -22
  65. package/src/internal/WorkerContext.ts +3 -3
@@ -1,5 +1,5 @@
1
- import { c as WorkerEnvironment, r as BindingValidationError, t as BindingNotFoundError } from "./Binding-COCtoJXa.mjs";
2
- import { x as ServiceFreeSchema } from "./DurableObjectState-biHrHwrh.mjs";
1
+ import { c as WorkerEnvironment, r as BindingValidationError, t as BindingNotFoundError } from "./Binding-xJJJPmiD.mjs";
2
+ import { x as ServiceFreeSchema } from "./DurableObjectState-B3uFY1eM.mjs";
3
3
  import { Context, Effect, Option, Schema } from "effect";
4
4
  declare namespace WorkflowBinding_d_exports {
5
5
  export { WorkflowBindingClient, WorkflowBindingDefinition, WorkflowInstance, WorkflowInstanceCreateBatchOptions, WorkflowInstanceCreateOptions, WorkflowInstanceEvent, WorkflowInstanceRestartOptions, WorkflowInstanceStatus, WorkflowInstanceStatusName, WorkflowOperationError, WorkflowResultDecodeError, isWorkflow, layer, makeClient };
@@ -8,13 +8,7 @@ type WorkflowInstanceCreateOptions<Payload> = Omit<CloudflareWorkflowInstanceCre
8
8
  type WorkflowInstanceCreateBatchOptions<Payload, EncodedPayload = unknown> = ReadonlyArray<{
9
9
  readonly payload: Payload;
10
10
  } & WorkflowInstanceCreateOptions<EncodedPayload>>;
11
- interface WorkflowInstanceRestartOptions {
12
- readonly from?: {
13
- readonly name?: string;
14
- readonly count?: number;
15
- readonly type?: string;
16
- };
17
- }
11
+ type WorkflowInstanceRestartOptions = CloudflareWorkflowInstanceRestartOptions;
18
12
  type WorkflowInstanceStatusName = CloudflareInstanceStatus["status"];
19
13
  interface WorkflowInstanceStatus<Result> {
20
14
  readonly status: WorkflowInstanceStatusName;
@@ -72,7 +66,8 @@ declare class WorkflowResultDecodeError extends WorkflowResultDecodeError_base<{
72
66
  }> {
73
67
  get message(): string;
74
68
  }
75
- declare const isWorkflow: <Payload>(value: unknown) => value is CloudflareWorkflow<Payload>;
69
+ type WorkflowBindingValue = Schema.Schema.Type<typeof Schema.Unknown>;
70
+ declare const isWorkflow: <Payload>(value: WorkflowBindingValue) => value is CloudflareWorkflow<Payload>;
76
71
  declare const makeClient: <Payload extends ServiceFreeSchema, Result extends ServiceFreeSchema>(definition: WorkflowBindingDefinition<Payload, Result>) => ((workflow: CloudflareWorkflow<Schema.Codec.Encoded<Payload>>) => WorkflowBindingClient<Payload, Result>);
77
72
  declare const layer: <Self, Payload extends ServiceFreeSchema, Result extends ServiceFreeSchema>(tag: Context.Service<Self, WorkflowBindingClient<Payload, Result>>, definition: WorkflowBindingDefinition<Payload, Result>) => import("effect/Layer").Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
78
73
  //#endregion
package/dist/index.d.mts CHANGED
@@ -1,11 +1,11 @@
1
- import { a as Environment_d_exports, c as WorkerEnvironment, i as Binding_d_exports, n as BindingService, o as WorkerConfig, r as BindingValidationError, s as WorkerEnv, t as BindingNotFoundError } from "./Binding-COCtoJXa.mjs";
2
- import { l as Artifacts_d_exports } from "./Artifacts-DcoXcRP5.mjs";
3
- import { C as Rpc_d_exports, D as StorageOperationError, E as DurableObjectStorage_d_exports, S as Provider, T as DurableWebSocket, _ as Definition$4, a as NativeRequest, b as RpcDefinition_d_exports, c as WorkerDefinition_d_exports, d as AsyncMethodCloudflareReturn, f as AsyncMethodKey, g as QueueBinding_d_exports, h as QueueDefinition_d_exports, i as ExecutionContext, l as ServiceBinding_d_exports, m as Queue_d_exports, o as WorkerContext, p as AsyncMethodSuccess, r as DurableObjectState_d_exports, s as Worker_d_exports, t as DurableObjectState, u as AsyncMethodArgs, v as Method$2, w as DurableObjectWebSocket_d_exports, x as ServiceFreeSchema$1, y as ReservedMethodName$2 } from "./DurableObjectState-biHrHwrh.mjs";
4
- import { t as Hyperdrive_d_exports } from "./Hyperdrive-6p59yyVk.mjs";
5
- import { a as WorkflowInstanceCreateOptions, i as WorkflowInstanceCreateBatchOptions, n as WorkflowBinding_d_exports, r as WorkflowInstance, s as WorkflowOperationError, t as WorkflowBindingClient } from "./WorkflowBinding-zlRPCXVf.mjs";
6
- import { Config, Context, Data, DateTime, Duration, Effect, Layer, Option, Redacted, Schema, Scope } from "effect";
1
+ import { a as Environment_d_exports, c as WorkerEnvironment, i as Binding_d_exports, n as BindingService, o as WorkerConfig, r as BindingValidationError, s as WorkerEnv, t as BindingNotFoundError } from "./Binding-xJJJPmiD.mjs";
2
+ import { l as Artifacts_d_exports } from "./Artifacts-DnHQA-Ax.mjs";
3
+ import { C as Rpc_d_exports, D as StorageOperationError, E as DurableObjectStorage_d_exports, S as Provider, T as DurableWebSocket, _ as Definition$4, a as NativeRequest, b as RpcDefinition_d_exports, c as WorkerDefinition_d_exports, d as AsyncMethodCloudflareReturn, f as AsyncMethodKey, g as QueueBinding_d_exports, h as QueueDefinition_d_exports, i as ExecutionContext, l as ServiceBinding_d_exports, m as Queue_d_exports, o as WorkerContext, p as AsyncMethodSuccess, r as DurableObjectState_d_exports, s as Worker_d_exports, t as DurableObjectState, u as AsyncMethodArgs, v as Method$2, w as DurableObjectWebSocket_d_exports, x as ServiceFreeSchema$1, y as ReservedMethodName$2 } from "./DurableObjectState-B3uFY1eM.mjs";
4
+ import { t as Hyperdrive_d_exports } from "./Hyperdrive-z-9fFz15.mjs";
5
+ import { a as WorkflowInstanceCreateOptions, i as WorkflowInstanceCreateBatchOptions, n as WorkflowBinding_d_exports, r as WorkflowInstance, s as WorkflowOperationError, t as WorkflowBindingClient } from "./WorkflowBinding-wZ-yGHow.mjs";
6
+ import { Cause, Config, Context, Data, DateTime, Duration, Effect, Layer, Option, Predicate, Redacted, Schema, Scope } from "effect";
7
7
  import { Headers as Headers$1, HttpClient, HttpClientResponse } from "effect/unstable/http";
8
- import { OtlpExporter } from "effect/unstable/observability";
8
+ import { OtlpExporter, OtlpResource } from "effect/unstable/observability";
9
9
  import { D1Client } from "@effect/sql-d1";
10
10
  import { DurableObject, WorkflowEntrypoint, WorkflowEvent, WorkflowSleepDuration, WorkflowStep, WorkflowStepConfig, WorkflowStepContext, WorkflowStepEvent, WorkflowTimeoutDuration } from "cloudflare:workers";
11
11
  import * as RpcSerialization from "effect/unstable/rpc/RpcSerialization";
@@ -37,10 +37,11 @@ type WorkersAiOptions = AiOptions;
37
37
  type WorkersAiModelsSearchParams = AiModelsSearchParams;
38
38
  type WorkersAiModelsSearchObject = AiModelsSearchObject;
39
39
  type WorkersAiAsyncBatchResponse = AiAsyncBatchResponse;
40
- type WorkersAiEmbeddingInput = AiTextEmbeddingsInput | Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Input | Record<string, unknown>;
40
+ type WorkersAiEmbeddingInput = AiTextEmbeddingsInput | Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Input | Parameters<WorkersAiBinding["run"]>[1];
41
+ declare const embeddingDimensionsKey = "shape";
41
42
  interface WorkersAiEmbeddingResponse {
42
43
  readonly data: ReadonlyArray<ReadonlyArray<number>>;
43
- readonly shape: ReadonlyArray<number>;
44
+ readonly [embeddingDimensionsKey]: ReadonlyArray<number>;
44
45
  }
45
46
  interface WorkersAiClient<ModelList extends AiModelListType = AiModels> {
46
47
  readonly aiGatewayLogId: Effect.Effect<string | null, WorkersAiOperationError>;
@@ -60,7 +61,7 @@ interface WorkersAiClient<ModelList extends AiModelListType = AiModels> {
60
61
  readonly stream: true;
61
62
  }, options?: WorkersAiOptions): Effect.Effect<ReadableStream, WorkersAiOperationError>;
62
63
  <Name extends keyof ModelList>(model: Name, input: ModelList[Name]["inputs"], options?: WorkersAiOptions): Effect.Effect<ModelList[Name]["postProcessedOutputs"], WorkersAiOperationError>;
63
- <Input extends Record<string, unknown>, Output = Record<string, unknown>>(model: string, input: Input, options?: WorkersAiOptions): Effect.Effect<Output, WorkersAiOperationError>;
64
+ <Input extends Parameters<WorkersAiBinding["run"]>[1], Output = Awaited<ReturnType<WorkersAiBinding["run"]>>>(model: string, input: Input, options?: WorkersAiOptions): Effect.Effect<Output, WorkersAiOperationError>;
64
65
  };
65
66
  readonly runEmbedding: <Input extends WorkersAiEmbeddingInput>(model: string, input: Input, options?: WorkersAiOptions) => Effect.Effect<WorkersAiEmbeddingResponse, WorkersAiOperationError>;
66
67
  readonly models: (params?: WorkersAiModelsSearchParams) => Effect.Effect<ReadonlyArray<WorkersAiModelsSearchObject>, WorkersAiOperationError>;
@@ -82,10 +83,11 @@ interface TagClass$12<Self, Id extends string, ModelList extends AiModelListType
82
83
  readonly id: Id;
83
84
  readonly layer: (options: LayerOptions$14) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
84
85
  }
85
- declare const isWorkersAiBinding: (value: unknown) => value is WorkersAiBinding;
86
+ type WorkersAiBindingValue = Schema.Schema.Type<typeof Schema.Unknown>;
87
+ declare const isWorkersAiBinding: (value: WorkersAiBindingValue) => value is WorkersAiBinding;
86
88
  declare const embeddingResponse: (value: {
87
89
  readonly data?: ReadonlyArray<ReadonlyArray<number>>;
88
- readonly shape?: ReadonlyArray<number>;
90
+ readonly [embeddingDimensionsKey]?: ReadonlyArray<number>;
89
91
  }) => WorkersAiEmbeddingResponse;
90
92
  declare const makeClient$11: <ModelList extends AiModelListType = AiModels>(definition: WorkersAiDefinition) => (ai: WorkersAiBinding<ModelList>) => WorkersAiClient<ModelList>;
91
93
  declare const layer$14: <Self, ModelList extends AiModelListType = AiModels>(tag: Context.Service<Self, WorkersAiClient<ModelList>>, definition: WorkersAiDefinition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
@@ -122,6 +124,7 @@ type AiGatewayProvider = NonNullable<Parameters<AiGatewayBinding["getUrl"]>[0]>;
122
124
  type AiGatewayUniversalRequest = Exclude<AiGatewayRunData, ReadonlyArray<unknown>>;
123
125
  type AiGatewayHeaders = NonNullable<AiGatewayUniversalRequest["headers"]>;
124
126
  type AiGatewayRunOptions = Parameters<CloudflareAiGateway["run"]>[1];
127
+ type AiGatewayBindingCandidate = Parameters<typeof isWorkersAiBinding>[0];
125
128
  interface AiGatewayFetchOptions {
126
129
  readonly provider?: AiGatewayProvider;
127
130
  readonly path?: string;
@@ -152,7 +155,7 @@ interface TagClass$11<Self, Id extends string> extends Context.ServiceClass<Self
152
155
  readonly id: Id;
153
156
  readonly layer: (options: LayerOptions$13) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError | AiGatewayOperationError, WorkerEnvironment>;
154
157
  }
155
- declare const isAiGatewayBinding: (value: unknown) => value is WorkersAiBinding;
158
+ declare const isAiGatewayBinding: (value: AiGatewayBindingCandidate) => value is WorkersAiBinding;
156
159
  declare const makeClient$10: (definition: AiGatewayDefinition, gateway: AiGatewayBinding) => {
157
160
  definition: AiGatewayDefinition;
158
161
  run: (data: import("@cloudflare/workers-types").AIGatewayUniversalRequest | readonly import("@cloudflare/workers-types").AIGatewayUniversalRequest[], options?: {
@@ -324,7 +327,7 @@ interface QueryTagClass<Self, Id extends string> extends Context.ServiceClass<Se
324
327
  readonly layerFetchConfig: (config?: Config.Config<AnalyticsEngineQueryDefinition>) => Layer.Layer<Self, Config.ConfigError>;
325
328
  }
326
329
  declare const makeQueryClient: (definition: AnalyticsEngineQueryDefinition) => Effect.Effect<AnalyticsEngineQueryClient, never, HttpClient.HttpClient>;
327
- declare const isAnalyticsEngineDataset: (value: unknown) => value is AnalyticsEngineBinding;
330
+ declare const isAnalyticsEngineDataset: <Candidate>(value: Candidate) => value is Candidate & AnalyticsEngineBinding;
328
331
  declare const makeClient$9: (definition: AnalyticsEngineDefinition, defaults?: AnalyticsEngineWritePolicy) => (dataset: AnalyticsEngineBinding) => AnalyticsEngineClient;
329
332
  declare const queryConfig: (options?: QueryConfigOptions) => Config.Config<{
330
333
  accountId: string;
@@ -341,7 +344,7 @@ declare const makeQuery: <Id extends string>(id: Id) => QueryTagClass<AnalyticsE
341
344
  declare const Tag$11: <Self>() => <Id extends string>(id: Id) => TagClass$10<Self, Id>;
342
345
  declare const QueryTag: <Self>() => <Id extends string>(id: Id) => QueryTagClass<Self, Id>;
343
346
  declare namespace BrowserRendering_d_exports {
344
- export { BrowserRenderingBinding, BrowserRenderingBrowserClient, BrowserRenderingBrowserLike, BrowserRenderingClient, BrowserRenderingConnect, BrowserRenderingDefinition, BrowserRenderingLaunch, BrowserRenderingOperationError, BrowserRenderingPageClient, BrowserRenderingPageLike, BrowserRenderingService, LayerOptions$11 as LayerOptions, Tag$10 as Tag, TagClass$9 as TagClass, isBrowserRenderingBinding, layer$11 as layer, make$10 as make, makeClient$8 as makeClient };
347
+ export { BrowserRenderingBinding, BrowserRenderingBrowserClient, BrowserRenderingBrowserLike, BrowserRenderingClient, BrowserRenderingConnect, BrowserRenderingDefinition, BrowserRenderingExternalResult, BrowserRenderingLaunch, BrowserRenderingMethodOptions, BrowserRenderingOperationError, BrowserRenderingPageClient, BrowserRenderingPageFunction, BrowserRenderingPageLike, BrowserRenderingService, LayerOptions$11 as LayerOptions, Tag$10 as Tag, TagClass$9 as TagClass, isBrowserRenderingBinding, layer$11 as layer, make$10 as make, makeClient$8 as makeClient };
345
348
  }
346
349
  declare const BrowserRenderingOperationError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
347
350
  readonly _tag: "BrowserRenderingOperationError";
@@ -360,6 +363,9 @@ interface BrowserRenderingDefinition {
360
363
  readonly binding: string;
361
364
  }
362
365
  type BrowserRenderingBinding = object;
366
+ interface BrowserRenderingMethodOptions {}
367
+ type BrowserRenderingExternalResult = Awaited<ReturnType<Response["json"]>>;
368
+ type BrowserRenderingPageFunction = string | Function;
363
369
  type BrowserRenderingLaunch<RawBinding, Browser, LaunchOptions = unknown> = (binding: RawBinding, options?: LaunchOptions) => Promise<Browser>;
364
370
  type BrowserRenderingConnect<RawBinding, Browser, ConnectOptions = unknown> = (binding: RawBinding, options?: ConnectOptions) => Promise<Browser>;
365
371
  interface BrowserRenderingBrowserLike<Page = BrowserRenderingPageLike> {
@@ -369,22 +375,22 @@ interface BrowserRenderingBrowserLike<Page = BrowserRenderingPageLike> {
369
375
  readonly version?: () => Promise<string>;
370
376
  }
371
377
  interface BrowserRenderingPageLike {
372
- readonly goto?: (url: string, options?: unknown) => Promise<unknown>;
373
- readonly setContent?: (html: string, options?: unknown) => Promise<void>;
378
+ readonly goto?: (url: string, options?: BrowserRenderingMethodOptions) => Promise<BrowserRenderingExternalResult>;
379
+ readonly setContent?: (html: string, options?: BrowserRenderingMethodOptions) => Promise<void>;
374
380
  readonly content?: () => Promise<string>;
375
- readonly screenshot?: (options?: unknown) => Promise<Uint8Array | string>;
376
- readonly pdf?: (options?: unknown) => Promise<Uint8Array>;
377
- readonly evaluate?: (pageFunction: unknown, ...args: ReadonlyArray<unknown>) => Promise<unknown>;
378
- readonly close?: (options?: unknown) => Promise<void>;
381
+ readonly screenshot?: (options?: BrowserRenderingMethodOptions) => Promise<Uint8Array | string>;
382
+ readonly pdf?: (options?: BrowserRenderingMethodOptions) => Promise<Uint8Array>;
383
+ readonly evaluate?: (pageFunction: BrowserRenderingPageFunction, ...args: ReadonlyArray<unknown>) => Promise<BrowserRenderingExternalResult>;
384
+ readonly close?: (options?: BrowserRenderingMethodOptions) => Promise<void>;
379
385
  }
380
386
  interface BrowserRenderingPageClient<Page extends BrowserRenderingPageLike> {
381
387
  readonly raw: Page;
382
388
  readonly goto: (url: string, options?: Parameters<NonNullable<Page["goto"]>>[1]) => Effect.Effect<Awaited<ReturnType<NonNullable<Page["goto"]>>>, BrowserRenderingOperationError>;
383
389
  readonly setContent: (html: string, options?: Parameters<NonNullable<Page["setContent"]>>[1]) => Effect.Effect<void, BrowserRenderingOperationError>;
384
390
  readonly content: Effect.Effect<string, BrowserRenderingOperationError>;
385
- readonly screenshot: <A = Uint8Array | string>(options?: Parameters<NonNullable<Page["screenshot"]>>[0]) => Effect.Effect<A, BrowserRenderingOperationError>;
386
- readonly pdf: <A = Uint8Array>(options?: Parameters<NonNullable<Page["pdf"]>>[0]) => Effect.Effect<A, BrowserRenderingOperationError>;
387
- readonly evaluate: <A = unknown>(pageFunction: Parameters<NonNullable<Page["evaluate"]>>[0], ...args: ReadonlyArray<unknown>) => Effect.Effect<A, BrowserRenderingOperationError>;
391
+ readonly screenshot: (options?: Parameters<NonNullable<Page["screenshot"]>>[0]) => Effect.Effect<Awaited<ReturnType<NonNullable<Page["screenshot"]>>>, BrowserRenderingOperationError>;
392
+ readonly pdf: (options?: Parameters<NonNullable<Page["pdf"]>>[0]) => Effect.Effect<Awaited<ReturnType<NonNullable<Page["pdf"]>>>, BrowserRenderingOperationError>;
393
+ readonly evaluate: (pageFunction: Parameters<NonNullable<Page["evaluate"]>>[0], ...args: ReadonlyArray<unknown>) => Effect.Effect<Awaited<ReturnType<NonNullable<Page["evaluate"]>>>, BrowserRenderingOperationError>;
388
394
  readonly close: (options?: Parameters<NonNullable<Page["close"]>>[0]) => Effect.Effect<void, BrowserRenderingOperationError>;
389
395
  }
390
396
  interface BrowserRenderingBrowserClient<Browser extends BrowserRenderingBrowserLike<Page>, Page extends BrowserRenderingPageLike> {
@@ -414,7 +420,7 @@ interface TagClass$9<Self, Id extends string> extends Context.ServiceClass<Self,
414
420
  readonly id: Id;
415
421
  readonly layer: (options: LayerOptions$11) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
416
422
  }
417
- declare const isBrowserRenderingBinding: (value: unknown) => value is BrowserRenderingBinding;
423
+ declare const isBrowserRenderingBinding: <Candidate>(value: Candidate) => value is Candidate & BrowserRenderingBinding;
418
424
  declare const makeClient$8: <RawBinding extends BrowserRenderingBinding = BrowserRenderingBinding>(definition: BrowserRenderingDefinition) => (binding: RawBinding) => BrowserRenderingClient<RawBinding>;
419
425
  declare const layer$11: <Self>(tag: Context.Service<Self, BrowserRenderingClient>, definition: BrowserRenderingDefinition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
420
426
  declare const make$10: <Id extends string>(id: Id) => TagClass$9<BrowserRenderingService<Id>, Id>;
@@ -475,6 +481,7 @@ declare const layer$10: Layer.Layer<CacheStorage>;
475
481
  declare namespace CloudflareOtlp_d_exports {
476
482
  export { DurableObjectLayerOptions, LayerOptions$10 as LayerOptions, ResourceOptions, Serialization, Signal, WorkerLayerOptions, layer$9 as layer, layerDurableObject, layerJson, layerProtobuf, layerWorker };
477
483
  }
484
+ type ResourceAttributes = NonNullable<Parameters<typeof OtlpResource.make>[0]["attributes"]>;
478
485
  /** Telemetry signal groups supported by the Cloudflare OTLP layers. */
479
486
  type Signal = "logs" | "traces" | "metrics";
480
487
  /** OTLP payload serialization used by the Effect OTLP exporters. */
@@ -494,7 +501,7 @@ interface ResourceOptions {
494
501
  /** Explicit service version. Takes precedence over OTEL environment variables. */
495
502
  readonly serviceVersion?: string;
496
503
  /** Additional resource attributes attached to exported telemetry. */
497
- readonly attributes?: Record<string, unknown>;
504
+ readonly attributes?: ResourceAttributes;
498
505
  }
499
506
  /** Options shared by all Cloudflare OTLP telemetry layers. */
500
507
  interface LayerOptions$10 {
@@ -707,7 +714,7 @@ interface TagClass$8<Self, Id extends string, Namespace extends ContainerNamespa
707
714
  readonly id: Id;
708
715
  readonly layer: (options: LayerOptions$9) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
709
716
  }
710
- declare const isContainerNamespaceResource: (value: unknown) => value is ContainerNamespaceResource;
717
+ declare const isContainerNamespaceResource: <Candidate>(value: Candidate) => value is Candidate & ContainerNamespaceResource;
711
718
  declare const makeClient$6: (definition: ContainerNamespaceDefinition) => <Namespace extends ContainerNamespaceResource>(namespace: Namespace) => ContainerNamespaceClient<Namespace>;
712
719
  declare const layer$8: <Self, Namespace extends ContainerNamespaceResource>(tag: Context.Service<Self, ContainerNamespaceClient<Namespace>>, definition: ContainerNamespaceDefinition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
713
720
  declare const make$9: <Id extends string>(id: Id) => TagClass$8<ContainerNamespaceService<Id>, Id, ContainerNamespaceResource>;
@@ -774,8 +781,9 @@ declare namespace DurableObjectNamespace_d_exports {
774
781
  interface DurableObjectFetcher {
775
782
  fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
776
783
  }
777
- type RpcClient<Api> = { readonly [Key in keyof Api as Key extends string ? Api[Key] extends ((...args: Array<any>) => unknown) ? Key : never : never]: Api[Key]; };
784
+ type RpcClient<Api> = { readonly [Key in keyof Api as Key extends string ? Api[Key] extends ((...args: Array<any>) => any) ? Key : never : never]: Api[Key]; };
778
785
  type ReservedMethodName$1 = ReservedMethodName | "fetch";
786
+ type NamespaceCandidate = Parameters<typeof Predicate.isUnknown>[0];
779
787
  /**
780
788
  * Cloudflare Durable Object stub, optionally enriched with RPC methods.
781
789
  */
@@ -976,7 +984,7 @@ type DurableObjectNamespaceStaticClient<R, Api extends object, Definition extend
976
984
  readonly scopedCall: <Method extends StubMethodKey<Api>>(stub: DurableObjectStubClient<Api>, method: Method, ...args: StubMethodArgs<Api, Method>) => Effect.Effect<Awaited<StubMethodSuccess<Api, Method>>, unknown, Scope.Scope | R>;
977
985
  readonly rawUnsafe: () => Effect.Effect<DurableObjectNamespaceClient<Api>, never, R>;
978
986
  };
979
- declare const isDurableObjectNamespaceClient: <Api extends object>(value: unknown) => value is DurableObjectNamespaceClient<Api>;
987
+ declare const isDurableObjectNamespaceClient: <Api extends object>(value: NamespaceCandidate) => value is DurableObjectNamespaceClient<Api>;
980
988
  declare const makeClient$5: <Api extends object, const Definition extends Definition$3.Any | undefined = undefined>(definition: DurableObjectNamespaceBindingDefinition<Definition>) => ((namespace: DurableObjectNamespaceClient<Api>) => DurableObjectNamespaceEffectClient<Api, Definition>);
981
989
  declare const layer$7: <Self, Api extends object, const Definition extends Definition$3.Any | undefined = undefined>(tag: Context.Service<Self, DurableObjectNamespaceEffectClient<Api, Definition>>, definition: DurableObjectNamespaceBindingDefinition<Definition>) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
982
990
  declare const makeDirectMethods: <R, Api extends object, Definition extends Definition$3.Any | undefined>(rpcDefinition: Definition | undefined, helpers: {
@@ -1001,22 +1009,22 @@ declare namespace Method$1 {
1001
1009
  export type Args<Self extends Any> = ArgsFromSchemas<Self["args"]>;
1002
1010
  export type EncodedArgs<Self extends Any> = EncodedArgsFromSchemas<Self["args"]>;
1003
1011
  export type Success<Self extends Any> = Schema.Schema.Type<Self["success"]>;
1004
- export type EncodedSuccess<Self extends Any> = Schema.Json;
1012
+ export type EncodedSuccess<_Self extends Any> = Schema.Json;
1005
1013
  export {};
1006
1014
  }
1007
1015
  type Methods = Record<string, Method$1.Any>;
1008
1016
  /**
1009
1017
  * RPC contract for a Durable Object class.
1010
1018
  */
1011
- interface Definition$3<Id extends string = string, MethodsShape extends Methods = Methods> {
1019
+ interface Definition$3<Id extends string = string, MethodDefinitions extends Methods = Methods> {
1012
1020
  readonly id: Id;
1013
- readonly methods: MethodsShape;
1021
+ readonly methods: MethodDefinitions;
1014
1022
  }
1015
1023
  declare namespace Definition$3 {
1016
1024
  type Any = Definition$3<string, Methods>;
1017
1025
  }
1018
1026
  type ReservedMethodName = ReservedMethodName$2 | "fetch" | "alarm" | "webSocketMessage" | "webSocketClose" | "webSocketError";
1019
- type NoReservedMethods<MethodsShape extends Methods> = Extract<keyof MethodsShape, ReservedMethodName> extends never ? MethodsShape : never;
1027
+ type NoReservedMethods<MethodDefinitions extends Methods> = Extract<keyof MethodDefinitions, ReservedMethodName> extends never ? MethodDefinitions : never;
1020
1028
  /**
1021
1029
  * Promise-based client API derived from a Durable Object definition.
1022
1030
  */
@@ -1035,26 +1043,24 @@ interface Options$2<ROut, Self extends Definition$3.Any, REvent = never, EventLa
1035
1043
  type LayerOptions$8 = {
1036
1044
  readonly binding: string;
1037
1045
  };
1038
- type TagClass$7<Self, Id extends string, MethodsShape extends Methods> = Context.ServiceClass<Self, `effect-cf/DurableObject/${Id}`, DurableObjectNamespaceEffectClient<Api<Definition$3<Id, MethodsShape>>, Definition$3<Id, MethodsShape>>> & DurableObjectNamespaceStaticClient<Self, Api<Definition$3<Id, MethodsShape>>, Definition$3<Id, MethodsShape>> & {
1046
+ type TagClass$7<Self, Id extends string, MethodDefinitions extends Methods> = Context.ServiceClass<Self, `effect-cf/DurableObject/${Id}`, DurableObjectNamespaceEffectClient<Api<Definition$3<Id, MethodDefinitions>>, Definition$3<Id, MethodDefinitions>>> & DurableObjectNamespaceStaticClient<Self, Api<Definition$3<Id, MethodDefinitions>>, Definition$3<Id, MethodDefinitions>> & {
1039
1047
  readonly id: Id;
1040
- readonly methods: MethodsShape;
1041
- readonly make: <ROut, LayerError, REvent = never, EventLayerError = never>(layer: Layer.Layer<ROut, LayerError, DurableObjectState | WorkerEnvironment>, options: Options$2<ROut, Definition$3<Id, MethodsShape>, REvent, EventLayerError>) => DurableObjectClass<Handlers<ROut | REvent, Definition$3<Id, MethodsShape>>, ROut | REvent>;
1048
+ readonly methods: MethodDefinitions;
1049
+ readonly make: <ROut, LayerError, REvent = never, EventLayerError = never>(layer: Layer.Layer<ROut, LayerError, DurableObjectState | WorkerEnvironment>, options: Options$2<ROut, Definition$3<Id, MethodDefinitions>, REvent, EventLayerError>) => DurableObjectClass<Handlers<ROut | REvent, Definition$3<Id, MethodDefinitions>>, ROut | REvent>;
1042
1050
  readonly layer: (options: LayerOptions$8) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1043
1051
  };
1044
1052
  /**
1045
1053
  * Defines a single RPC method schema in a Durable Object definition.
1046
1054
  */
1047
- declare const method: {
1048
- <Success extends ServiceFreeSchema>(definition: {
1049
- readonly success: Success;
1050
- }): Method$1<readonly [], Success>;
1051
- <const Args extends ReadonlyArray<ServiceFreeSchema>, Success extends ServiceFreeSchema>(definition: {
1052
- readonly args: Args;
1053
- readonly success: Success;
1054
- }): Method$1<Args, Success>;
1055
- };
1056
- declare const make$7: <Id extends string, const MethodsShape extends Methods>(id: Id, methods: MethodsShape & NoReservedMethods<MethodsShape>) => TagClass$7<Definition$3<Id, MethodsShape>, Id, MethodsShape>;
1057
- declare const Tag$8: <Self>() => <Id extends string, const MethodsShape extends Methods>(id: Id, methods: MethodsShape & NoReservedMethods<MethodsShape>) => TagClass$7<Self, Id, MethodsShape>;
1055
+ declare function method<Success extends ServiceFreeSchema>(definition: {
1056
+ readonly success: Success;
1057
+ }): Method$1<readonly [], Success>;
1058
+ declare function method<const Args extends ReadonlyArray<ServiceFreeSchema>, Success extends ServiceFreeSchema>(definition: {
1059
+ readonly args: Args;
1060
+ readonly success: Success;
1061
+ }): Method$1<Args, Success>;
1062
+ declare const make$7: <Id extends string, const MethodDefinitions extends Methods>(id: Id, methods: MethodDefinitions & NoReservedMethods<MethodDefinitions>) => TagClass$7<Definition$3<Id, MethodDefinitions>, Id, MethodDefinitions>;
1063
+ declare const Tag$8: <Self>() => <Id extends string, const MethodDefinitions extends Methods>(id: Id, methods: MethodDefinitions & NoReservedMethods<MethodDefinitions>) => TagClass$7<Self, Id, MethodDefinitions>;
1058
1064
  declare const DurableObject$1: typeof Tag$8;
1059
1065
  /**
1060
1066
  * Helper for implementing handlers with the exact method shape of a definition.
@@ -1065,7 +1071,7 @@ declare const implement$2: <ROut, const Self extends Definition$3.Any>(_definiti
1065
1071
  */
1066
1072
  type HandlerEffect<ROut, Self extends Definition$3.Any, Key extends keyof Self["methods"]> = DurableObjectHandler<ROut, Method$1.Success<Self["methods"][Key]>>;
1067
1073
  declare namespace DurableObject_d_exports {
1068
- export { Api, Definition$3 as Definition, DurableObjectClass, DurableObjectHandler, DurableObjectOptions, DurableObjectRpc, DurableObjectRpcShape, HandlerEffect, Handlers, LayerOptions$8 as LayerOptions, Method$1 as Method, Methods, NoReservedMethods, Options$2 as Options, ReservedMethodName, RpcHandlers, ServerApi, ServiceFreeSchema, Tag$8 as Tag, TagClass$7 as TagClass, implement$2 as implement, make$6 as make, method };
1074
+ export { Api, Definition$3 as Definition, DurableObjectClass, DurableObjectHandler, DurableObjectOptions, DurableObjectRpc, DurableObjectRpcApi, DurableObjectRpcApi as DurableObjectRpcShape, HandlerEffect, Handlers, LayerOptions$8 as LayerOptions, Method$1 as Method, Methods, NoReservedMethods, Options$2 as Options, ReservedMethodName, RpcHandlers, ServerApi, ServiceFreeSchema, Tag$8 as Tag, TagClass$7 as TagClass, implement$2 as implement, make$6 as make, method };
1069
1075
  }
1070
1076
  type RuntimeContext$1<ROut> = DurableObjectState | WorkerEnvironment | ROut;
1071
1077
  type HandlerContext<ROut> = RuntimeContext$1<ROut> | Scope.Scope;
@@ -1078,8 +1084,8 @@ type DurableObjectHandler<ROut, A = unknown> = Effect.Effect<A, unknown, Handler
1078
1084
  * Shape of Durable Object RPC handlers passed to {@link make}.
1079
1085
  */
1080
1086
  type DurableObjectRpc<ROut> = Record<string, (...args: Array<any>) => DurableObjectHandler<ROut>>;
1081
- type DurableObjectRpcShape<Rpc extends DurableObjectRpc<ROut>, ROut> = { readonly [Key in keyof Rpc]: Rpc[Key] extends ((...args: infer Args) => Effect.Effect<infer A, unknown, HandlerContext<ROut>>) ? (...args: Args) => Promise<A> : never; };
1082
- type RpcHandlers<ROut, Api> = { readonly [Key in keyof Api as Key extends keyof DurableObject<WorkerEnv> ? never : Key extends string ? [Api[Key]] extends [never] ? never : Api[Key] extends ((...args: Array<any>) => Promise<unknown>) ? Key : never : never]: Api[Key] extends ((...args: infer Args) => Promise<infer A>) ? (...args: Args) => DurableObjectHandler<ROut, A> : never; };
1087
+ type DurableObjectRpcApi<Rpc extends DurableObjectRpc<ROut>, ROut> = { readonly [Key in keyof Rpc]: Rpc[Key] extends ((...args: infer Args) => Effect.Effect<infer A, unknown, HandlerContext<ROut>>) ? (...args: Args) => Promise<A> : never; };
1088
+ type RpcHandlers<ROut, Api> = { readonly [Key in keyof Api as Key extends keyof DurableObject<WorkerEnv> ? never : Key extends string ? [Api[Key]] extends [never] ? never : Api[Key] extends ((...args: Array<any>) => Promise<any>) ? Key : never : never]: Api[Key] extends ((...args: infer Args) => Promise<infer A>) ? (...args: Args) => DurableObjectHandler<ROut, A> : never; };
1083
1089
  /**
1084
1090
  * Options for creating a Durable Object class backed by Effect handlers.
1085
1091
  */
@@ -1127,12 +1133,12 @@ interface DurableObjectOptions<RRuntime, REvent = never, EventLayerError = never
1127
1133
  readonly alarm?: (alarmInfo?: globalThis.AlarmInvocationInfo) => Effect.Effect<void, unknown, HandlerContext<RRuntime | REvent>>;
1128
1134
  readonly webSocketMessage?: (socket: DurableWebSocket, message: string | ArrayBuffer) => Effect.Effect<void, unknown, HandlerContext<RRuntime | REvent>>;
1129
1135
  readonly webSocketClose?: (socket: DurableWebSocket, code: number, reason: string, wasClean: boolean) => Effect.Effect<void, unknown, HandlerContext<RRuntime | REvent>>;
1130
- readonly webSocketError?: (socket: DurableWebSocket, error: unknown) => Effect.Effect<void, unknown, HandlerContext<RRuntime | REvent>>;
1136
+ readonly webSocketError?: (socket: DurableWebSocket, cause: unknown) => Effect.Effect<void, unknown, HandlerContext<RRuntime | REvent>>;
1131
1137
  }
1132
1138
  /**
1133
1139
  * Cloudflare `DurableObject` constructor produced by {@link make}.
1134
1140
  */
1135
- type DurableObjectClass<Rpc extends DurableObjectRpc<ROut>, ROut> = new (state: globalThis.DurableObjectState, env: WorkerEnv) => DurableObject<WorkerEnv> & DurableObjectRpcShape<Rpc, ROut>;
1141
+ type DurableObjectClass<Rpc extends DurableObjectRpc<ROut>, ROut> = new (state: globalThis.DurableObjectState, env: WorkerEnv) => DurableObject<WorkerEnv> & DurableObjectRpcApi<Rpc, ROut>;
1136
1142
  /**
1137
1143
  * Creates a Durable Object class backed by a single managed Effect runtime.
1138
1144
  */
@@ -1491,7 +1497,7 @@ interface DurableObjectRpcWebSocketService {
1491
1497
  readonly accept: (socket: DurableWebSocket) => Effect.Effect<void>;
1492
1498
  readonly message: (socket: DurableWebSocket, message: NativeWebSocketMessage) => Effect.Effect<void>;
1493
1499
  readonly close: (socket: DurableWebSocket) => Effect.Effect<void>;
1494
- readonly error: (socket: DurableWebSocket, error: unknown) => Effect.Effect<void>;
1500
+ readonly error: (socket: DurableWebSocket, cause: unknown) => Effect.Effect<void>;
1495
1501
  }
1496
1502
  declare const DurableObjectRpcWebSocket_base: Context.ServiceClass<DurableObjectRpcWebSocket, "effect-cf/DurableObjectRpcWebSocket", DurableObjectRpcWebSocketService>;
1497
1503
  /**
@@ -1625,7 +1631,7 @@ interface TagClass$6<Self, Id extends string> extends Context.ServiceClass<Self,
1625
1631
  * because the encoded MIME size is only known once Cloudflare composes it.
1626
1632
  */
1627
1633
  declare const validateMessage: (message: EmailMessageBuilder) => ReadonlyArray<EmailViolation>;
1628
- declare const isEmailBinding: (value: unknown) => value is EmailBinding;
1634
+ declare const isEmailBinding: <Candidate>(value: Candidate) => value is Candidate & EmailBinding;
1629
1635
  declare const makeClient$4: (definition: EmailDefinition, options?: EmailSendOptions) => (email: EmailBinding) => EmailClient;
1630
1636
  declare const layer$4: <Self>(tag: Context.Service<Self, EmailClient>, definition: LayerOptions$6) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1631
1637
  declare const make$5: <Id extends string>(id: Id) => TagClass$6<EmailService<Id>, Id>;
@@ -1799,7 +1805,7 @@ declare const draw: {
1799
1805
  (draw: DrawStepOptions): (steps: Steps) => Steps;
1800
1806
  (steps: Steps, draw: DrawStepOptions): Steps;
1801
1807
  };
1802
- declare const isImagesBinding: (value: unknown) => value is ImagesRuntimeBinding;
1808
+ declare const isImagesBinding: <Candidate>(value: Candidate) => value is Candidate & ImagesRuntimeBinding;
1803
1809
  declare const makeClient$3: (definition: ImagesDefinition) => (images: ImagesRuntimeBinding) => ImagesClient;
1804
1810
  declare const layer$3: <Self>(tag: Context.Service<Self, ImagesClient>, definition: ImagesDefinition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1805
1811
  declare const make$4: <Id extends string>(id: Id) => TagClass$5<ImagesService<Id>, Id>;
@@ -1887,7 +1893,7 @@ interface TagClass$4<Self, Id extends string, Key, Value, EncodedValue> extends
1887
1893
  readonly valueSchema: Schema.Codec<Value, EncodedValue>;
1888
1894
  readonly layer: (options: LayerOptions$4) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1889
1895
  }
1890
- declare const isKvNamespace: (value: unknown) => value is KVNamespace;
1896
+ declare const isKvNamespace: <Candidate>(value: Candidate) => value is Candidate & KVNamespace;
1891
1897
  declare const makeClient$2: <Key, Value, EncodedValue>(definition: KvDefinition<Key, Value, EncodedValue>) => ((kv: KVNamespace) => KvClient<Key, Value, EncodedValue>);
1892
1898
  declare const layer$2: <Self, Key, Value, EncodedValue>(tag: Context.Service<Self, KvClient<Key, Value, EncodedValue>>, definition: KvDefinition<Key, Value, EncodedValue>) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1893
1899
  declare const Tag$5: <Self>() => <Id extends string, Key, Value, EncodedValue>(id: Id, definition: {
@@ -1973,7 +1979,8 @@ interface TagClass$3<Self, Id extends string> extends Context.ServiceClass<Self,
1973
1979
  readonly id: Id;
1974
1980
  readonly layer: (options: LayerOptions$3) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1975
1981
  }
1976
- declare const isR2Bucket: (value: unknown) => value is CloudflareR2Bucket;
1982
+ type R2BindingValue = Schema.Schema.Type<typeof Schema.Unknown>;
1983
+ declare const isR2Bucket: (value: R2BindingValue) => value is CloudflareR2Bucket;
1977
1984
  declare const makeClient$1: (definition: R2Definition) => ((bucket: CloudflareR2Bucket) => R2Client);
1978
1985
  declare const layer$1: <Self>(tag: Context.Service<Self, R2Client>, definition: R2Definition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
1979
1986
  declare const make$3: <Id extends string>(id: Id) => TagClass$3<R2Service<Id>, Id>;
@@ -2037,7 +2044,8 @@ interface TagClass$2<Self, Id extends string> extends Context.ServiceClass<Self,
2037
2044
  readonly id: Id;
2038
2045
  readonly layer: (options: LayerOptions$2) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
2039
2046
  }
2040
- declare const isVectorizeBinding: (value: unknown) => value is VectorizeBinding;
2047
+ type VectorizeBindingValue = Schema.Schema.Type<typeof Schema.Unknown>;
2048
+ declare const isVectorizeBinding: (value: VectorizeBindingValue) => value is VectorizeBinding;
2041
2049
  declare const makeClient: (definition: VectorizeDefinition) => (index: VectorizeBinding) => VectorizeClient;
2042
2050
  declare const layer: <Self>(tag: Context.Service<Self, VectorizeClient>, definition: VectorizeDefinition) => Layer.Layer<Self, BindingNotFoundError | BindingValidationError, WorkerEnvironment>;
2043
2051
  declare const make$2: <Id extends string>(id: Id) => TagClass$2<VectorizeService<Id>, Id>;
@@ -2158,7 +2166,7 @@ declare const Tag$2: <Self>() => <Id extends string, Payload extends ServiceFree
2158
2166
  declare const Workflow: typeof Tag$2;
2159
2167
  declare const implement$1: <ROut, const Self extends Definition$1.Any>(_definition: Self, handler: Handler$1<ROut, Self>) => Handler$1<ROut, Self>;
2160
2168
  declare namespace Workflow_d_exports {
2161
- export { Definition, Handler, LayerOptions, Options, Tag$1 as Tag, TagClass, WorkflowClass, WorkflowEvent$1 as WorkflowEvent, WorkflowEventService, WorkflowHandler, WorkflowOptions, WorkflowRunContext, WorkflowStep$1 as WorkflowStep, WorkflowStepContext$1 as WorkflowStepContext, WorkflowStepError, WorkflowStepService, implement, make, sleep, sleepUntil, step, waitForEvent };
2169
+ export { Definition, Handler, LayerOptions, Options, Tag$1 as Tag, TagClass, WorkflowClass, WorkflowEvent$1 as WorkflowEvent, WorkflowEventService, WorkflowHandler, WorkflowOptions, WorkflowRunContext, WorkflowStep$1 as WorkflowStep, WorkflowStepContext$1 as WorkflowStepContext, WorkflowStepError, WorkflowStepNonRetryableError, WorkflowStepService, implement, make, sleep, sleepUntil, step, waitForEvent };
2162
2170
  }
2163
2171
  interface WorkflowEventService<Payload = unknown> {
2164
2172
  readonly raw: WorkflowEvent<unknown>;
@@ -2169,7 +2177,7 @@ interface WorkflowEventService<Payload = unknown> {
2169
2177
  }
2170
2178
  declare const WorkflowEvent_base: Context.ServiceClass<WorkflowEvent$1, "effect-cf/WorkflowEvent", WorkflowEventService<unknown>>;
2171
2179
  declare class WorkflowEvent$1 extends WorkflowEvent_base {}
2172
- declare const WorkflowStepError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
2180
+ declare const WorkflowStepError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => Cause.YieldableError & {
2173
2181
  readonly _tag: "WorkflowStepError";
2174
2182
  } & Readonly<A>;
2175
2183
  /** Failure raised when a Cloudflare Workflow step operation rejects. */
@@ -2180,6 +2188,20 @@ declare class WorkflowStepError extends WorkflowStepError_base<{
2180
2188
  }> {
2181
2189
  get message(): string;
2182
2190
  }
2191
+ declare const WorkflowStepNonRetryableError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => Cause.YieldableError & {
2192
+ readonly _tag: "WorkflowStepNonRetryableError";
2193
+ } & Readonly<A>;
2194
+ /**
2195
+ * Typed step failure that Cloudflare must treat as terminal instead of retrying.
2196
+ *
2197
+ * The workflow boundary converts this value into Cloudflare's native
2198
+ * `NonRetryableError` while preserving the original cause and its message.
2199
+ */
2200
+ declare class WorkflowStepNonRetryableError extends WorkflowStepNonRetryableError_base<{
2201
+ readonly cause: unknown;
2202
+ }> {
2203
+ get message(): string;
2204
+ }
2183
2205
  interface WorkflowStepService {
2184
2206
  readonly raw: WorkflowStep;
2185
2207
  do<A, E, R>(name: string, effect: Effect.Effect<A, E, R>, config?: WorkflowStepConfig): Effect.Effect<A, WorkflowStepError, Exclude<R, WorkflowStepContext$1>>;