Skip to main content Link Search Menu Expand Document (external link)

JetStreamConsumer overview

Added in v0.1.0


Table of contents


models

Close (interface)

Represents closeable resources

Signature

export interface Close {
  readonly [CloseTypeId]: CloseTypeId
  readonly close: Effect.Effect<void, NATSError.JetStreamConsumerError>
  readonly closed: Effect.Effect<void, NATSError.JetStreamConsumerError>
}

Added in v0.1.0

Consumer (interface)

Represents a consumer

Signature

export interface Consumer extends ExportedConsumer, InfoableConsumer, DeleteableConsumer {
  readonly [ConsumerTypeId]: ConsumerTypeId

  /** @internal */
  readonly consumer: JetStream.Consumer
}

Added in v0.1.0

ConsumerKind (interface)

Represents consumer kind

Signature

export interface ConsumerKind {
  readonly [ConsumerKindTypeId]: ConsumerKindTypeId
  readonly isPullConsumer: Effect.Effect<boolean, NATSError.JetStreamConsumerError>
  readonly isPushConsumer: Effect.Effect<boolean, NATSError.JetStreamConsumerError>
}

Added in v0.1.0

ConsumerMessages (interface)

Represents consumer messages

Signature

export interface ConsumerMessages
  extends Omit<
      NATSQueuedIterator.NATSQueuedIterator<JetStreamMessage.JetStreamMessage, NATSError.JetStreamConsumerError>,
      "iterator"
    >,
    Close {
  readonly [ConsumerMessagesTypeId]: ConsumerMessagesTypeId
  readonly status: Effect.Effect<
    Stream.Stream<JetStream.ConsumerNotification, NATSError.JetStreamConsumerError>,
    NATSError.JetStreamConsumerError
  >

  /** @internal */
  readonly consumerMessages: JetStream.ConsumerMessages
}

Added in v0.1.0

Consumers (interface)

Represents consumers API

Signature

export interface Consumers {
  readonly [ConsumersTypeId]: ConsumersTypeId
  readonly get: (
    ...args: Parameters<JetStream.Consumers["get"]>
  ) => Effect.Effect<Consumer, NATSError.JetStreamConsumerError>
  readonly getConsumerFromInfo: (
    ...args: Parameters<JetStream.Consumers["getConsumerFromInfo"]>
  ) => Effect.Effect<Consumer, NATSError.JetStreamConsumerError>
  readonly getPushConsumer: (
    ...args: Parameters<JetStream.Consumers["getPushConsumer"]>
  ) => Effect.Effect<PushConsumer, NATSError.JetStreamConsumerError>
  readonly getBoundPushConsumer: (
    ...args: Parameters<JetStream.Consumers["getBoundPushConsumer"]>
  ) => Effect.Effect<PushConsumer, NATSError.JetStreamConsumerError>

  /** @internal */
  readonly consumers: JetStream.Consumers
}

Added in v0.1.0

DeleteableConsumer (interface)

Represents a deleteable consumer

Signature

export interface DeleteableConsumer {
  readonly [DeleteableConsumerTypeId]: DeleteableConsumerTypeId
  readonly delete: Effect.Effect<boolean, NATSError.JetStreamConsumerError>
}

Added in v0.1.0

ExportedConsumer (interface)

Represents an exported consumer

Signature

export interface ExportedConsumer extends ConsumerKind {
  readonly [ExportedConsumerTypeId]: ExportedConsumerTypeId
  readonly next: (
    ...args: Parameters<JetStream.Consumer["next"]>
  ) => Effect.Effect<Option.Option<JetStreamMessage.JetStreamMessage>, NATSError.JetStreamConsumerError>
  readonly fetch: (
    ...args: Parameters<JetStream.Consumer["fetch"]>
  ) => Effect.Effect<ConsumerMessages, NATSError.JetStreamConsumerError>
  readonly consume: (
    ...args: Parameters<JetStream.Consumer["consume"]>
  ) => Effect.Effect<ConsumerMessages, NATSError.JetStreamConsumerError>
}

Added in v0.1.0

InfoableConsumer (interface)

Represents an infoable consumer

Signature

export interface InfoableConsumer {
  readonly [InfoableConsumerTypeId]: InfoableConsumerTypeId
  readonly info: (
    ...args: Parameters<JetStream.Consumer["info"]>
  ) => Effect.Effect<JetStream.ConsumerInfo, NATSError.JetStreamConsumerError>
}

Added in v0.1.0

PushConsumer (interface)

Represents a push consumer

Signature

export interface PushConsumer extends InfoableConsumer, DeleteableConsumer, ConsumerKind {
  readonly [PushConsumerTypeId]: PushConsumerTypeId
  readonly consume: (
    ...args: Parameters<JetStream.PushConsumer["consume"]>
  ) => Effect.Effect<ConsumerMessages, NATSError.JetStreamConsumerError>

  /** @internal */
  readonly pushConsumer: JetStream.PushConsumer
}

Added in v0.1.0

type ids

CloseTypeId

Signature

export declare const CloseTypeId: typeof CloseTypeId

Added in v0.1.0

CloseTypeId (type alias)

Signature

export type CloseTypeId = typeof CloseTypeId

Added in v0.1.0

ConsumerKindTypeId

Signature

export declare const ConsumerKindTypeId: typeof ConsumerKindTypeId

Added in v0.1.0

ConsumerKindTypeId (type alias)

Signature

export type ConsumerKindTypeId = typeof ConsumerKindTypeId

Added in v0.1.0

ConsumerMessagesTypeId

Signature

export declare const ConsumerMessagesTypeId: typeof ConsumerMessagesTypeId

Added in v0.1.0

ConsumerMessagesTypeId (type alias)

Signature

export type ConsumerMessagesTypeId = typeof ConsumerMessagesTypeId

Added in v0.1.0

ConsumerTypeId

Signature

export declare const ConsumerTypeId: typeof ConsumerTypeId

Added in v0.1.0

ConsumerTypeId (type alias)

Signature

export type ConsumerTypeId = typeof ConsumerTypeId

Added in v0.1.0

ConsumersTypeId

Signature

export declare const ConsumersTypeId: typeof ConsumersTypeId

Added in v0.1.0

ConsumersTypeId (type alias)

Signature

export type ConsumersTypeId = typeof ConsumersTypeId

Added in v0.1.0

DeleteableConsumerTypeId

Signature

export declare const DeleteableConsumerTypeId: typeof DeleteableConsumerTypeId

Added in v0.1.0

DeleteableConsumerTypeId (type alias)

Signature

export type DeleteableConsumerTypeId = typeof DeleteableConsumerTypeId

Added in v0.1.0

ExportedConsumerTypeId

Signature

export declare const ExportedConsumerTypeId: typeof ExportedConsumerTypeId

Added in v0.1.0

ExportedConsumerTypeId (type alias)

Signature

export type ExportedConsumerTypeId = typeof ExportedConsumerTypeId

Added in v0.1.0

InfoableConsumerTypeId

Signature

export declare const InfoableConsumerTypeId: typeof InfoableConsumerTypeId

Added in v0.1.0

InfoableConsumerTypeId (type alias)

Signature

export type InfoableConsumerTypeId = typeof InfoableConsumerTypeId

Added in v0.1.0

PushConsumerTypeId

Signature

export declare const PushConsumerTypeId: typeof PushConsumerTypeId

Added in v0.1.0

PushConsumerTypeId (type alias)

Signature

export type PushConsumerTypeId = typeof PushConsumerTypeId

Added in v0.1.0