Class DynamoService<T>

class: DynamoService

  • basic CRUD service for AWS DynamoDB.

Type Parameters

Hierarchy

Constructors

Properties

options: DynamoOption
normalize: ((data: any) => any) = normalize

Type declaration

    • (data: any): any
    • export to test..

      Parameters

      • data: any

      Returns any

Methods

  • create-table

    Parameters

    • ReadCapacityUnits: number = 1
    • WriteCapacityUnits: number = 1

    Returns Promise<PromiseResult<CreateTableOutput, AWSError>>

  • delete-item

    • destroy whole data of item.

    Parameters

    • id: string
    • Optional sort: string | number

    Returns Promise<T>

  • delete-table

    Returns Promise<PromiseResult<DeleteTableOutput, AWSError>>

  • prepare CreateTable payload.

    Parameters

    • ReadCapacityUnits: number = 1
    • WriteCapacityUnits: number = 1
    • StreamEnabled: boolean = true

    Returns { AttributeDefinitions: { AttributeName: string; AttributeType: any }[]; KeySchema: { AttributeName: string; KeyType: string }[]; ProvisionedThroughput: { ReadCapacityUnits: number; WriteCapacityUnits: number }; StreamSpecification: { StreamEnabled: boolean; StreamViewType: string }; TableName: string }

    • AttributeDefinitions: { AttributeName: string; AttributeType: any }[]
    • KeySchema: { AttributeName: string; KeyType: string }[]
    • ProvisionedThroughput: { ReadCapacityUnits: number; WriteCapacityUnits: number }
      • ReadCapacityUnits: number
      • WriteCapacityUnits: number
    • StreamSpecification: { StreamEnabled: boolean; StreamViewType: string }
      • StreamEnabled: boolean
      • StreamViewType: string
    • TableName: string
  • prepare Key by id + sort key.

    Parameters

    • id: string

      partition-key

    • sort: any

      sort-key

    Returns { Key: {}; TableName: string }

    • Key: {}
      • TableName: string
    • prepare SaveItem payload.

      Parameters

      • id: string

        partition-key

      • item: T

      Returns { Item: any; TableName: string }

      • Item: any
      • TableName: string
    • read-item

      • read whole data of item.

      Parameters

      • id: string
      • Optional sort: string | number

      Returns Promise<T>

    • save-item

      • save whole data with param (use update if partial save)

      WARN overwrited if exists.

      Parameters

      • id: string
      • item: T

      Returns Promise<T>

    • simple instance maker.

      Parameters

      • Optional region: string

        (default as ap-northeast-2)

      Returns { dynamo: DynamoDB; dynamodoc: DocumentClient; dynamostr: DynamoDBStreams }

      • dynamo: DynamoDB
      • dynamodoc: DocumentClient
      • dynamostr: DynamoDBStreams

    Generated using TypeDoc