| import * as Schema from "../../Schema.ts"; | |
| import * as Msgpack from "../encoding/Msgpack.ts"; | |
| /** | |
| * Unique type identifier used to mark event log event definitions. | |
| * | |
| * @category type IDs | |
| * @since 4.0.0 | |
| */ | |
| export type TypeId = "~effect/eventlog/Event"; | |
| /** | |
| * Runtime type identifier used to mark event log event definitions. | |
| * | |
| * @category type IDs | |
| * @since 4.0.0 | |
| */ | |
| export declare const TypeId: TypeId; | |
| /** | |
| * Returns `true` when a value is an event log event definition. | |
| * | |
| * @category guards | |
| * @since 4.0.0 | |
| */ | |
| export declare const isEvent: (u: unknown) => u is Event<any, any, any, any>; | |
| /** | |
| * Definition of an event type that can be written to an `EventLog`. | |
| * | |
| * **Details** | |
| * | |
| * An event definition contains its tag, primary-key function, payload schema, | |
| * MessagePack payload schema, success schema, and error schema. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export interface Event<out Tag extends string, in out Payload extends Schema.Top = typeof Schema.Void, in out Success extends Schema.Top = typeof Schema.Void, in out Error extends Schema.Top = typeof Schema.Never> { | |
| readonly [TypeId]: TypeId; | |
| readonly tag: Tag; | |
| readonly primaryKey: (payload: Schema.Schema.Type<Payload>) => string; | |
| readonly payload: Payload; | |
| readonly payloadMsgPack: Msgpack.schema<Payload>; | |
| readonly success: Success; | |
| readonly error: Error; | |
| } | |
| /** | |
| * Marker service associated with the handler for an event tag. | |
| * | |
| * **Details** | |
| * | |
| * `ToService` derives this service from an `Event` so handler layers can expose | |
| * which events they implement. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export interface EventHandler<in out Tag extends string> { | |
| readonly _: unique symbol; | |
| readonly tag: Tag; | |
| } | |
| /** | |
| * Type-erased event log event definition. | |
| * | |
| * **Details** | |
| * | |
| * It preserves the runtime tag, primary-key function, payload schema, success | |
| * schema, and error schema without retaining the original type parameters. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export interface Any { | |
| readonly [TypeId]: TypeId; | |
| readonly tag: string; | |
| readonly primaryKey: (payload: any) => string; | |
| readonly payload: Schema.Top; | |
| readonly payloadMsgPack: Msgpack.schema<Schema.Top>; | |
| readonly success: Schema.Top; | |
| readonly error: Schema.Top; | |
| } | |
| /** | |
| * Type-erased event definition with its runtime properties available | |
| * structurally. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export interface AnyWithProps extends Any { | |
| } | |
| /** | |
| * Derives the handler service marker for an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ToService<A> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? EventHandler<_Tag> : never; | |
| /** | |
| * Extracts the tag string from an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type Tag<A> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Tag : never; | |
| /** | |
| * Extracts the error schema from an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ErrorSchema<A extends Any> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Error : never; | |
| /** | |
| * Decoded error value type for an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type Error<A extends Any> = Schema.Schema.Type<ErrorSchema<A>>; | |
| /** | |
| * Returns an event definition type whose error schema also includes the provided | |
| * error schema. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type AddError<A extends Any, Error extends Schema.Top> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? Event<_Tag, _Payload, _Success, _Error | Error> : never; | |
| /** | |
| * Extracts the payload schema from an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type PayloadSchema<A extends Any> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Payload : never; | |
| /** | |
| * Extracts the payload schema for the event in a union with the specified tag. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type PayloadSchemaWithTag<A extends Any, Tag extends string> = A extends Event<Tag, infer _Payload, infer _Success, infer _Error> ? _Payload : never; | |
| /** | |
| * Decoded payload value type for an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type Payload<A extends Any> = Schema.Schema.Type<PayloadSchema<A>>; | |
| /** | |
| * Tagged payload value for an event definition. | |
| * | |
| * **Details** | |
| * | |
| * The result contains `_tag` set to the event tag and `payload` set to the | |
| * decoded payload value. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type TaggedPayload<A extends Any> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? { | |
| readonly _tag: _Tag; | |
| readonly payload: Schema.Schema.Type<_Payload>; | |
| } : never; | |
| /** | |
| * Extracts the success schema from an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type SuccessSchema<A extends Any> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Success : never; | |
| /** | |
| * Decoded success value type for an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type Success<A extends Any> = Schema.Schema.Type<SuccessSchema<A>>; | |
| /** | |
| * Schema services required by a client for an event definition. | |
| * | |
| * **Details** | |
| * | |
| * This includes payload encoding services plus success and error decoding | |
| * services. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ServicesClient<A> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Payload["EncodingServices"] | _Success["DecodingServices"] | _Error["DecodingServices"] : never; | |
| /** | |
| * Schema services required by a server for an event definition. | |
| * | |
| * **Details** | |
| * | |
| * This includes payload decoding services plus success and error encoding | |
| * services. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ServicesServer<A> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Payload["DecodingServices"] | _Success["EncodingServices"] | _Error["EncodingServices"] : never; | |
| /** | |
| * All schema services required to encode and decode the payload, success, and | |
| * error schemas for an event definition. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type Services<A> = A extends Event<infer _Tag, infer _Payload, infer _Success, infer _Error> ? _Payload["DecodingServices"] | _Success["EncodingServices"] | _Error["EncodingServices"] | _Payload["EncodingServices"] | _Success["DecodingServices"] | _Error["DecodingServices"] : never; | |
| /** | |
| * Extracts the event definition with the specified tag from an event union. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type WithTag<Events extends Any, Tag extends string> = Extract<Events, { | |
| readonly tag: Tag; | |
| }>; | |
| /** | |
| * Removes event definitions with the specified tag from an event union. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ExcludeTag<Events extends Any, Tag extends string> = Exclude<Events, { | |
| readonly tag: Tag; | |
| }>; | |
| /** | |
| * Decoded payload value type for the event in a union with the specified tag. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type PayloadWithTag<Events extends Any, Tag extends string> = Payload<WithTag<Events, Tag>>; | |
| /** | |
| * Decoded success value type for the event in a union with the specified tag. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type SuccessWithTag<Events extends Any, Tag extends string> = Success<WithTag<Events, Tag>>; | |
| /** | |
| * Decoded error value type for the event in a union with the specified tag. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ErrorWithTag<Events extends Any, Tag extends string> = Error<WithTag<Events, Tag>>; | |
| /** | |
| * Client-side schema services required for the event in a union with the specified | |
| * tag. | |
| * | |
| * @category models | |
| * @since 4.0.0 | |
| */ | |
| export type ServicesClientWithTag<Events extends Any, Tag extends string> = ServicesClient<WithTag<Events, Tag>>; | |
| /** | |
| * Creates an event log event definition. | |
| * | |
| * **Details** | |
| * | |
| * If omitted, the payload and success schemas default to `Schema.Void`, the error | |
| * schema defaults to `Schema.Never`, and the MessagePack payload schema is derived | |
| * from the payload schema. | |
| * | |
| * @category constructors | |
| * @since 4.0.0 | |
| */ | |
| export declare function make<Tag extends string, Payload extends Schema.Top = typeof Schema.Void, Success extends Schema.Top = typeof Schema.Void, Error extends Schema.Top = typeof Schema.Never>(options: { | |
| readonly tag: Tag; | |
| readonly primaryKey: (payload: Schema.Schema.Type<Payload>) => string; | |
| readonly payload?: Payload | undefined; | |
| readonly success?: Success | undefined; | |
| readonly error?: Error | undefined; | |
| }): Event<Tag, Payload, Success, Error>; | |
| /** | |
| * Adds another error schema to an event definition. | |
| * | |
| * **Details** | |
| * | |
| * The returned event keeps the same tag, primary key, payload, and success schema | |
| * while replacing the error schema with a union of the existing and new errors. | |
| * | |
| * @category constructors | |
| * @since 4.0.0 | |
| */ | |
| export declare function addError<A extends Any, Error2 extends Schema.Top>(event: A, error: Error2): AddError<A, Error2>; | |
| //# sourceMappingURL=Event.d.ts.map |
Xet Storage Details
- Size:
- 9.15 kB
- Xet hash:
- 08b011c793fc2b8b77c0f2924219b4a47467f1e2ede6163f505dd9489c5be9cc
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.