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

DynamoDBStore overview

Added in v1.0.0


Table of contents


constructors

makeDynamoDBStore

Signature

export declare const makeDynamoDBStore: (
  props: DynamoDBStore.Config
) => Effect.Effect<
  {
    scan: (args: Omit<ScanCommandInput, "TableName">) => Effect.Effect<Record<string, any>[], any, never>
    query: (args: Omit<QueryCommandInput, "TableName">) => Effect.Effect<Record<string, any>[], any, never>
    get: (args: Omit<GetCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, any, never>
    put: (args: Omit<PutCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, any, never>
    batchWrite: (
      items: (Omit<WriteRequest, "PutRequest" | "DeleteRequest"> & {
        PutRequest?: (Omit<PutRequest, "Item"> & { Item: Record<string, NativeAttributeValue> | undefined }) | undefined
        DeleteRequest?:
          | (Omit<DeleteRequest, "Key"> & { Key: Record<string, NativeAttributeValue> | undefined })
          | undefined
      })[]
    ) => Effect.Effect<BatchWriteCommandOutput, any, never>
    batchPut: (items: Record<string, any>[]) => Effect.Effect<BatchWriteCommandOutput, any, never>
    batchDelete: (keys: Record<string, any>[]) => Effect.Effect<BatchWriteCommandOutput, any, never>
    batchGet: (
      items: Omit<KeysAndAttributes, "Keys"> & { Keys: Record<string, NativeAttributeValue>[] | undefined }
    ) => Effect.Effect<BatchGetCommandOutput, any, never>
    update: (args: Omit<UpdateCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, any, never>
    delete: (args: Omit<DeleteCommandInput, "TableName">) => Effect.Effect<Record<string, any> | undefined, any, never>
  },
  [YieldWrap<Tag<DynamoDBDocumentService, DynamoDBDocumentService$>>] extends [never]
    ? never
    : [YieldWrap<Tag<DynamoDBDocumentService, DynamoDBDocumentService$>>] extends [
          YieldWrap<Effect.Effect<infer _A, infer E, infer _R>>
        ]
      ? E
      : never,
  [YieldWrap<Tag<DynamoDBDocumentService, DynamoDBDocumentService$>>] extends [never]
    ? never
    : [YieldWrap<Tag<DynamoDBDocumentService, DynamoDBDocumentService$>>] extends [
          YieldWrap<Effect.Effect<infer _A, infer _E, infer R>>
        ]
      ? R
      : never
>

Added in v1.0.0

models

DynamoDBStore (class)

Signature

export declare class DynamoDBStore

Added in v1.0.0

utils

DynamoDBStore (namespace)

Added in v1.0.0

Config (type alias)

Signature

export type Config = {
  readonly tableName: string
}

Added in v1.0.0

Type (type alias)

Signature

export type Type = OmitNeverProps<WithoutTableNameInArgs> &
  OmitNeverProps<WithoutTableNameInBatchRequest> & {
    batchPut: (items: Array<Record<string, any>>) => ReturnType<DynamoDBDocumentService.Type["batchWrite"]>
    batchDelete: (keys: Array<Record<string, any>>) => ReturnType<DynamoDBDocumentService.Type["batchWrite"]>
  }

Added in v1.0.0