Skip to content
Effect Days 2026 Get your ticket

Ndjson

16 exports Added in v1.0.0 Source

Combinators

duplex

Added in v1.0.0 Source

Signature

declare const duplex: {
(options?: NdjsonOptions): <R, IE, OE, OutDone, InDone>(self: Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<Uint8Array<ArrayBufferLike>>, OE, NdjsonError | IE, OutDone, InDone, R>) => Channel<Chunk<unknown>, Chunk<unknown>, NdjsonError | OE, IE, OutDone, InDone, R>;
<R, IE, OE, OutDone, InDone>(self: Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<Uint8Array<ArrayBufferLike>>, OE, NdjsonError | IE, OutDone, InDone, R>, options?: NdjsonOptions): Channel<Chunk<unknown>, Chunk<unknown>, NdjsonError | OE, IE, OutDone, InDone, R>;
}

duplexSchema

Added in v1.0.0 Source

Signature

declare const duplexSchema: {
<IA, II, IR, OA, OI, OR>(options: Partial<NdjsonOptions> & {
readonly inputSchema: Schema.Schema<IA, II, IR>;
readonly outputSchema: Schema.Schema<OA, OI, OR>;
}): <R, InErr, OutErr, OutDone, InDone>(self: Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<Uint8Array<ArrayBufferLike>>, OutErr, any, OutDone, InDone, R>) => Channel<Chunk<OA>, Chunk<IA>, any, InErr, OutDone, InDone, IR | OR | R>;
<R, InErr, OutErr, OutDone, InDone, IA, II, IR, OA, OI, OR>(self: Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<Uint8Array<ArrayBufferLike>>, OutErr, any, OutDone, InDone, R>, options: Partial<NdjsonOptions> & {
readonly inputSchema: Schema.Schema<IA, II, IR>;
readonly outputSchema: Schema.Schema<OA, OI, OR>;
}): Channel<Chunk<OA>, Chunk<IA>, any, InErr, OutDone, InDone, R | IR | OR>;
}

Signature

declare const duplexSchemaString: {
<IA, II, IR, OA, OI, OR>(options: Partial<NdjsonOptions> & {
readonly inputSchema: Schema.Schema<IA, II, IR>;
readonly outputSchema: Schema.Schema<OA, OI, OR>;
}): <R, InErr, OutErr, OutDone, InDone>(self: Channel<Chunk<string>, Chunk<string>, OutErr, any, OutDone, InDone, R>) => Channel<Chunk<OA>, Chunk<IA>, any, InErr, OutDone, InDone, IR | OR | R>;
<R, InErr, OutErr, OutDone, InDone, IA, II, IR, OA, OI, OR>(self: Channel<Chunk<string>, Chunk<string>, OutErr, any, OutDone, InDone, R>, options: Partial<NdjsonOptions> & {
readonly inputSchema: Schema.Schema<IA, II, IR>;
readonly outputSchema: Schema.Schema<OA, OI, OR>;
}): Channel<Chunk<OA>, Chunk<IA>, any, InErr, OutDone, InDone, R | IR | OR>;
}

duplexString

Added in v1.0.0 Source

Signature

declare const duplexString: {
(options?: NdjsonOptions): <R, IE, OE, OutDone, InDone>(self: Channel<Chunk<string>, Chunk<string>, OE, NdjsonError | IE, OutDone, InDone, R>) => Channel<Chunk<unknown>, Chunk<unknown>, NdjsonError | OE, IE, OutDone, InDone, R>;
<R, IE, OE, OutDone, InDone>(self: Channel<Chunk<string>, Chunk<string>, OE, NdjsonError | IE, OutDone, InDone, R>, options?: NdjsonOptions): Channel<Chunk<unknown>, Chunk<unknown>, NdjsonError | OE, IE, OutDone, InDone, R>;
}

Constructors

pack

Added in v1.0.0 Source

Signature

declare function pack<IE = never, Done = unknown>(): Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<unknown>, NdjsonError | IE, IE, Done, Done>

packSchema

Added in v1.0.0 Source

Signature

declare function packSchema<A, I, R>(schema: any): <IE = never, Done = unknown>() => Channel<Chunk<Uint8Array<ArrayBufferLike>>, Chunk<A>, any, IE, Done, Done, R>

Signature

declare function packSchemaString<A, I, R>(schema: any): <IE = never, Done = unknown>() => Channel<Chunk<string>, Chunk<A>, any, IE, Done, Done, R>

packString

Added in v1.0.0 Source

Signature

declare function packString<IE = never, Done = unknown>(): Channel<Chunk<string>, Chunk<unknown>, NdjsonError | IE, IE, Done, Done>

unpack

Added in v1.0.0 Source

Signature

declare function unpack<IE = never, Done = unknown>(options?: NdjsonOptions): Channel<Chunk<unknown>, Chunk<Uint8Array<ArrayBufferLike>>, NdjsonError | IE, IE, Done, Done>

unpackSchema

Added in v1.0.0 Source

Signature

declare function unpackSchema<A, I, R>(schema: any): <IE = never, Done = unknown>(options?: NdjsonOptions) => Channel<Chunk<A>, Chunk<Uint8Array<ArrayBufferLike>>, any, IE, Done, Done, R>

Signature

declare function unpackSchemaString<A, I, R>(schema: any): <IE = never, Done = unknown>(options?: NdjsonOptions) => Channel<Chunk<A>, Chunk<string>, any, IE, Done, Done, R>

unpackString

Added in v1.0.0 Source

Signature

declare function unpackString<IE = never, Done = unknown>(options?: NdjsonOptions): Channel<Chunk<unknown>, Chunk<string>, NdjsonError | IE, IE, Done, Done>

Errors

NdjsonError

Added in v1.0.0 Source

Signature

declare class NdjsonError extends YieldableError<this> & Record<typeof ErrorTypeId, typeof ErrorTypeId> & {
readonly _tag: "NdjsonError";
} & Readonly<{
readonly cause: unknown;
readonly reason: "Pack" | "Unpack";
}> {
constructor(args: {
readonly cause: unknown;
readonly reason: "Pack" | "Unpack";
});
message: "Pack" | "Unpack";
}

Models

NdjsonOptions interface

Added in v1.0.0 Source

Represents a set of options which can be used to control how the newline delimited JSON is handled.

Signature

interface NdjsonOptions {
readonly ignoreEmptyLines?: boolean;
}

Type Ids

ErrorTypeId

Added in v1.0.0 Source

Signature

declare const ErrorTypeId: unique symbol

NdjsonErrorTypeId type

Added in v1.0.0 Source

Signature

type NdjsonErrorTypeId = typeof ErrorTypeId