RpcClient
Client
Signature
type FromGroup<Group, E = never> = RpcClient<RpcGroup.Rpcs<Group>, E>Signature
declare const make: <Rpcs extends Rpc.Any, Flatten extends boolean = false>(group: RpcGroup.RpcGroup<Rpcs>, options?: { readonly disableTracing?: boolean; readonly flatten?: Flatten; readonly generateRequestId?: () => RequestId; readonly spanAttributes?: Record<string, unknown>; readonly spanPrefix?: string;}) => Effect.Effect<Flatten extends true ? RpcClient.Flat<Rpcs, RpcClientError> : RpcClient<Rpcs, RpcClientError>, never, Protocol | Rpc.MiddlewareClient<Rpcs> | Scope.Scope>makeNoSerialization
Added in v1.0.0
Source
Signature
declare const makeNoSerialization: <Rpcs extends Rpc.Any, E, Flatten extends boolean = false>(group: RpcGroup.RpcGroup<Rpcs>, options: { readonly disableTracing?: boolean; readonly flatten?: Flatten; readonly generateRequestId?: () => RequestId; readonly onFromClient: (options: { readonly context: Context.Context<never>; readonly discard: boolean; readonly message: FromClient<Rpcs>; }) => Effect.Effect<void, E>; readonly spanAttributes?: Record<string, unknown>; readonly spanPrefix?: string; readonly supportsAck?: boolean;}) => Effect.Effect<{ readonly client: Flatten extends true ? RpcClient.Flat<Rpcs, E> : RpcClient<Rpcs, E>; readonly write: (message: FromServer<Rpcs>) => Effect.Effect<void>;}, never, Scope.Scope | Rpc.MiddlewareClient<Rpcs>>Signature
type RpcClient<Rpcs extends Rpc.Any, E = never> = Schema.Simplify<RpcClient.From<RpcClient.NonPrefixed<Rpcs>, E, ""> & { [CurrentPrefix in RpcClient.Prefixes<Rpcs>]: RpcClient.From<RpcClient.Prefixed<Rpcs, CurrentPrefix>, E, CurrentPrefix> }>Headers
currentHeaders
Added in v1.0.0
Source
Signature
declare const currentHeaders: FiberRef.FiberRef<Headers.Headers>withHeaders
Added in v1.0.0
Source
Signature
declare const withHeaders: { (headers: Input): <A, E, R>(effect: Effect<A, E, R>) => Effect<A, E, R>; <A, E, R>(effect: Effect<A, E, R>, headers: Input): Effect<A, E, R>;}withHeadersEffect
Added in v1.0.0
Source
Signature
declare const withHeadersEffect: { <E2, R2>(headers: Effect<Input, E2, R2>): <A, E, R>(effect: Effect<A, E, R>) => Effect<A, E2 | E, R2 | R>; <A, E, R, E2, R2>(effect: Effect<A, E, R>, headers: Effect<Input, E2, R2>): Effect<A, E | E2, R | R2>;}Protocol
layerProtocolHttp
Added in v1.0.0
Source
Signature
declare function layerProtocolHttp(options: { readonly transformClient?: <E, R>(client: With<E, R>) => With<E, R>; readonly url: string;}): Layer<Protocol, never, any>layerProtocolSocket
Added in v1.0.0
Source
Signature
declare function layerProtocolSocket(options?: { readonly retrySchedule?: Schedule<any, SocketError, never, never>; readonly retryTransientErrors?: boolean;}): Layer<Protocol, never, any>layerProtocolWorker
Added in v1.0.0
Source
Signature
declare function layerProtocolWorker(options: { readonly concurrency?: number; readonly size: number; readonly targetUtilization?: number;} | { readonly concurrency?: number; readonly maxSize: number; readonly minSize: number; readonly targetUtilization?: number; readonly timeToLive: DurationInput;}): Layer<Protocol, WorkerError, any>makeProtocolHttp
Added in v1.0.0
Source
Signature
declare function makeProtocolHttp(client: HttpClient): Effect<any, never, RpcSerialization>makeProtocolSocket
Added in v1.0.0
Source
Signature
declare function makeProtocolSocket(options?: { readonly retrySchedule?: Schedule<any, SocketError, never, never>; readonly retryTransientErrors?: boolean;}): Effect<any, never, any>makeProtocolWorker
Added in v1.0.0
Source
Signature
declare function makeProtocolWorker(options: { readonly concurrency?: number; readonly size: number; readonly targetUtilization?: number;} | { readonly concurrency?: number; readonly maxSize: number; readonly minSize: number; readonly targetUtilization?: number; readonly timeToLive: DurationInput;}): Effect<any, WorkerError, any>Signature
declare class Protocol extends any { constructor(); static make: <EX, RX>(f: (write: any) => Effect<Omit<any, "run">, EX, RX>) => Effect<any, EX, RX>;}