Skip to content

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;