MessageStorage
Constructors
Signature
declare function make(storage: Omit<MessageStorage["Type"], "registerReplyHandler" | "unregisterReplyHandler" | "unregisterShardReplyHandlers">): Effect<any> Since v1.0.0 Source
Signature
declare const makeEncoded: (encoded: Encoded) => Effect.Effect<MessageStorage["Type"], never, Snowflake.Generator>Constructors
Context
Since v1.0.0 Source
Signature
declare class MessageStorage extends any { constructor();}Encoded
Signature
type Encoded = { readonly clearAddress: (address: EntityAddress) => Effect.Effect<void, PersistenceError>; readonly clearReplies: (requestId: Snowflake.Snowflake) => Effect.Effect<void, PersistenceError>; readonly repliesFor: (requestIds: Arr.NonEmptyArray<string>) => Effect.Effect<Array<Reply.ReplyEncoded<any>>, PersistenceError>; readonly repliesForUnfiltered: (requestIds: Arr.NonEmptyArray<string>) => Effect.Effect<Array<Reply.ReplyEncoded<any>>, PersistenceError>; readonly requestIdForPrimaryKey: (primaryKey: string) => Effect.Effect<Option.Option<Snowflake.Snowflake>, PersistenceError>; readonly resetAddress: (address: EntityAddress) => Effect.Effect<void, PersistenceError>; readonly resetShards: (shardIds: Arr.NonEmptyArray<string>) => Effect.Effect<void, PersistenceError>; readonly saveEnvelope: (options: { readonly deliverAt: number | null; readonly envelope: Envelope.Envelope.Encoded; readonly primaryKey: string | null; }) => Effect.Effect<SaveResult.Encoded, PersistenceError>; readonly saveReply: (reply: Reply.ReplyEncoded<any>) => Effect.Effect<void, PersistenceError>; readonly unprocessedMessages: (shardIds: Arr.NonEmptyArray<string>, now: number) => Effect.Effect<Array<{ readonly envelope: Envelope.Envelope.Encoded; readonly lastSentReply: Option.Option<Reply.ReplyEncoded<any>>; }>, PersistenceError>; readonly unprocessedMessagesById: (messageIds: Arr.NonEmptyArray<Snowflake.Snowflake>, now: number) => Effect.Effect<Array<{ readonly envelope: Envelope.Envelope.Encoded; readonly lastSentReply: Option.Option<Reply.ReplyEncoded<any>>; }>, PersistenceError>;} Since v1.0.0 Source
Signature
type EncodedRepliesOptions<A> = { readonly cursor: Option.Option<A>; readonly existingRequests: Array<string>; readonly newRequests: Array<string>;} Since v1.0.0 Source
Signature
type EncodedUnprocessedOptions<A> = { readonly cursor: Option.Option<A>; readonly existingShards: Array<number>; readonly newShards: Array<number>;}Layers
Since v1.0.0 Source
Signature
declare const layerMemory: Layer.Layer<MessageStorage | MemoryDriver, never, ShardingConfig>Signature
declare const layerNoop: Layer.Layer<MessageStorage>Memory
Since v1.0.0 Source
Signature
declare class MemoryDriver extends any { constructor();}MemoryEntry
type Since v1.0.0 Source
Signature
type MemoryEntry = { deliverAt: number | null; readonly envelope: Envelope.Request.Encoded; lastReceivedChunk: Option.Option<Reply.ChunkEncoded<any>>; replies: Array<Reply.ReplyEncoded<any>>;}SaveResult
Since v1.0.0 Source
Signature
declare const SaveResult: GenericConstructor<Constructor> Since v1.0.0 Source
SaveResult
type Since v1.0.0 Source
Signature
type SaveResult<R extends Rpc.Any> = SaveResult.Success | SaveResult.Duplicate<R> Since v1.0.0 Source
Signature
declare const SaveResultEncoded: Constructor<Encoded>