@ferricstore/ferricstore 0.12.2 → 0.13.1

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 (110) hide show
  1. package/README.md +45 -3
  2. package/dist/index.cjs +804 -198
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +87 -9
  5. package/dist/index.d.ts +87 -9
  6. package/dist/index.js +798 -194
  7. package/dist/index.js.map +1 -1
  8. package/dist/langgraph.cjs.map +1 -1
  9. package/dist/langgraph.d.cts +1 -1
  10. package/dist/langgraph.d.ts +1 -1
  11. package/dist/langgraph.js.map +1 -1
  12. package/dist/openai-agents.cjs.map +1 -1
  13. package/dist/openai-agents.js.map +1 -1
  14. package/dist/{outcomes-DmBwnq0Y.d.cts → outcomes-CcX956h4.d.cts} +20 -1
  15. package/dist/{outcomes-BbFDp3AH.d.ts → outcomes-DLJYTrX8.d.ts} +20 -1
  16. package/docs/api/assets/hierarchy.js +1 -1
  17. package/docs/api/assets/highlight.css +9 -2
  18. package/docs/api/assets/navigation.js +1 -1
  19. package/docs/api/assets/search.js +1 -1
  20. package/docs/api/classes/ConnectionClosedError.html +5 -5
  21. package/docs/api/classes/FerricStoreClient.html +68 -23
  22. package/docs/api/classes/FerricStoreError.html +2 -1
  23. package/docs/api/classes/FlowAlreadyExistsError.html +3 -3
  24. package/docs/api/classes/FlowBatchError.html +1 -1
  25. package/docs/api/classes/FlowNotFoundError.html +3 -3
  26. package/docs/api/classes/FlowQueryError.html +1 -1
  27. package/docs/api/classes/FlowWrongStateError.html +3 -3
  28. package/docs/api/classes/HTTPTransportError.html +14 -8
  29. package/docs/api/classes/InvalidCommandError.html +3 -3
  30. package/docs/api/classes/LeaseRenewalError.html +3 -3
  31. package/docs/api/classes/LockHeldError.html +3 -3
  32. package/docs/api/classes/LockNotOwnedError.html +3 -3
  33. package/docs/api/classes/NativeAdapter.html +3 -3
  34. package/docs/api/classes/OverloadedError.html +5 -5
  35. package/docs/api/classes/QueueCompletionError.html +1 -1
  36. package/docs/api/classes/RequestNotSentError.html +225 -0
  37. package/docs/api/classes/RequestTimeoutError.html +6 -6
  38. package/docs/api/classes/RerouteError.html +3 -3
  39. package/docs/api/classes/StaleLeaseError.html +3 -3
  40. package/docs/api/classes/StalePolicyGenerationError.html +3 -3
  41. package/docs/api/classes/Workflow.html +19 -19
  42. package/docs/api/classes/WorkflowClient.html +4 -4
  43. package/docs/api/classes/WorkflowContext.html +73 -37
  44. package/docs/api/classes/WorkflowFlowCommands.html +26 -22
  45. package/docs/api/classes/WorkflowWorker.html +6 -6
  46. package/docs/api/functions/classifyServerError.html +1 -1
  47. package/docs/api/functions/complete.html +1 -1
  48. package/docs/api/functions/fail.html +1 -1
  49. package/docs/api/functions/isAlreadyAppliedOutcome.html +41 -0
  50. package/docs/api/functions/isOutcome.html +1 -1
  51. package/docs/api/functions/mapException.html +1 -1
  52. package/docs/api/functions/retry.html +1 -1
  53. package/docs/api/functions/transition.html +1 -1
  54. package/docs/api/hierarchy.html +56 -47
  55. package/docs/api/index.html +32 -4
  56. package/docs/api/interfaces/AdminListOptions.html +1 -1
  57. package/docs/api/interfaces/AdvanceOptions.html +145 -0
  58. package/docs/api/interfaces/AlreadyAppliedOutcome.html +69 -0
  59. package/docs/api/interfaces/AppliedStepOutcome.html +87 -0
  60. package/docs/api/interfaces/CancelOptions.html +13 -9
  61. package/docs/api/interfaces/CompleteOptions.html +13 -9
  62. package/docs/api/interfaces/CompleteOutcome.html +13 -13
  63. package/docs/api/interfaces/CreateManyOptions.html +1 -1
  64. package/docs/api/interfaces/EffectCompensateOptions.html +1 -1
  65. package/docs/api/interfaces/EffectConfirmOptions.html +1 -1
  66. package/docs/api/interfaces/EffectFailOptions.html +1 -1
  67. package/docs/api/interfaces/EffectStatusOptions.html +1 -1
  68. package/docs/api/interfaces/ExtendLeaseOptions.html +10 -8
  69. package/docs/api/interfaces/FailOptions.html +13 -9
  70. package/docs/api/interfaces/FailOutcome.html +13 -13
  71. package/docs/api/interfaces/FerricStoreClientFromUrlOptions.html +1 -1
  72. package/docs/api/interfaces/FerricStoreClientOptions.html +1 -1
  73. package/docs/api/interfaces/FlowQueryCountResult.html +1 -1
  74. package/docs/api/interfaces/FlowQueryIndexBuild.html +1 -1
  75. package/docs/api/interfaces/FlowQueryIndexProgress.html +1 -1
  76. package/docs/api/interfaces/FlowQueryIndexValidation.html +1 -1
  77. package/docs/api/interfaces/FlowQueryRecordsResult.html +1 -1
  78. package/docs/api/interfaces/HistoryOptions.html +16 -16
  79. package/docs/api/interfaces/InvocationCreateOptions.html +1 -1
  80. package/docs/api/interfaces/LeaseMutationOptions.html +11 -7
  81. package/docs/api/interfaces/LimitListOptions.html +1 -1
  82. package/docs/api/interfaces/MutateOptions.html +8 -4
  83. package/docs/api/interfaces/NamedValueMutation.html +9 -9
  84. package/docs/api/interfaces/ReadOptions.html +12 -12
  85. package/docs/api/interfaces/ReclaimOptions.html +1 -1
  86. package/docs/api/interfaces/ReplayedStepResult.html +73 -0
  87. package/docs/api/interfaces/RequestContextOptions.html +1 -1
  88. package/docs/api/interfaces/RetryOptions.html +13 -9
  89. package/docs/api/interfaces/RetryOutcome.html +13 -13
  90. package/docs/api/interfaces/RunStepsItem.html +3 -3
  91. package/docs/api/interfaces/RunStepsManyOptions.html +11 -11
  92. package/docs/api/interfaces/SearchOptions.html +13 -13
  93. package/docs/api/interfaces/StepContinueOptions.html +16 -12
  94. package/docs/api/interfaces/StepOptions.html +166 -0
  95. package/docs/api/interfaces/StepResult.html +67 -0
  96. package/docs/api/interfaces/TDigestCreateOptions.html +1 -1
  97. package/docs/api/interfaces/TDigestMergeOptions.html +1 -1
  98. package/docs/api/interfaces/TransitionOptions.html +15 -11
  99. package/docs/api/interfaces/TransitionOutcome.html +14 -14
  100. package/docs/api/media/design.md +12 -1
  101. package/docs/api/modules.html +8 -8
  102. package/docs/api/types/ConnectionRequestDisposition.html +1 -1
  103. package/docs/api/types/ManagementPairs.html +1 -1
  104. package/docs/api/types/Outcome.html +1 -1
  105. package/docs/api/types/RequestDisposition.html +1 -1
  106. package/docs/api/types/SearchStateMeta.html +1 -1
  107. package/docs/api/types/WorkflowStepResult.html +38 -0
  108. package/docs/api/variables/FERRICSTORE_SDK_VERSION.html +1 -1
  109. package/docs/design.md +12 -1
  110. package/package.json +1 -1
package/dist/index.d.cts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { ConnectionOptions } from 'node:tls';
2
2
  import { C as CommandArgument, a as Command } from './internal-lEEDZpPH.cjs';
3
3
  import { Buffer as Buffer$1 } from 'node:buffer';
4
- import { F as FencingToken, S as StateMeta, a as FlowRecord, C as ClaimedItem, M as MaxActiveMs, R as RateLimitResult, K as KeyInfo, b as FetchOrComputeResult, c as ChildSpec, d as FencedItem, e as CreateItem, O as Outcome } from './outcomes-DmBwnq0Y.cjs';
5
- export { f as CompleteOutcome, g as FailOutcome, h as FetchOrComputeComputeResult, i as FetchOrComputeFencedResult, j as FetchOrComputeHitResult, k as FlowMaxActiveFailure, N as NamedValueMutation, l as RetryOutcome, m as StateMetaValue, T as TransitionOutcome, n as complete, o as fail, p as isOutcome, r as retry, t as transition } from './outcomes-DmBwnq0Y.cjs';
4
+ import { F as FencingToken, S as StateMeta, a as FlowRecord, C as ClaimedItem, M as MaxActiveMs, R as RateLimitResult, K as KeyInfo, b as FetchOrComputeResult, c as ChildSpec, d as FencedItem, e as CreateItem, A as AlreadyAppliedOutcome, W as WorkflowStepResult, O as Outcome } from './outcomes-CcX956h4.cjs';
5
+ export { f as AppliedStepOutcome, g as CompleteOutcome, h as FailOutcome, i as FetchOrComputeComputeResult, j as FetchOrComputeFencedResult, k as FetchOrComputeHitResult, l as FlowMaxActiveFailure, N as NamedValueMutation, m as ReplayedStepResult, n as RetryOutcome, o as StateMetaValue, T as TransitionOutcome, p as complete, q as fail, r as isAlreadyAppliedOutcome, s as isOutcome, t as retry, u as transition } from './outcomes-CcX956h4.cjs';
6
6
 
7
7
  declare class FerricStoreError extends Error {
8
8
  readonly code: string;
@@ -18,14 +18,16 @@ declare class FerricStoreError extends Error {
18
18
  retryAfterMs?: number;
19
19
  });
20
20
  }
21
+ type RequestDisposition = "unsent" | "possibly_sent";
21
22
  declare class HTTPTransportError extends FerricStoreError {
22
23
  readonly code = "http_transport";
24
+ readonly requestDisposition: RequestDisposition | undefined;
23
25
  readonly statusCode: number | undefined;
24
26
  constructor(message: string, options?: ConstructorParameters<typeof FerricStoreError>[1] & {
27
+ requestDisposition?: RequestDisposition;
25
28
  statusCode?: number;
26
29
  });
27
30
  }
28
- type RequestDisposition = "unsent" | "possibly_sent";
29
31
  /** Connection closure annotated with whether the current request may have reached the server. */
30
32
  declare class ConnectionClosedError extends FerricStoreError {
31
33
  readonly code = "connection_closed";
@@ -46,6 +48,15 @@ declare class RequestTimeoutError extends FerricStoreError {
46
48
  cause?: unknown;
47
49
  });
48
50
  }
51
+ /** A local validation, encoding, sizing, or lifecycle failure before submission. */
52
+ declare class RequestNotSentError extends FerricStoreError {
53
+ readonly code = "request_not_sent";
54
+ readonly requestDisposition: "unsent";
55
+ constructor(message: string, options?: {
56
+ raw?: unknown;
57
+ cause?: unknown;
58
+ });
59
+ }
49
60
  declare class FlowNotFoundError extends FerricStoreError {
50
61
  readonly code = "flow_not_found";
51
62
  }
@@ -984,6 +995,11 @@ interface MutateOptions {
984
995
  attributesMerge?: Record<string, CommandArgument>;
985
996
  attributesDelete?: string[];
986
997
  stateMeta?: StateMeta;
998
+ /**
999
+ * Explicit client-supplied command timestamp. Omit in production so each
1000
+ * request samples the current client wall clock; primarily useful for tests.
1001
+ * This is not the server response time or the client transport deadline.
1002
+ */
987
1003
  nowMs?: number;
988
1004
  returnRecord?: boolean;
989
1005
  }
@@ -996,6 +1012,7 @@ interface ExtendLeaseOptions {
996
1012
  fencingToken: FencingToken;
997
1013
  leaseMs: number;
998
1014
  partitionKey?: string;
1015
+ /** See {@link MutateOptions.nowMs}; this is a client timestamp override. */
999
1016
  nowMs?: number;
1000
1017
  returnOkOnSuccess?: boolean;
1001
1018
  }
@@ -1014,6 +1031,26 @@ interface StepContinueOptions extends Omit<LeaseMutationOptions, "returnRecord">
1014
1031
  /** Flow type to retain when returnJob requests a compact response. */
1015
1032
  type?: string;
1016
1033
  }
1034
+ /** Options for advancing an already-claimed Flow to its next logical state. */
1035
+ interface AdvanceOptions extends Omit<MutateOptions, "returnRecord"> {
1036
+ toState: string;
1037
+ leaseMs?: number;
1038
+ }
1039
+ /** Options for a closure whose result is journaled with its state transition. */
1040
+ interface StepOptions<TResult> extends AdvanceOptions {
1041
+ /** Stable operation identity. Keep this unchanged across retries. */
1042
+ name: string;
1043
+ /**
1044
+ * Runs directly in the caller or worker's JavaScript execution context. The
1045
+ * SDK awaits its result and does not submit it to a global thread pool.
1046
+ */
1047
+ run: () => TResult | PromiseLike<TResult>;
1048
+ }
1049
+ /** The renewed claim and durable result returned by a durable `step()` call. */
1050
+ interface StepResult<TResult> {
1051
+ readonly job: ClaimedItem;
1052
+ readonly result: TResult;
1053
+ }
1017
1054
  interface RunStepsItem {
1018
1055
  id: string;
1019
1056
  partitionKey?: string;
@@ -2249,7 +2286,19 @@ declare class FerricStoreClient extends FerricStoreProducerClient {
2249
2286
  }): Promise<unknown>;
2250
2287
  flowSignal(id: string, options: Parameters<FerricStoreClient["signal"]>[1]): Promise<unknown>;
2251
2288
  startAndClaim(id: string, options: StartAndClaimOptions): Promise<FlowRecord>;
2289
+ /**
2290
+ * @deprecated Low-level compatibility API. Use {@link advance} for state-only
2291
+ * continuation or {@link step} for a durable closure.
2292
+ */
2252
2293
  stepContinue(id: string, options: StepContinueOptions): Promise<FlowRecord | ClaimedItem>;
2294
+ /** Advance a claimed Flow and return its renewed claim. */
2295
+ advance(job: FlowRecord | ClaimedItem, options: AdvanceOptions): Promise<ClaimedItem>;
2296
+ /**
2297
+ * Run a closure after validating the claim, then atomically journal its
2298
+ * result and advance the Flow. A committed result is replayed without
2299
+ * invoking the closure again.
2300
+ */
2301
+ step<TResult>(job: FlowRecord | ClaimedItem, options: StepOptions<TResult>): Promise<StepResult<TResult>>;
2253
2302
  runStepsMany(items: readonly (string | RunStepsItem)[], options: RunStepsManyOptions): Promise<unknown>;
2254
2303
  transitionMany(partitionKey: string | undefined, options: {
2255
2304
  fromState: string;
@@ -2406,15 +2455,28 @@ declare class Queue {
2406
2455
  worker(options?: WorkerConfig): QueueWorker;
2407
2456
  }
2408
2457
 
2458
+ /** @internal Coordinates lease renewal around an atomic lease-rotating write. */
2459
+ interface MutationCoordinator {
2460
+ pause(): Promise<void>;
2461
+ resume(job: ClaimedItem): void;
2462
+ }
2463
+
2409
2464
  declare class WorkflowContext {
2410
2465
  readonly workflow: Workflow;
2411
2466
  readonly job: FlowRecord | ClaimedItem;
2412
- readonly stateName: string;
2413
2467
  readonly flow: WorkflowFlowCommands;
2414
- private readonly leaseJob;
2468
+ private appliedMutation;
2469
+ private currentStateName;
2470
+ private leaseJob;
2471
+ private mutationFailure?;
2472
+ private mutationPhase;
2473
+ private mutationCoordinator?;
2415
2474
  private readonly valueCache;
2416
- constructor(workflow: Workflow, job: FlowRecord | ClaimedItem, stateName: string, leaseJob?: ClaimedItem);
2475
+ constructor(workflow: Workflow, job: FlowRecord | ClaimedItem, stateName: string);
2476
+ /** @internal */
2477
+ protected configureWorkerMutation(leaseJob: ClaimedItem, coordinator: MutationCoordinator): void;
2417
2478
  get client(): FerricStoreClient;
2479
+ get stateName(): string;
2418
2480
  get id(): string;
2419
2481
  get type(): string;
2420
2482
  get state(): string;
@@ -2431,6 +2493,16 @@ declare class WorkflowContext {
2431
2493
  get parentFlowId(): string | undefined;
2432
2494
  get rootFlowId(): string | undefined;
2433
2495
  get correlationId(): string | undefined;
2496
+ advance(toState: string, options?: Omit<AdvanceOptions, "toState">): Promise<AlreadyAppliedOutcome>;
2497
+ step<TResult>(options: StepOptions<TResult>): Promise<WorkflowStepResult<TResult>>;
2498
+ /** @internal */
2499
+ get hasAppliedMutation(): boolean;
2500
+ /** @internal */
2501
+ get uncertainMutationFailure(): unknown;
2502
+ /** @internal */
2503
+ get hasUncertainMutation(): boolean;
2504
+ /** @internal */
2505
+ assertAppliedOutcome(outcome: AlreadyAppliedOutcome): void;
2434
2506
  value(name: string, defaultValue?: unknown, options?: {
2435
2507
  localCache?: boolean;
2436
2508
  }): Promise<unknown>;
@@ -2438,6 +2510,12 @@ declare class WorkflowContext {
2438
2510
  localCache?: boolean;
2439
2511
  }): Promise<Record<string, unknown>>;
2440
2512
  private valueMaxBytes;
2513
+ private durableClaim;
2514
+ private beforeCommit;
2515
+ private commitFailed;
2516
+ private committed;
2517
+ private replayed;
2518
+ private acceptJob;
2441
2519
  }
2442
2520
  declare class WorkflowFlowCommands {
2443
2521
  private readonly ctx;
@@ -2453,6 +2531,7 @@ declare class WorkflowFlowCommands {
2453
2531
  transition(toState: string, options?: Partial<Omit<Parameters<FerricStoreClient["transition"]>[1], "toState" | "fromState" | "leaseToken" | "fencingToken">> & {
2454
2532
  fromState?: string;
2455
2533
  }): Promise<FlowRecord | Buffer | unknown>;
2534
+ /** @deprecated Use `ctx.advance(toState)`. */
2456
2535
  stepContinue(toState: string, options?: Partial<Omit<StepContinueOptions, "toState" | "fromState" | "leaseToken" | "fencingToken">> & {
2457
2536
  fromState?: string;
2458
2537
  }): Promise<FlowRecord | ClaimedItem>;
@@ -2595,11 +2674,10 @@ declare class WorkflowWorker {
2595
2674
  private resolveStates;
2596
2675
  private claimState;
2597
2676
  private applyJob;
2598
- private applyHandlerError;
2599
2677
  }
2600
2678
 
2601
2679
  /** TypeScript SDK package version. */
2602
- declare const FERRICSTORE_SDK_VERSION = "0.12.0";
2680
+ declare const FERRICSTORE_SDK_VERSION = "0.13.1";
2603
2681
  /** Oldest FerricStore server supported by this breaking beta contract. */
2604
2682
  declare const FERRICSTORE_MINIMUM_SERVER_VERSION = "0.11.4";
2605
2683
  /** Native framing and opcode ABI version; unchanged by FerricStore 0.11. */
@@ -2608,4 +2686,4 @@ declare const FERRICSTORE_NATIVE_PROTOCOL_VERSION = 1;
2608
2686
  /** @deprecated Use RequestDisposition; retained for source compatibility. */
2609
2687
  type ConnectionRequestDisposition = RequestDisposition;
2610
2688
 
2611
- export { type AdminListOptions, type ApprovalListOptions, type ApprovalRequestOptions, type AttributeQueryOptions, type AutoBatchOptions, type BackoffKind, type BackpressurePolicy, BitmapStore, BloomFilterStore, type BudgetCommitOptions, type BudgetReserveOptions, COMMAND_OPCODES, type CancelOptions, ChildSpec, type CircuitOpenOptions, type ClaimDueOptions, ClaimHydrationError, type ClaimHydrationItem, ClaimedItem, type Codec, type CollectionScanOptions, Command, CommandArgument, type CommandExecutor, type CompleteJobsAndClaimJobsResult, type CompleteManyOptions, type CompleteOptions, ConnectionClosedError, type ConnectionRequestDisposition, type CountMinMergeOptions, CountMinSketchStore, CreateItem, type CreateManyOptions, type CreateOptions, CuckooFilterStore, type EffectCompensateOptions, type EffectConfirmOptions, type EffectFailOptions, type EffectReserveOptions, type EffectStatusOptions, type EndpointPolicy, type ExceptionPolicy, type ExecutePipelineOptions, type ExpiryCondition, type ExtendLeaseOptions, FERRICSTORE_MINIMUM_SERVER_VERSION, FERRICSTORE_NATIVE_PROTOCOL_VERSION, FERRICSTORE_SDK_VERSION, type FailOptions, FencedItem, FencingToken, FerricStoreClient, type FerricStoreClientFromUrlOptions, type FerricStoreClientOptions, FerricStoreError, FetchOrComputeResult, type FlowAdminRecord, FlowAlreadyExistsError, type FlowBatchCompletedItem, FlowBatchError, type FlowEventProjectionField, type FlowExplainCapabilities, type FlowExplainResult, FlowNotFoundError, type FlowPolicyBackoffKind, type FlowPolicyBackoffSnapshot, type FlowPolicyOptions, type FlowPolicyRetentionSnapshot, type FlowPolicyRetrySnapshot, type FlowPolicySnapshot, type FlowPolicyStateSnapshot, FlowProjection, type FlowProjectionField, type FlowProjectionShape, type FlowQueryCountResult, FlowQueryError, type FlowQueryErrorPosition, type FlowQueryIndex, type FlowQueryIndexBuild, type FlowQueryIndexCoverage, type FlowQueryIndexField, type FlowQueryIndexFormat, type FlowQueryIndexProgress, type FlowQueryIndexRegistry, type FlowQueryIndexRetirement, type FlowQueryIndexServiceState, type FlowQueryIndexServices, type FlowQueryIndexStatistics, type FlowQueryIndexStatus, type FlowQueryIndexValidation, type FlowQueryInteger, type FlowQueryPage, type FlowQueryParameter, type FlowQueryParameters, type FlowQueryQuality, type FlowQueryRecord, type FlowQueryRecordsResult, type FlowQueryResult, type FlowQueryUsage, FlowRecord, type FlowRunProjectionField, type FlowStateMode, type FlowStatePolicy, type FlowStatePolicyLike, type FlowStatsOptions, FlowWrongStateError, type GeoAddOptions, type GeoMember, GeoStore, type GetExOptions, type GovernanceLedgerOptions, HTTPAdapter, type HTTPAdapterOptions, type HTTPCommandDisposition, HTTPTransportError, type HashScanResult, HashStore, type HistoryOptions, HyperLogLogStore, type IntegerReply, InvalidCommandError, type InvocationCreateOptions, JsonCodec, KeyInfo, KeyValueStore, type LeaseMutationOptions, LeaseRenewalError, type LimitAmountOptions, type LimitLeaseOptions, type LimitListOptions, type LimitReleaseOptions, ListStore, LockHeldError, LockNotOwnedError, MAX_FLOW_POLICY_GENERATION, type ManagementPairs, MaxActiveMs, type MutateOptions, NativeAdapter, type NativeAdapterOptions, type NativeClientOptions, type NativeProtocolEvent, Outcome, OverloadedError, type ProtocolCommand, Queue, type QueueBatchHandler, QueueClient, QueueCompletionError, type QueueHandler, type QueueJob, type QueueOptions, QueueWorker, type QueueWorkerResult, type RangeLimit, RateLimitResult, RawCodec, type ReadOptions, type ReclaimOptions, type ReconnectOptions, ReconnectingExecutor, type RequestContext, type RequestContextOptions, type RequestDisposition, RequestTimeoutError, RerouteError, type RetryOptions, type RetryPolicy, type RoutingEndpoint, type RoutingRoute, RoutingTopology, type RunStepsItem, type RunStepsManyOptions, type ScanOptions, type ScheduleCatchupPolicy, type ScheduleFireDueOptions, type ScheduleFireDueResult, type ScheduleFireOptions, type ScheduleFireResult, type ScheduleKind, type ScheduleListOptions, type ScheduleOptions, type ScheduleOverlapPolicy, type ScheduleRecord, type ScheduleState, type SearchOptions, type SearchStateMeta, type SetOptions, type SetScanResult, SetStore, type SortedSetScanResult, SortedSetStore, StaleLeaseError, StalePolicyGenerationError, type StartAndClaimOptions, StateMeta, type StateOptions, type StateRegistration, type StepContinueOptions, type StoreCommandClient, StreamStore, type TDigestCreateOptions, type TDigestMergeOptions, TDigestStore, type TopKReserveOptions, TopKStore, type TopologyNativeAdapterOptions, TopologyNativeAdapterPool, type TransitionOptions, type ValueConfig, type WorkerConfig, type WorkerProfile, type WorkerRefillStrategy, Workflow, WorkflowClient, WorkflowContext, WorkflowFlowCommands, type WorkflowHandler, type WorkflowOptions, WorkflowWorker, type WorkflowWorkerResult, type XReadStream, type ZAddMember, type ZAddOptions, classifyServerError, httpCommandDisposition, isReconnectableClosedConnectionError, mapException, projectFlowQuery };
2689
+ export { type AdminListOptions, type AdvanceOptions, AlreadyAppliedOutcome, type ApprovalListOptions, type ApprovalRequestOptions, type AttributeQueryOptions, type AutoBatchOptions, type BackoffKind, type BackpressurePolicy, BitmapStore, BloomFilterStore, type BudgetCommitOptions, type BudgetReserveOptions, COMMAND_OPCODES, type CancelOptions, ChildSpec, type CircuitOpenOptions, type ClaimDueOptions, ClaimHydrationError, type ClaimHydrationItem, ClaimedItem, type Codec, type CollectionScanOptions, Command, CommandArgument, type CommandExecutor, type CompleteJobsAndClaimJobsResult, type CompleteManyOptions, type CompleteOptions, ConnectionClosedError, type ConnectionRequestDisposition, type CountMinMergeOptions, CountMinSketchStore, CreateItem, type CreateManyOptions, type CreateOptions, CuckooFilterStore, type EffectCompensateOptions, type EffectConfirmOptions, type EffectFailOptions, type EffectReserveOptions, type EffectStatusOptions, type EndpointPolicy, type ExceptionPolicy, type ExecutePipelineOptions, type ExpiryCondition, type ExtendLeaseOptions, FERRICSTORE_MINIMUM_SERVER_VERSION, FERRICSTORE_NATIVE_PROTOCOL_VERSION, FERRICSTORE_SDK_VERSION, type FailOptions, FencedItem, FencingToken, FerricStoreClient, type FerricStoreClientFromUrlOptions, type FerricStoreClientOptions, FerricStoreError, FetchOrComputeResult, type FlowAdminRecord, FlowAlreadyExistsError, type FlowBatchCompletedItem, FlowBatchError, type FlowEventProjectionField, type FlowExplainCapabilities, type FlowExplainResult, FlowNotFoundError, type FlowPolicyBackoffKind, type FlowPolicyBackoffSnapshot, type FlowPolicyOptions, type FlowPolicyRetentionSnapshot, type FlowPolicyRetrySnapshot, type FlowPolicySnapshot, type FlowPolicyStateSnapshot, FlowProjection, type FlowProjectionField, type FlowProjectionShape, type FlowQueryCountResult, FlowQueryError, type FlowQueryErrorPosition, type FlowQueryIndex, type FlowQueryIndexBuild, type FlowQueryIndexCoverage, type FlowQueryIndexField, type FlowQueryIndexFormat, type FlowQueryIndexProgress, type FlowQueryIndexRegistry, type FlowQueryIndexRetirement, type FlowQueryIndexServiceState, type FlowQueryIndexServices, type FlowQueryIndexStatistics, type FlowQueryIndexStatus, type FlowQueryIndexValidation, type FlowQueryInteger, type FlowQueryPage, type FlowQueryParameter, type FlowQueryParameters, type FlowQueryQuality, type FlowQueryRecord, type FlowQueryRecordsResult, type FlowQueryResult, type FlowQueryUsage, FlowRecord, type FlowRunProjectionField, type FlowStateMode, type FlowStatePolicy, type FlowStatePolicyLike, type FlowStatsOptions, FlowWrongStateError, type GeoAddOptions, type GeoMember, GeoStore, type GetExOptions, type GovernanceLedgerOptions, HTTPAdapter, type HTTPAdapterOptions, type HTTPCommandDisposition, HTTPTransportError, type HashScanResult, HashStore, type HistoryOptions, HyperLogLogStore, type IntegerReply, InvalidCommandError, type InvocationCreateOptions, JsonCodec, KeyInfo, KeyValueStore, type LeaseMutationOptions, LeaseRenewalError, type LimitAmountOptions, type LimitLeaseOptions, type LimitListOptions, type LimitReleaseOptions, ListStore, LockHeldError, LockNotOwnedError, MAX_FLOW_POLICY_GENERATION, type ManagementPairs, MaxActiveMs, type MutateOptions, NativeAdapter, type NativeAdapterOptions, type NativeClientOptions, type NativeProtocolEvent, Outcome, OverloadedError, type ProtocolCommand, Queue, type QueueBatchHandler, QueueClient, QueueCompletionError, type QueueHandler, type QueueJob, type QueueOptions, QueueWorker, type QueueWorkerResult, type RangeLimit, RateLimitResult, RawCodec, type ReadOptions, type ReclaimOptions, type ReconnectOptions, ReconnectingExecutor, type RequestContext, type RequestContextOptions, type RequestDisposition, RequestNotSentError, RequestTimeoutError, RerouteError, type RetryOptions, type RetryPolicy, type RoutingEndpoint, type RoutingRoute, RoutingTopology, type RunStepsItem, type RunStepsManyOptions, type ScanOptions, type ScheduleCatchupPolicy, type ScheduleFireDueOptions, type ScheduleFireDueResult, type ScheduleFireOptions, type ScheduleFireResult, type ScheduleKind, type ScheduleListOptions, type ScheduleOptions, type ScheduleOverlapPolicy, type ScheduleRecord, type ScheduleState, type SearchOptions, type SearchStateMeta, type SetOptions, type SetScanResult, SetStore, type SortedSetScanResult, SortedSetStore, StaleLeaseError, StalePolicyGenerationError, type StartAndClaimOptions, StateMeta, type StateOptions, type StateRegistration, type StepContinueOptions, type StepOptions, type StepResult, type StoreCommandClient, StreamStore, type TDigestCreateOptions, type TDigestMergeOptions, TDigestStore, type TopKReserveOptions, TopKStore, type TopologyNativeAdapterOptions, TopologyNativeAdapterPool, type TransitionOptions, type ValueConfig, type WorkerConfig, type WorkerProfile, type WorkerRefillStrategy, Workflow, WorkflowClient, WorkflowContext, WorkflowFlowCommands, type WorkflowHandler, type WorkflowOptions, WorkflowStepResult, WorkflowWorker, type WorkflowWorkerResult, type XReadStream, type ZAddMember, type ZAddOptions, classifyServerError, httpCommandDisposition, isReconnectableClosedConnectionError, mapException, projectFlowQuery };
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { ConnectionOptions } from 'node:tls';
2
2
  import { C as CommandArgument, a as Command } from './internal-lEEDZpPH.js';
3
3
  import { Buffer as Buffer$1 } from 'node:buffer';
4
- import { F as FencingToken, S as StateMeta, a as FlowRecord, C as ClaimedItem, M as MaxActiveMs, R as RateLimitResult, K as KeyInfo, b as FetchOrComputeResult, c as ChildSpec, d as FencedItem, e as CreateItem, O as Outcome } from './outcomes-BbFDp3AH.js';
5
- export { f as CompleteOutcome, g as FailOutcome, h as FetchOrComputeComputeResult, i as FetchOrComputeFencedResult, j as FetchOrComputeHitResult, k as FlowMaxActiveFailure, N as NamedValueMutation, l as RetryOutcome, m as StateMetaValue, T as TransitionOutcome, n as complete, o as fail, p as isOutcome, r as retry, t as transition } from './outcomes-BbFDp3AH.js';
4
+ import { F as FencingToken, S as StateMeta, a as FlowRecord, C as ClaimedItem, M as MaxActiveMs, R as RateLimitResult, K as KeyInfo, b as FetchOrComputeResult, c as ChildSpec, d as FencedItem, e as CreateItem, A as AlreadyAppliedOutcome, W as WorkflowStepResult, O as Outcome } from './outcomes-DLJYTrX8.js';
5
+ export { f as AppliedStepOutcome, g as CompleteOutcome, h as FailOutcome, i as FetchOrComputeComputeResult, j as FetchOrComputeFencedResult, k as FetchOrComputeHitResult, l as FlowMaxActiveFailure, N as NamedValueMutation, m as ReplayedStepResult, n as RetryOutcome, o as StateMetaValue, T as TransitionOutcome, p as complete, q as fail, r as isAlreadyAppliedOutcome, s as isOutcome, t as retry, u as transition } from './outcomes-DLJYTrX8.js';
6
6
 
7
7
  declare class FerricStoreError extends Error {
8
8
  readonly code: string;
@@ -18,14 +18,16 @@ declare class FerricStoreError extends Error {
18
18
  retryAfterMs?: number;
19
19
  });
20
20
  }
21
+ type RequestDisposition = "unsent" | "possibly_sent";
21
22
  declare class HTTPTransportError extends FerricStoreError {
22
23
  readonly code = "http_transport";
24
+ readonly requestDisposition: RequestDisposition | undefined;
23
25
  readonly statusCode: number | undefined;
24
26
  constructor(message: string, options?: ConstructorParameters<typeof FerricStoreError>[1] & {
27
+ requestDisposition?: RequestDisposition;
25
28
  statusCode?: number;
26
29
  });
27
30
  }
28
- type RequestDisposition = "unsent" | "possibly_sent";
29
31
  /** Connection closure annotated with whether the current request may have reached the server. */
30
32
  declare class ConnectionClosedError extends FerricStoreError {
31
33
  readonly code = "connection_closed";
@@ -46,6 +48,15 @@ declare class RequestTimeoutError extends FerricStoreError {
46
48
  cause?: unknown;
47
49
  });
48
50
  }
51
+ /** A local validation, encoding, sizing, or lifecycle failure before submission. */
52
+ declare class RequestNotSentError extends FerricStoreError {
53
+ readonly code = "request_not_sent";
54
+ readonly requestDisposition: "unsent";
55
+ constructor(message: string, options?: {
56
+ raw?: unknown;
57
+ cause?: unknown;
58
+ });
59
+ }
49
60
  declare class FlowNotFoundError extends FerricStoreError {
50
61
  readonly code = "flow_not_found";
51
62
  }
@@ -984,6 +995,11 @@ interface MutateOptions {
984
995
  attributesMerge?: Record<string, CommandArgument>;
985
996
  attributesDelete?: string[];
986
997
  stateMeta?: StateMeta;
998
+ /**
999
+ * Explicit client-supplied command timestamp. Omit in production so each
1000
+ * request samples the current client wall clock; primarily useful for tests.
1001
+ * This is not the server response time or the client transport deadline.
1002
+ */
987
1003
  nowMs?: number;
988
1004
  returnRecord?: boolean;
989
1005
  }
@@ -996,6 +1012,7 @@ interface ExtendLeaseOptions {
996
1012
  fencingToken: FencingToken;
997
1013
  leaseMs: number;
998
1014
  partitionKey?: string;
1015
+ /** See {@link MutateOptions.nowMs}; this is a client timestamp override. */
999
1016
  nowMs?: number;
1000
1017
  returnOkOnSuccess?: boolean;
1001
1018
  }
@@ -1014,6 +1031,26 @@ interface StepContinueOptions extends Omit<LeaseMutationOptions, "returnRecord">
1014
1031
  /** Flow type to retain when returnJob requests a compact response. */
1015
1032
  type?: string;
1016
1033
  }
1034
+ /** Options for advancing an already-claimed Flow to its next logical state. */
1035
+ interface AdvanceOptions extends Omit<MutateOptions, "returnRecord"> {
1036
+ toState: string;
1037
+ leaseMs?: number;
1038
+ }
1039
+ /** Options for a closure whose result is journaled with its state transition. */
1040
+ interface StepOptions<TResult> extends AdvanceOptions {
1041
+ /** Stable operation identity. Keep this unchanged across retries. */
1042
+ name: string;
1043
+ /**
1044
+ * Runs directly in the caller or worker's JavaScript execution context. The
1045
+ * SDK awaits its result and does not submit it to a global thread pool.
1046
+ */
1047
+ run: () => TResult | PromiseLike<TResult>;
1048
+ }
1049
+ /** The renewed claim and durable result returned by a durable `step()` call. */
1050
+ interface StepResult<TResult> {
1051
+ readonly job: ClaimedItem;
1052
+ readonly result: TResult;
1053
+ }
1017
1054
  interface RunStepsItem {
1018
1055
  id: string;
1019
1056
  partitionKey?: string;
@@ -2249,7 +2286,19 @@ declare class FerricStoreClient extends FerricStoreProducerClient {
2249
2286
  }): Promise<unknown>;
2250
2287
  flowSignal(id: string, options: Parameters<FerricStoreClient["signal"]>[1]): Promise<unknown>;
2251
2288
  startAndClaim(id: string, options: StartAndClaimOptions): Promise<FlowRecord>;
2289
+ /**
2290
+ * @deprecated Low-level compatibility API. Use {@link advance} for state-only
2291
+ * continuation or {@link step} for a durable closure.
2292
+ */
2252
2293
  stepContinue(id: string, options: StepContinueOptions): Promise<FlowRecord | ClaimedItem>;
2294
+ /** Advance a claimed Flow and return its renewed claim. */
2295
+ advance(job: FlowRecord | ClaimedItem, options: AdvanceOptions): Promise<ClaimedItem>;
2296
+ /**
2297
+ * Run a closure after validating the claim, then atomically journal its
2298
+ * result and advance the Flow. A committed result is replayed without
2299
+ * invoking the closure again.
2300
+ */
2301
+ step<TResult>(job: FlowRecord | ClaimedItem, options: StepOptions<TResult>): Promise<StepResult<TResult>>;
2253
2302
  runStepsMany(items: readonly (string | RunStepsItem)[], options: RunStepsManyOptions): Promise<unknown>;
2254
2303
  transitionMany(partitionKey: string | undefined, options: {
2255
2304
  fromState: string;
@@ -2406,15 +2455,28 @@ declare class Queue {
2406
2455
  worker(options?: WorkerConfig): QueueWorker;
2407
2456
  }
2408
2457
 
2458
+ /** @internal Coordinates lease renewal around an atomic lease-rotating write. */
2459
+ interface MutationCoordinator {
2460
+ pause(): Promise<void>;
2461
+ resume(job: ClaimedItem): void;
2462
+ }
2463
+
2409
2464
  declare class WorkflowContext {
2410
2465
  readonly workflow: Workflow;
2411
2466
  readonly job: FlowRecord | ClaimedItem;
2412
- readonly stateName: string;
2413
2467
  readonly flow: WorkflowFlowCommands;
2414
- private readonly leaseJob;
2468
+ private appliedMutation;
2469
+ private currentStateName;
2470
+ private leaseJob;
2471
+ private mutationFailure?;
2472
+ private mutationPhase;
2473
+ private mutationCoordinator?;
2415
2474
  private readonly valueCache;
2416
- constructor(workflow: Workflow, job: FlowRecord | ClaimedItem, stateName: string, leaseJob?: ClaimedItem);
2475
+ constructor(workflow: Workflow, job: FlowRecord | ClaimedItem, stateName: string);
2476
+ /** @internal */
2477
+ protected configureWorkerMutation(leaseJob: ClaimedItem, coordinator: MutationCoordinator): void;
2417
2478
  get client(): FerricStoreClient;
2479
+ get stateName(): string;
2418
2480
  get id(): string;
2419
2481
  get type(): string;
2420
2482
  get state(): string;
@@ -2431,6 +2493,16 @@ declare class WorkflowContext {
2431
2493
  get parentFlowId(): string | undefined;
2432
2494
  get rootFlowId(): string | undefined;
2433
2495
  get correlationId(): string | undefined;
2496
+ advance(toState: string, options?: Omit<AdvanceOptions, "toState">): Promise<AlreadyAppliedOutcome>;
2497
+ step<TResult>(options: StepOptions<TResult>): Promise<WorkflowStepResult<TResult>>;
2498
+ /** @internal */
2499
+ get hasAppliedMutation(): boolean;
2500
+ /** @internal */
2501
+ get uncertainMutationFailure(): unknown;
2502
+ /** @internal */
2503
+ get hasUncertainMutation(): boolean;
2504
+ /** @internal */
2505
+ assertAppliedOutcome(outcome: AlreadyAppliedOutcome): void;
2434
2506
  value(name: string, defaultValue?: unknown, options?: {
2435
2507
  localCache?: boolean;
2436
2508
  }): Promise<unknown>;
@@ -2438,6 +2510,12 @@ declare class WorkflowContext {
2438
2510
  localCache?: boolean;
2439
2511
  }): Promise<Record<string, unknown>>;
2440
2512
  private valueMaxBytes;
2513
+ private durableClaim;
2514
+ private beforeCommit;
2515
+ private commitFailed;
2516
+ private committed;
2517
+ private replayed;
2518
+ private acceptJob;
2441
2519
  }
2442
2520
  declare class WorkflowFlowCommands {
2443
2521
  private readonly ctx;
@@ -2453,6 +2531,7 @@ declare class WorkflowFlowCommands {
2453
2531
  transition(toState: string, options?: Partial<Omit<Parameters<FerricStoreClient["transition"]>[1], "toState" | "fromState" | "leaseToken" | "fencingToken">> & {
2454
2532
  fromState?: string;
2455
2533
  }): Promise<FlowRecord | Buffer | unknown>;
2534
+ /** @deprecated Use `ctx.advance(toState)`. */
2456
2535
  stepContinue(toState: string, options?: Partial<Omit<StepContinueOptions, "toState" | "fromState" | "leaseToken" | "fencingToken">> & {
2457
2536
  fromState?: string;
2458
2537
  }): Promise<FlowRecord | ClaimedItem>;
@@ -2595,11 +2674,10 @@ declare class WorkflowWorker {
2595
2674
  private resolveStates;
2596
2675
  private claimState;
2597
2676
  private applyJob;
2598
- private applyHandlerError;
2599
2677
  }
2600
2678
 
2601
2679
  /** TypeScript SDK package version. */
2602
- declare const FERRICSTORE_SDK_VERSION = "0.12.0";
2680
+ declare const FERRICSTORE_SDK_VERSION = "0.13.1";
2603
2681
  /** Oldest FerricStore server supported by this breaking beta contract. */
2604
2682
  declare const FERRICSTORE_MINIMUM_SERVER_VERSION = "0.11.4";
2605
2683
  /** Native framing and opcode ABI version; unchanged by FerricStore 0.11. */
@@ -2608,4 +2686,4 @@ declare const FERRICSTORE_NATIVE_PROTOCOL_VERSION = 1;
2608
2686
  /** @deprecated Use RequestDisposition; retained for source compatibility. */
2609
2687
  type ConnectionRequestDisposition = RequestDisposition;
2610
2688
 
2611
- export { type AdminListOptions, type ApprovalListOptions, type ApprovalRequestOptions, type AttributeQueryOptions, type AutoBatchOptions, type BackoffKind, type BackpressurePolicy, BitmapStore, BloomFilterStore, type BudgetCommitOptions, type BudgetReserveOptions, COMMAND_OPCODES, type CancelOptions, ChildSpec, type CircuitOpenOptions, type ClaimDueOptions, ClaimHydrationError, type ClaimHydrationItem, ClaimedItem, type Codec, type CollectionScanOptions, Command, CommandArgument, type CommandExecutor, type CompleteJobsAndClaimJobsResult, type CompleteManyOptions, type CompleteOptions, ConnectionClosedError, type ConnectionRequestDisposition, type CountMinMergeOptions, CountMinSketchStore, CreateItem, type CreateManyOptions, type CreateOptions, CuckooFilterStore, type EffectCompensateOptions, type EffectConfirmOptions, type EffectFailOptions, type EffectReserveOptions, type EffectStatusOptions, type EndpointPolicy, type ExceptionPolicy, type ExecutePipelineOptions, type ExpiryCondition, type ExtendLeaseOptions, FERRICSTORE_MINIMUM_SERVER_VERSION, FERRICSTORE_NATIVE_PROTOCOL_VERSION, FERRICSTORE_SDK_VERSION, type FailOptions, FencedItem, FencingToken, FerricStoreClient, type FerricStoreClientFromUrlOptions, type FerricStoreClientOptions, FerricStoreError, FetchOrComputeResult, type FlowAdminRecord, FlowAlreadyExistsError, type FlowBatchCompletedItem, FlowBatchError, type FlowEventProjectionField, type FlowExplainCapabilities, type FlowExplainResult, FlowNotFoundError, type FlowPolicyBackoffKind, type FlowPolicyBackoffSnapshot, type FlowPolicyOptions, type FlowPolicyRetentionSnapshot, type FlowPolicyRetrySnapshot, type FlowPolicySnapshot, type FlowPolicyStateSnapshot, FlowProjection, type FlowProjectionField, type FlowProjectionShape, type FlowQueryCountResult, FlowQueryError, type FlowQueryErrorPosition, type FlowQueryIndex, type FlowQueryIndexBuild, type FlowQueryIndexCoverage, type FlowQueryIndexField, type FlowQueryIndexFormat, type FlowQueryIndexProgress, type FlowQueryIndexRegistry, type FlowQueryIndexRetirement, type FlowQueryIndexServiceState, type FlowQueryIndexServices, type FlowQueryIndexStatistics, type FlowQueryIndexStatus, type FlowQueryIndexValidation, type FlowQueryInteger, type FlowQueryPage, type FlowQueryParameter, type FlowQueryParameters, type FlowQueryQuality, type FlowQueryRecord, type FlowQueryRecordsResult, type FlowQueryResult, type FlowQueryUsage, FlowRecord, type FlowRunProjectionField, type FlowStateMode, type FlowStatePolicy, type FlowStatePolicyLike, type FlowStatsOptions, FlowWrongStateError, type GeoAddOptions, type GeoMember, GeoStore, type GetExOptions, type GovernanceLedgerOptions, HTTPAdapter, type HTTPAdapterOptions, type HTTPCommandDisposition, HTTPTransportError, type HashScanResult, HashStore, type HistoryOptions, HyperLogLogStore, type IntegerReply, InvalidCommandError, type InvocationCreateOptions, JsonCodec, KeyInfo, KeyValueStore, type LeaseMutationOptions, LeaseRenewalError, type LimitAmountOptions, type LimitLeaseOptions, type LimitListOptions, type LimitReleaseOptions, ListStore, LockHeldError, LockNotOwnedError, MAX_FLOW_POLICY_GENERATION, type ManagementPairs, MaxActiveMs, type MutateOptions, NativeAdapter, type NativeAdapterOptions, type NativeClientOptions, type NativeProtocolEvent, Outcome, OverloadedError, type ProtocolCommand, Queue, type QueueBatchHandler, QueueClient, QueueCompletionError, type QueueHandler, type QueueJob, type QueueOptions, QueueWorker, type QueueWorkerResult, type RangeLimit, RateLimitResult, RawCodec, type ReadOptions, type ReclaimOptions, type ReconnectOptions, ReconnectingExecutor, type RequestContext, type RequestContextOptions, type RequestDisposition, RequestTimeoutError, RerouteError, type RetryOptions, type RetryPolicy, type RoutingEndpoint, type RoutingRoute, RoutingTopology, type RunStepsItem, type RunStepsManyOptions, type ScanOptions, type ScheduleCatchupPolicy, type ScheduleFireDueOptions, type ScheduleFireDueResult, type ScheduleFireOptions, type ScheduleFireResult, type ScheduleKind, type ScheduleListOptions, type ScheduleOptions, type ScheduleOverlapPolicy, type ScheduleRecord, type ScheduleState, type SearchOptions, type SearchStateMeta, type SetOptions, type SetScanResult, SetStore, type SortedSetScanResult, SortedSetStore, StaleLeaseError, StalePolicyGenerationError, type StartAndClaimOptions, StateMeta, type StateOptions, type StateRegistration, type StepContinueOptions, type StoreCommandClient, StreamStore, type TDigestCreateOptions, type TDigestMergeOptions, TDigestStore, type TopKReserveOptions, TopKStore, type TopologyNativeAdapterOptions, TopologyNativeAdapterPool, type TransitionOptions, type ValueConfig, type WorkerConfig, type WorkerProfile, type WorkerRefillStrategy, Workflow, WorkflowClient, WorkflowContext, WorkflowFlowCommands, type WorkflowHandler, type WorkflowOptions, WorkflowWorker, type WorkflowWorkerResult, type XReadStream, type ZAddMember, type ZAddOptions, classifyServerError, httpCommandDisposition, isReconnectableClosedConnectionError, mapException, projectFlowQuery };
2689
+ export { type AdminListOptions, type AdvanceOptions, AlreadyAppliedOutcome, type ApprovalListOptions, type ApprovalRequestOptions, type AttributeQueryOptions, type AutoBatchOptions, type BackoffKind, type BackpressurePolicy, BitmapStore, BloomFilterStore, type BudgetCommitOptions, type BudgetReserveOptions, COMMAND_OPCODES, type CancelOptions, ChildSpec, type CircuitOpenOptions, type ClaimDueOptions, ClaimHydrationError, type ClaimHydrationItem, ClaimedItem, type Codec, type CollectionScanOptions, Command, CommandArgument, type CommandExecutor, type CompleteJobsAndClaimJobsResult, type CompleteManyOptions, type CompleteOptions, ConnectionClosedError, type ConnectionRequestDisposition, type CountMinMergeOptions, CountMinSketchStore, CreateItem, type CreateManyOptions, type CreateOptions, CuckooFilterStore, type EffectCompensateOptions, type EffectConfirmOptions, type EffectFailOptions, type EffectReserveOptions, type EffectStatusOptions, type EndpointPolicy, type ExceptionPolicy, type ExecutePipelineOptions, type ExpiryCondition, type ExtendLeaseOptions, FERRICSTORE_MINIMUM_SERVER_VERSION, FERRICSTORE_NATIVE_PROTOCOL_VERSION, FERRICSTORE_SDK_VERSION, type FailOptions, FencedItem, FencingToken, FerricStoreClient, type FerricStoreClientFromUrlOptions, type FerricStoreClientOptions, FerricStoreError, FetchOrComputeResult, type FlowAdminRecord, FlowAlreadyExistsError, type FlowBatchCompletedItem, FlowBatchError, type FlowEventProjectionField, type FlowExplainCapabilities, type FlowExplainResult, FlowNotFoundError, type FlowPolicyBackoffKind, type FlowPolicyBackoffSnapshot, type FlowPolicyOptions, type FlowPolicyRetentionSnapshot, type FlowPolicyRetrySnapshot, type FlowPolicySnapshot, type FlowPolicyStateSnapshot, FlowProjection, type FlowProjectionField, type FlowProjectionShape, type FlowQueryCountResult, FlowQueryError, type FlowQueryErrorPosition, type FlowQueryIndex, type FlowQueryIndexBuild, type FlowQueryIndexCoverage, type FlowQueryIndexField, type FlowQueryIndexFormat, type FlowQueryIndexProgress, type FlowQueryIndexRegistry, type FlowQueryIndexRetirement, type FlowQueryIndexServiceState, type FlowQueryIndexServices, type FlowQueryIndexStatistics, type FlowQueryIndexStatus, type FlowQueryIndexValidation, type FlowQueryInteger, type FlowQueryPage, type FlowQueryParameter, type FlowQueryParameters, type FlowQueryQuality, type FlowQueryRecord, type FlowQueryRecordsResult, type FlowQueryResult, type FlowQueryUsage, FlowRecord, type FlowRunProjectionField, type FlowStateMode, type FlowStatePolicy, type FlowStatePolicyLike, type FlowStatsOptions, FlowWrongStateError, type GeoAddOptions, type GeoMember, GeoStore, type GetExOptions, type GovernanceLedgerOptions, HTTPAdapter, type HTTPAdapterOptions, type HTTPCommandDisposition, HTTPTransportError, type HashScanResult, HashStore, type HistoryOptions, HyperLogLogStore, type IntegerReply, InvalidCommandError, type InvocationCreateOptions, JsonCodec, KeyInfo, KeyValueStore, type LeaseMutationOptions, LeaseRenewalError, type LimitAmountOptions, type LimitLeaseOptions, type LimitListOptions, type LimitReleaseOptions, ListStore, LockHeldError, LockNotOwnedError, MAX_FLOW_POLICY_GENERATION, type ManagementPairs, MaxActiveMs, type MutateOptions, NativeAdapter, type NativeAdapterOptions, type NativeClientOptions, type NativeProtocolEvent, Outcome, OverloadedError, type ProtocolCommand, Queue, type QueueBatchHandler, QueueClient, QueueCompletionError, type QueueHandler, type QueueJob, type QueueOptions, QueueWorker, type QueueWorkerResult, type RangeLimit, RateLimitResult, RawCodec, type ReadOptions, type ReclaimOptions, type ReconnectOptions, ReconnectingExecutor, type RequestContext, type RequestContextOptions, type RequestDisposition, RequestNotSentError, RequestTimeoutError, RerouteError, type RetryOptions, type RetryPolicy, type RoutingEndpoint, type RoutingRoute, RoutingTopology, type RunStepsItem, type RunStepsManyOptions, type ScanOptions, type ScheduleCatchupPolicy, type ScheduleFireDueOptions, type ScheduleFireDueResult, type ScheduleFireOptions, type ScheduleFireResult, type ScheduleKind, type ScheduleListOptions, type ScheduleOptions, type ScheduleOverlapPolicy, type ScheduleRecord, type ScheduleState, type SearchOptions, type SearchStateMeta, type SetOptions, type SetScanResult, SetStore, type SortedSetScanResult, SortedSetStore, StaleLeaseError, StalePolicyGenerationError, type StartAndClaimOptions, StateMeta, type StateOptions, type StateRegistration, type StepContinueOptions, type StepOptions, type StepResult, type StoreCommandClient, StreamStore, type TDigestCreateOptions, type TDigestMergeOptions, TDigestStore, type TopKReserveOptions, TopKStore, type TopologyNativeAdapterOptions, TopologyNativeAdapterPool, type TransitionOptions, type ValueConfig, type WorkerConfig, type WorkerProfile, type WorkerRefillStrategy, Workflow, WorkflowClient, WorkflowContext, WorkflowFlowCommands, type WorkflowHandler, type WorkflowOptions, WorkflowStepResult, WorkflowWorker, type WorkflowWorkerResult, type XReadStream, type ZAddMember, type ZAddOptions, classifyServerError, httpCommandDisposition, isReconnectableClosedConnectionError, mapException, projectFlowQuery };