Message
Incoming
Signature
type Incoming<R extends Rpc.Any> = IncomingRequest<R> | IncomingEnvelope;IncomingEnvelope
Added in v1.0.0
Source
Signature
declare class IncomingEnvelope extends Readonly<{
readonly _tag: "IncomingEnvelope";
readonly envelope: AckChunk | Interrupt;
}> & {
readonly _tag: "IncomingEnvelope";
} & Pipeable {
constructor(args: {
readonly envelope: AckChunk | Interrupt;
});
}IncomingLocal type
Added in v1.0.0
Source
Signature
type IncomingLocal<R extends Rpc.Any> = IncomingRequestLocal<R> | IncomingEnvelope;incomingLocalFromOutgoing
Added in v1.0.0
Source
Signature
declare function incomingLocalFromOutgoing<R extends Any>(self: Outgoing<R>): IncomingLocal<R>;IncomingRequest
Added in v1.0.0
Source
Signature
declare class IncomingRequest<R extends Rpc.Any> extends Readonly<{
readonly envelope: PartialEncoded;
readonly lastSentReply: Option<ReplyEncoded<R>>;
readonly respond: (reply: ReplyWithContext<R>) => Effect<void, MalformedMessage | PersistenceError>;
}> & {
readonly _tag: "IncomingRequest";
} & Pipeable {
constructor<R extends Any>(args: {
readonly envelope: PartialEncoded;
readonly lastSentReply: Option<ReplyEncoded<R>>;
readonly respond: (reply: ReplyWithContext<R>) => Effect<void, MalformedMessage | PersistenceError>;
});
}Outgoing
IncomingRequestLocal
Added in v1.0.0
Source
Signature
declare class IncomingRequestLocal<R extends Rpc.Any> extends Readonly<{
readonly envelope: Request<R>;
readonly lastSentReply: Option<Reply<R>>;
readonly respond: (reply: Reply<R>) => Effect<void, MalformedMessage | PersistenceError>;
}> & {
readonly _tag: "IncomingRequestLocal";
} & Pipeable {
constructor<R extends Any>(args: {
readonly envelope: Request<R>;
readonly lastSentReply: Option<Reply<R>>;
readonly respond: (reply: Reply<R>) => Effect<void, MalformedMessage | PersistenceError>;
});
}Signature
type Outgoing<R extends Rpc.Any> = OutgoingRequest<R> | OutgoingEnvelope;OutgoingEnvelope
Added in v1.0.0
Source
Signature
declare class OutgoingEnvelope extends Readonly<{
readonly envelope: AckChunk | Interrupt;
readonly rpc: AnyWithProps;
}> & {
readonly _tag: "OutgoingEnvelope";
} & Pipeable {
constructor(args: {
readonly envelope: AckChunk | Interrupt;
readonly rpc: AnyWithProps;
});
static interrupt(options: {
readonly address: EntityAddress;
readonly id: Snowflake;
readonly requestId: Snowflake;
}): OutgoingEnvelope;
}OutgoingRequest
Added in v1.0.0
Source
Signature
declare class OutgoingRequest<R extends Rpc.Any> extends Readonly<{
readonly context: Context<Context<R>>;
readonly envelope: Request<R>;
readonly lastReceivedReply: Option<Reply<R>>;
readonly respond: (reply: Reply<R>) => Effect<void>;
readonly rpc: R;
}> & {
readonly _tag: "OutgoingRequest";
} & Pipeable {
constructor<R extends Any>(args: {
readonly context: Context<Context<R>>;
readonly envelope: Request<R>;
readonly lastReceivedReply: Option<Reply<R>>;
readonly respond: (reply: Reply<R>) => Effect<void>;
readonly rpc: R;
});
encodedCache?: PartialEncoded;
}Serialization / Deserialization
deserializeLocal
Added in v1.0.0
Source
Signature
declare function deserializeLocal<Rpc extends Any>(
self: Outgoing<Rpc>,
encoded: PartialEncoded,
): Effect<IncomingLocal<Rpc>, MalformedMessage>;Signature
declare function serialize<Rpc extends Any>(
message: Outgoing<Rpc>,
): Effect<PartialEncoded, MalformedMessage>;serializeEnvelope
Added in v1.0.0
Source
Signature
declare function serializeEnvelope<Rpc extends Any>(
message: Outgoing<Rpc>,
): Effect<Encoded, MalformedMessage>;serializeRequest
Added in v1.0.0
Source
Signature
declare function serializeRequest<Rpc extends Any>(
self: OutgoingRequest<Rpc>,
): Effect<PartialEncoded, MalformedMessage>;