models

package
v1.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 3, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	KeyTypeHash            = "HASH"
	KeyTypeRange           = "RANGE"
	ReturnValuesAllOld     = "ALL_OLD"
	ReturnValuesAllNew     = "ALL_NEW"
	ReturnValuesUpdatedOld = "UPDATED_OLD"
	ReturnValuesUpdatedNew = "UPDATED_NEW"
	TableStatusActive      = "ACTIVE"

	DefaultReadCapacity  = 5
	DefaultWriteCapacity = 5
	ConsumedReadUnit     = 0.5
	ConsumedWriteUnit    = 0.5
)
View Source
const (
	BackupStatusCreating  = "CREATING"
	BackupStatusDeleted   = "DELETED"
	BackupStatusAvailable = "AVAILABLE"
)

BackupStatus values.

View Source
const (
	BackupTypeUser      = "USER"
	BackupTypeSystem    = "SYSTEM"
	BackupTypeAwsBackup = "AWS_BACKUP"
)

BackupType values.

Variables

View Source
var (
	ErrNotMap               = errors.New("expected map[string]any for AttributeValue")
	ErrInvalidTypeKeyCount  = errors.New("expected exactly one type key in AttributeValue map")
	ErrInvalidTypeS         = errors.New("expected string for S type")
	ErrInvalidTypeN         = errors.New("expected string for N type")
	ErrInvalidTypeB         = errors.New("expected base64 string for B type")
	ErrInvalidTypeBOOL      = errors.New("expected bool for BOOL type")
	ErrInvalidTypeNULL      = errors.New("expected true for NULL type")
	ErrInvalidTypeM         = errors.New("expected map for M type")
	ErrInvalidTypeL         = errors.New("expected slice for L type")
	ErrInvalidTypeSS        = errors.New("expected slice for SS type")
	ErrInvalidStringInSS    = errors.New("expected string in SS")
	ErrInvalidTypeNS        = errors.New("expected slice for NS type")
	ErrInvalidStringInNS    = errors.New("expected string in NS")
	ErrInvalidTypeBS        = errors.New("expected slice for BS type")
	ErrInvalidStringInBS    = errors.New("expected string in BS")
	ErrUnknownAttributeType = errors.New("unknown attribute value type")
)

Functions

func FromSDKAttributeValue

func FromSDKAttributeValue(av types.AttributeValue) any

FromSDKAttributeValue converts an SDK AttributeValue back to a raw map[string]any suitable for JSON marshaling (wire format).

func FromSDKItem

func FromSDKItem(item map[string]types.AttributeValue) map[string]any

FromSDKItem converts map[string]types.AttributeValue back to map[string]any (wire item).

func ToSDKAttributeDefinitions

func ToSDKAttributeDefinitions(defs []AttributeDefinition) []types.AttributeDefinition

ToSDKAttributeDefinitions converts internal AttributeDefinitions to SDK type.

func ToSDKAttributeValue

func ToSDKAttributeValue(v any) (types.AttributeValue, error)

ToSDKAttributeValue converts a raw Go value (from JSON unmarshal) to an SDK AttributeValue.

func ToSDKBatchGetItemInput

func ToSDKBatchGetItemInput(input *BatchGetItemInput) (*dynamodb.BatchGetItemInput, error)

func ToSDKBatchWriteItemInput

func ToSDKBatchWriteItemInput(input *BatchWriteItemInput) (*dynamodb.BatchWriteItemInput, error)

func ToSDKCreateTableInput

func ToSDKCreateTableInput(input *CreateTableInput) *dynamodb.CreateTableInput

func ToSDKDeleteItemInput

func ToSDKDeleteItemInput(input *DeleteItemInput) (*dynamodb.DeleteItemInput, error)

func ToSDKDeleteTableInput

func ToSDKDeleteTableInput(input *DeleteTableInput) *dynamodb.DeleteTableInput

func ToSDKDescribeTableInput

func ToSDKDescribeTableInput(input *DescribeTableInput) *dynamodb.DescribeTableInput

func ToSDKDescribeTimeToLiveInput

func ToSDKDescribeTimeToLiveInput(
	input *DescribeTimeToLiveInput,
) *dynamodb.DescribeTimeToLiveInput

func ToSDKGetItemInput

func ToSDKGetItemInput(input *GetItemInput) (*dynamodb.GetItemInput, error)

func ToSDKGlobalSecondaryIndexes

func ToSDKGlobalSecondaryIndexes(gsis []GlobalSecondaryIndex) []types.GlobalSecondaryIndex

func ToSDKItem

func ToSDKItem(item map[string]any) (map[string]types.AttributeValue, error)

ToSDKItem converts a map[string]any (wire item) to map[string]types.AttributeValue.

func ToSDKKeySchema

func ToSDKKeySchema(schema []KeySchemaElement) []types.KeySchemaElement

ToSDKKeySchema converts internal KeySchema to SDK type.

func ToSDKListAttribute

func ToSDKListAttribute(l []any) (types.AttributeValue, error)

func ToSDKListTablesInput

func ToSDKListTablesInput(input *ListTablesInput) *dynamodb.ListTablesInput

func ToSDKListTagsOfResourceInput

func ToSDKListTagsOfResourceInput(
	input *ListTagsOfResourceInput,
) (*dynamodb.ListTagsOfResourceInput, error)

ToSDKListTagsOfResourceInput converts the wire-format input to an AWS SDK input.

func ToSDKLocalSecondaryIndexes

func ToSDKLocalSecondaryIndexes(lsis []LocalSecondaryIndex) []types.LocalSecondaryIndex

func ToSDKMapAttribute

func ToSDKMapAttribute(m map[string]any) (*types.AttributeValueMemberM, error)

func ToSDKProjection

func ToSDKProjection(p Projection) *types.Projection

func ToSDKPutItemInput

func ToSDKPutItemInput(input *PutItemInput) (*dynamodb.PutItemInput, error)

func ToSDKQueryInput

func ToSDKQueryInput(input *QueryInput) (*dynamodb.QueryInput, error)

func ToSDKScanInput

func ToSDKScanInput(input *ScanInput) (*dynamodb.ScanInput, error)

func ToSDKTagResourceInput

func ToSDKTagResourceInput(input *TagResourceInput) (*dynamodb.TagResourceInput, error)

ToSDKTagResourceInput converts the wire-format TagResourceInput to an AWS SDK input.

func ToSDKTransactGetItemsInput

func ToSDKTransactGetItemsInput(
	input *TransactGetItemsInput,
) (*dynamodb.TransactGetItemsInput, error)

func ToSDKTransactWriteItemsInput

func ToSDKTransactWriteItemsInput(
	input *TransactWriteItemsInput,
) (*dynamodb.TransactWriteItemsInput, error)

func ToSDKUntagResourceInput

func ToSDKUntagResourceInput(input *UntagResourceInput) (*dynamodb.UntagResourceInput, error)

ToSDKUntagResourceInput converts the wire-format UntagResourceInput to an AWS SDK input.

func ToSDKUpdateItemInput

func ToSDKUpdateItemInput(input *UpdateItemInput) (*dynamodb.UpdateItemInput, error)

func ToSDKUpdateTableInput

func ToSDKUpdateTableInput(input *UpdateTableInput) (*dynamodb.UpdateTableInput, error)

ToSDKUpdateTableInput converts the wire-format UpdateTableInput to an AWS SDK input.

func ToSDKUpdateTimeToLiveInput

func ToSDKUpdateTimeToLiveInput(input *UpdateTimeToLiveInput) *dynamodb.UpdateTimeToLiveInput

Types

type AttributeDefinition

type AttributeDefinition struct {
	AttributeName string `json:"AttributeName"`
	AttributeType string `json:"AttributeType"` // "S", "N", "B"
}

AttributeDefinition defines the name and type of an attribute.

func FromSDKAttributeDefinitions

func FromSDKAttributeDefinitions(defs []types.AttributeDefinition) []AttributeDefinition

type BackupDescription

type BackupDescription struct {
	BackupDetails      BackupDetails      `json:"BackupDetails"`
	SourceTableDetails SourceTableDetails `json:"SourceTableDetails"`
}

BackupDescription contains a full description of a backup.

type BackupDetails

type BackupDetails struct {
	BackupArn              string `json:"BackupArn"`
	BackupName             string `json:"BackupName"`
	BackupStatus           string `json:"BackupStatus"`
	BackupType             string `json:"BackupType"`
	BackupCreationDateTime string `json:"BackupCreationDateTime"`
	BackupSizeBytes        int64  `json:"BackupSizeBytes,omitempty"`
}

BackupDetails contains details of a backup.

type BackupSummary

type BackupSummary struct {
	BackupArn              string `json:"BackupArn"`
	BackupName             string `json:"BackupName"`
	BackupStatus           string `json:"BackupStatus"`
	BackupType             string `json:"BackupType"`
	BackupCreationDateTime string `json:"BackupCreationDateTime"`
	TableName              string `json:"TableName"`
	TableArn               string `json:"TableArn,omitempty"`
	TableID                string `json:"TableId,omitempty"`
}

BackupSummary contains summary information about a backup.

type BatchGetItemInput

type BatchGetItemInput struct {
	RequestItems map[string]KeysAndAttributes `json:"RequestItems"`
}

type BatchGetItemOutput

type BatchGetItemOutput struct {
	Responses       map[string][]map[string]any  `json:"Responses,omitempty"`
	UnprocessedKeys map[string]KeysAndAttributes `json:"UnprocessedKeys,omitempty"`
}

func FromSDKBatchGetItemOutput

func FromSDKBatchGetItemOutput(output *dynamodb.BatchGetItemOutput) *BatchGetItemOutput

type BatchWriteItemInput

type BatchWriteItemInput struct {
	RequestItems map[string][]WriteRequest `json:"RequestItems"`
}

type BatchWriteItemOutput

type BatchWriteItemOutput struct {
	UnprocessedItems      map[string][]WriteRequest `json:"UnprocessedItems,omitempty"`
	ItemCollectionMetrics map[string][]any          `json:"ItemCollectionMetrics,omitempty"` // Simplified for now
	ConsumedCapacity      []ConsumedCapacity        `json:"ConsumedCapacity,omitempty"`
}

func FromSDKBatchWriteItemOutput

func FromSDKBatchWriteItemOutput(output *dynamodb.BatchWriteItemOutput) *BatchWriteItemOutput

type BillingModeSummaryDescription

type BillingModeSummaryDescription struct {
	BillingMode string `json:"BillingMode,omitempty"`
}

BillingModeSummaryDescription describes the billing mode of a DynamoDB table.

type ConditionCheckInput

type ConditionCheckInput struct {
	Key                                 map[string]any    `json:"Key"`
	ExpressionAttributeNames            map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues           map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	TableName                           string            `json:"TableName"`
	ConditionExpression                 string            `json:"ConditionExpression"`
	ReturnValuesOnConditionCheckFailure string            `json:"ReturnValuesOnConditionCheckFailure,omitempty"`
}

type ConsumedCapacity

type ConsumedCapacity struct {
	TableName          string  `json:"TableName,omitempty"`
	CapacityUnits      float64 `json:"CapacityUnits,omitempty"`
	ReadCapacityUnits  float64 `json:"ReadCapacityUnits,omitempty"`
	WriteCapacityUnits float64 `json:"WriteCapacityUnits,omitempty"`
}

func FromSDKConsumedCapacity

func FromSDKConsumedCapacity(cc *types.ConsumedCapacity) *ConsumedCapacity

type CreateBackupInput

type CreateBackupInput struct {
	TableName  string `json:"TableName"`
	BackupName string `json:"BackupName"`
}

CreateBackupInput is the wire format for CreateBackup.

type CreateBackupOutput

type CreateBackupOutput struct {
	BackupDetails BackupDetails `json:"BackupDetails"`
}

CreateBackupOutput is the wire format for CreateBackup response.

type CreateGlobalSecondaryIndexAction

type CreateGlobalSecondaryIndexAction struct {
	ProvisionedThroughput *ProvisionedThroughput `json:"ProvisionedThroughput,omitempty"`
	IndexName             string                 `json:"IndexName"`
	Projection            Projection             `json:"Projection"`
	KeySchema             []KeySchemaElement     `json:"KeySchema"`
}

CreateGlobalSecondaryIndexAction adds a new GSI.

type CreateReplicationGroupMemberAction

type CreateReplicationGroupMemberAction struct {
	RegionName string `json:"RegionName"`
}

CreateReplicationGroupMemberAction specifies parameters for creating a new replica.

type CreateTableInput

type CreateTableInput struct {
	ProvisionedThroughput     any                    `json:"ProvisionedThroughput"`
	StreamSpecification       any                    `json:"StreamSpecification,omitempty"`
	DeletionProtectionEnabled *bool                  `json:"DeletionProtectionEnabled,omitempty"`
	TableName                 string                 `json:"TableName"`
	BillingMode               string                 `json:"BillingMode,omitempty"`
	TableClass                string                 `json:"TableClass,omitempty"`
	KeySchema                 []KeySchemaElement     `json:"KeySchema"`
	AttributeDefinitions      []AttributeDefinition  `json:"AttributeDefinitions"`
	GlobalSecondaryIndexes    []GlobalSecondaryIndex `json:"GlobalSecondaryIndexes,omitempty"`
	LocalSecondaryIndexes     []LocalSecondaryIndex  `json:"LocalSecondaryIndexes,omitempty"`
}

type CreateTableOutput

type CreateTableOutput struct {
	TableDescription TableDescription `json:"TableDescription"`
}

func FromSDKCreateTableOutput

func FromSDKCreateTableOutput(output *dynamodb.CreateTableOutput) *CreateTableOutput

type DeleteBackupInput

type DeleteBackupInput struct {
	BackupArn string `json:"BackupArn"`
}

DeleteBackupInput is the wire format for DeleteBackup.

type DeleteBackupOutput

type DeleteBackupOutput struct {
	BackupDescription BackupDescription `json:"BackupDescription"`
}

DeleteBackupOutput is the wire format for DeleteBackup response.

type DeleteGlobalSecondaryIndexAction

type DeleteGlobalSecondaryIndexAction struct {
	IndexName string `json:"IndexName"`
}

DeleteGlobalSecondaryIndexAction removes an existing GSI.

type DeleteItemInput

type DeleteItemInput struct {
	Key                                 map[string]any    `json:"Key"`
	ExpressionAttributeNames            map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues           map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	TableName                           string            `json:"TableName"`
	ConditionExpression                 string            `json:"ConditionExpression,omitempty"`
	ReturnValues                        string            `json:"ReturnValues,omitempty"`
	ReturnConsumedCapacity              string            `json:"ReturnConsumedCapacity,omitempty"`
	ReturnItemCollectionMetrics         string            `json:"ReturnItemCollectionMetrics,omitempty"`
	ReturnValuesOnConditionCheckFailure string            `json:"ReturnValuesOnConditionCheckFailure,omitempty"`
}

type DeleteItemOutput

type DeleteItemOutput struct {
	Attributes            map[string]any         `json:"Attributes,omitempty"`
	ConsumedCapacity      *ConsumedCapacity      `json:"ConsumedCapacity,omitempty"`
	ItemCollectionMetrics *ItemCollectionMetrics `json:"ItemCollectionMetrics,omitempty"`
}

func FromSDKDeleteItemOutput

func FromSDKDeleteItemOutput(output *dynamodb.DeleteItemOutput) *DeleteItemOutput

type DeleteReplicationGroupMemberAction

type DeleteReplicationGroupMemberAction struct {
	RegionName string `json:"RegionName"`
}

DeleteReplicationGroupMemberAction specifies the region of the replica to delete.

type DeleteRequest

type DeleteRequest struct {
	Key map[string]any `json:"Key"`
}

type DeleteTableInput

type DeleteTableInput struct {
	TableName string `json:"TableName"`
}

type DeleteTableOutput

type DeleteTableOutput struct {
	TableDescription TableDescription `json:"TableDescription"`
}

func FromSDKDeleteTableOutput

func FromSDKDeleteTableOutput(output *dynamodb.DeleteTableOutput) *DeleteTableOutput

type DescribeBackupInput

type DescribeBackupInput struct {
	BackupArn string `json:"BackupArn"`
}

DescribeBackupInput is the wire format for DescribeBackup.

type DescribeBackupOutput

type DescribeBackupOutput struct {
	BackupDescription BackupDescription `json:"BackupDescription"`
}

DescribeBackupOutput is the wire format for DescribeBackup response.

type DescribeTableInput

type DescribeTableInput struct {
	TableName string `json:"TableName"`
}

type DescribeTableOutput

type DescribeTableOutput struct {
	Table TableDescription `json:"Table"`
}

func FromSDKDescribeTableOutput

func FromSDKDescribeTableOutput(output *dynamodb.DescribeTableOutput) *DescribeTableOutput

type DescribeTimeToLiveInput

type DescribeTimeToLiveInput struct {
	TableName string `json:"TableName"`
}

type DescribeTimeToLiveOutput

type DescribeTimeToLiveOutput struct {
	TimeToLiveDescription TimeToLiveDescription `json:"TimeToLiveDescription"`
}

func FromSDKDescribeTimeToLiveOutput

func FromSDKDescribeTimeToLiveOutput(
	output *dynamodb.DescribeTimeToLiveOutput,
) *DescribeTimeToLiveOutput

type GetItemInput

type GetItemInput struct {
	Key                      map[string]any    `json:"Key"`
	ExpressionAttributeNames map[string]string `json:"ExpressionAttributeNames,omitempty"`
	TableName                string            `json:"TableName"`
	ProjectionExpression     string            `json:"ProjectionExpression,omitempty"`
}

type GetItemOutput

type GetItemOutput struct {
	Item map[string]any `json:"Item,omitempty"`
}

func FromSDKGetItemOutput

func FromSDKGetItemOutput(output *dynamodb.GetItemOutput) *GetItemOutput

type GlobalSecondaryIndex

type GlobalSecondaryIndex struct {
	ProvisionedThroughput ProvisionedThroughput `json:"ProvisionedThroughput"`
	IndexStatusTimer      *time.Timer           `json:"-"`
	IndexName             string                `json:"IndexName"`
	IndexStatus           string                `json:"IndexStatus,omitempty"`
	Projection            Projection            `json:"Projection"`
	KeySchema             []KeySchemaElement    `json:"KeySchema"`
}

func FromSDKGlobalSecondaryIndexes

func FromSDKGlobalSecondaryIndexes(gsis []types.GlobalSecondaryIndex) []GlobalSecondaryIndex

type GlobalSecondaryIndexDescription

type GlobalSecondaryIndexDescription struct {
	IndexName             string                           `json:"IndexName"`
	IndexStatus           string                           `json:"IndexStatus"`
	Projection            Projection                       `json:"Projection"`
	KeySchema             []KeySchemaElement               `json:"KeySchema"`
	ProvisionedThroughput ProvisionedThroughputDescription `json:"ProvisionedThroughput"`
	ItemCount             int                              `json:"ItemCount"`
}

type GlobalSecondaryIndexUpdate

type GlobalSecondaryIndexUpdate struct {
	Create *CreateGlobalSecondaryIndexAction `json:"Create,omitempty"`
	Update *UpdateGlobalSecondaryIndexAction `json:"Update,omitempty"`
	Delete *DeleteGlobalSecondaryIndexAction `json:"Delete,omitempty"`
}

GlobalSecondaryIndexUpdate describes a single GSI change.

type ItemCollectionMetrics

type ItemCollectionMetrics struct {
	ItemCollectionKey   map[string]any `json:"ItemCollectionKey,omitempty"`
	SizeEstimateRangeGB []float64      `json:"SizeEstimateRangeGB,omitempty"`
}

func FromSDKItemCollectionMetrics

func FromSDKItemCollectionMetrics(icm *types.ItemCollectionMetrics) *ItemCollectionMetrics

type ItemResponse

type ItemResponse struct {
	Item map[string]any `json:"Item,omitempty"`
}

type KeySchemaElement

type KeySchemaElement struct {
	AttributeName string `json:"AttributeName"`
	KeyType       string `json:"KeyType"` // "HASH" or "RANGE"
}

KeySchemaElement represents a key attribute in a table or index schema.

func FromSDKKeySchema

func FromSDKKeySchema(schema []types.KeySchemaElement) []KeySchemaElement

type KeysAndAttributes

type KeysAndAttributes struct {
	ExpressionAttributeNames map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ConsistentRead           *bool             `json:"ConsistentRead,omitempty"`
	ProjectionExpression     string            `json:"ProjectionExpression,omitempty"`
	Keys                     []map[string]any  `json:"Keys"`
	AttributesToGet          []string          `json:"AttributesToGet,omitempty"`
}

type ListBackupsInput

type ListBackupsInput struct {
	TimeRangeLowerBound     *float64 `json:"TimeRangeLowerBound,omitempty"`
	TimeRangeUpperBound     *float64 `json:"TimeRangeUpperBound,omitempty"`
	TableName               string   `json:"TableName,omitempty"`
	ExclusiveStartBackupArn string   `json:"ExclusiveStartBackupArn,omitempty"`
	BackupType              string   `json:"BackupType,omitempty"`
	Limit                   int      `json:"Limit,omitempty"`
}

ListBackupsInput is the wire format for ListBackups.

type ListBackupsOutput

type ListBackupsOutput struct {
	LastEvaluatedBackupArn string          `json:"LastEvaluatedBackupArn,omitempty"`
	BackupSummaries        []BackupSummary `json:"BackupSummaries"`
}

ListBackupsOutput is the wire format for ListBackups response.

type ListTablesInput

type ListTablesInput struct {
	ExclusiveStartTableName string `json:"ExclusiveStartTableName,omitempty"`
	Limit                   int    `json:"Limit"`
}

type ListTablesOutput

type ListTablesOutput struct {
	LastEvaluatedTableName string   `json:"LastEvaluatedTableName,omitempty"`
	TableNames             []string `json:"TableNames"`
}

func FromSDKListTablesOutput

func FromSDKListTablesOutput(output *dynamodb.ListTablesOutput) *ListTablesOutput

type ListTagsOfResourceInput

type ListTagsOfResourceInput struct {
	ResourceArn string `json:"ResourceArn"`
	NextToken   string `json:"NextToken,omitempty"`
}

ListTagsOfResourceInput is the wire format for ListTagsOfResource.

type ListTagsOfResourceOutput

type ListTagsOfResourceOutput struct {
	NextToken string `json:"NextToken,omitempty"`
	Tags      []Tag  `json:"Tags"`
}

ListTagsOfResourceOutput is the wire format for ListTagsOfResource response.

func FromSDKListTagsOfResourceOutput

func FromSDKListTagsOfResourceOutput(
	output *dynamodb.ListTagsOfResourceOutput,
) *ListTagsOfResourceOutput

FromSDKListTagsOfResourceOutput converts the AWS SDK output to wire format.

type LocalSecondaryIndex

type LocalSecondaryIndex struct {
	IndexName  string             `json:"IndexName"`
	KeySchema  []KeySchemaElement `json:"KeySchema"`
	Projection Projection         `json:"Projection"`
}

func FromSDKLocalSecondaryIndexes

func FromSDKLocalSecondaryIndexes(lsis []types.LocalSecondaryIndex) []LocalSecondaryIndex

type LocalSecondaryIndexDescription

type LocalSecondaryIndexDescription struct {
	IndexName      string             `json:"IndexName"`
	KeySchema      []KeySchemaElement `json:"KeySchema"`
	Projection     Projection         `json:"Projection"`
	IndexSizeBytes int64              `json:"IndexSizeBytes"`
	ItemCount      int                `json:"ItemCount"`
}

type Projection

type Projection struct {
	ProjectionType   string   `json:"ProjectionType"`
	NonKeyAttributes []string `json:"NonKeyAttributes,omitempty"`
}

func FromSDKProjection

func FromSDKProjection(p *types.Projection) Projection

type ProvisionedThroughput

type ProvisionedThroughput struct {
	ReadCapacityUnits  *int64 `json:"ReadCapacityUnits"`
	WriteCapacityUnits *int64 `json:"WriteCapacityUnits"`
}

type ProvisionedThroughputDescription

type ProvisionedThroughputDescription struct {
	ReadCapacityUnits  int `json:"ReadCapacityUnits"`
	WriteCapacityUnits int `json:"WriteCapacityUnits"`
}

type PutItemInput

type PutItemInput struct {
	TableName                           string            `json:"TableName"`
	Item                                map[string]any    `json:"Item"`
	ConditionExpression                 string            `json:"ConditionExpression,omitempty"`
	ExpressionAttributeNames            map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues           map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	ReturnValues                        string            `json:"ReturnValues,omitempty"`
	ReturnConsumedCapacity              string            `json:"ReturnConsumedCapacity,omitempty"`
	ReturnItemCollectionMetrics         string            `json:"ReturnItemCollectionMetrics,omitempty"`
	ReturnValuesOnConditionCheckFailure string            `json:"ReturnValuesOnConditionCheckFailure,omitempty"`
}

type PutItemOutput

type PutItemOutput struct {
	Attributes            map[string]any         `json:"Attributes,omitempty"`
	ConsumedCapacity      *ConsumedCapacity      `json:"ConsumedCapacity,omitempty"`
	ItemCollectionMetrics *ItemCollectionMetrics `json:"ItemCollectionMetrics,omitempty"`
}

func FromSDKPutItemOutput

func FromSDKPutItemOutput(output *dynamodb.PutItemOutput) *PutItemOutput

type PutRequest

type PutRequest struct {
	Item map[string]any `json:"Item"`
}

type QueryInput

type QueryInput struct {
	ExpressionAttributeNames  map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	ScanIndexForward          *bool             `json:"ScanIndexForward,omitempty"`
	ExclusiveStartKey         map[string]any    `json:"ExclusiveStartKey,omitempty"`
	TableName                 string            `json:"TableName"`
	IndexName                 string            `json:"IndexName,omitempty"`
	KeyConditionExpression    string            `json:"KeyConditionExpression"`
	FilterExpression          string            `json:"FilterExpression,omitempty"`
	ProjectionExpression      string            `json:"ProjectionExpression,omitempty"`
	ReturnConsumedCapacity    string            `json:"ReturnConsumedCapacity,omitempty"`
	Limit                     int32             `json:"Limit,omitempty"`
	ConsistentRead            bool              `json:"ConsistentRead,omitempty"`
}

type QueryOutput

type QueryOutput struct {
	LastEvaluatedKey map[string]any    `json:"LastEvaluatedKey,omitempty"`
	ConsumedCapacity *ConsumedCapacity `json:"ConsumedCapacity,omitempty"`
	Items            []map[string]any  `json:"Items,omitempty"`
	Count            int               `json:"Count"`
	ScannedCount     int               `json:"ScannedCount"`
}

func FromSDKQueryOutput

func FromSDKQueryOutput(output *dynamodb.QueryOutput) *QueryOutput

type ReplicaDescription

type ReplicaDescription struct {
	ProvisionedReadCapacityUnits *int64               `json:"ProvisionedReadCapacityUnits,omitempty"`
	RegionName                   string               `json:"RegionName,omitempty"`
	ReplicaStatus                string               `json:"ReplicaStatus,omitempty"`
	TableClassOverride           string               `json:"TableClassOverride,omitempty"`
	GlobalSecondaryIndexes       []ReplicaGSIOverride `json:"GlobalSecondaryIndexes,omitempty"`
}

type ReplicaGSIOverride

type ReplicaGSIOverride struct {
	ProvisionedReadCapacity *int64 `json:"ProvisionedReadCapacity,omitempty"`
	IndexName               string `json:"IndexName"`
}

ReplicaGSIOverride stores per-replica read-capacity override for one GSI.

type ReplicaUpdate

type ReplicaUpdate struct {
	Create *CreateReplicationGroupMemberAction `json:"Create,omitempty"`
	Update *UpdateReplicationGroupMemberAction `json:"Update,omitempty"`
	Delete *DeleteReplicationGroupMemberAction `json:"Delete,omitempty"`
}

ReplicaUpdate describes a create, update, or delete action for a Global Tables v2 replica.

type RestoreTableFromBackupInput

type RestoreTableFromBackupInput struct {
	ProvisionedThroughputOverride *ProvisionedThroughput `json:"ProvisionedThroughputOverride,omitempty"`
	BackupArn                     string                 `json:"BackupArn"`
	TargetTableName               string                 `json:"TargetTableName"`
	BillingModeOverride           string                 `json:"BillingModeOverride,omitempty"`
}

RestoreTableFromBackupInput is the wire format for RestoreTableFromBackup.

type RestoreTableFromBackupOutput

type RestoreTableFromBackupOutput struct {
	TableDescription TableDescription `json:"TableDescription"`
}

RestoreTableFromBackupOutput is the wire format for RestoreTableFromBackup response.

type RestoreTableToPointInTimeInput

type RestoreTableToPointInTimeInput struct {
	ProvisionedThroughputOverride *ProvisionedThroughput `json:"ProvisionedThroughputOverride,omitempty"`
	SourceTableName               string                 `json:"SourceTableName"`
	TargetTableName               string                 `json:"TargetTableName"`
	RestoreDateTime               string                 `json:"RestoreDateTime,omitempty"`
	BillingModeOverride           string                 `json:"BillingModeOverride,omitempty"`
	UseLatestRestorableTime       bool                   `json:"UseLatestRestorableTime,omitempty"`
}

RestoreTableToPointInTimeInput is the wire format for RestoreTableToPointInTime.

type RestoreTableToPointInTimeOutput

type RestoreTableToPointInTimeOutput struct {
	TableDescription TableDescription `json:"TableDescription"`
}

RestoreTableToPointInTimeOutput is the wire format for RestoreTableToPointInTime response.

type SSEDescription

type SSEDescription struct {
	Status          string `json:"Status,omitempty"`
	SSEType         string `json:"SSEType,omitempty"`
	KMSMasterKeyArn string `json:"KMSMasterKeyArn,omitempty"`
}

type ScanInput

type ScanInput struct {
	Limit                     *int32            `json:"Limit,omitempty"`
	Segment                   *int32            `json:"Segment,omitempty"`
	TotalSegments             *int32            `json:"TotalSegments,omitempty"`
	ExpressionAttributeNames  map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	ExclusiveStartKey         map[string]any    `json:"ExclusiveStartKey,omitempty"`
	TableName                 string            `json:"TableName"`
	IndexName                 string            `json:"IndexName,omitempty"`
	FilterExpression          string            `json:"FilterExpression,omitempty"`
	ProjectionExpression      string            `json:"ProjectionExpression,omitempty"`
}

type ScanOutput

type ScanOutput struct {
	LastEvaluatedKey map[string]any   `json:"LastEvaluatedKey,omitempty"`
	Items            []map[string]any `json:"Items"`
	Count            int              `json:"Count"`
	ScannedCount     int              `json:"ScannedCount"`
}

func FromSDKScanOutput

func FromSDKScanOutput(output *dynamodb.ScanOutput) *ScanOutput

type SourceTableDetails

type SourceTableDetails struct {
	TableName string             `json:"TableName"`
	TableArn  string             `json:"TableArn,omitempty"`
	TableID   string             `json:"TableId,omitempty"`
	KeySchema []KeySchemaElement `json:"KeySchema"`
	ItemCount int64              `json:"ItemCount,omitempty"`
}

SourceTableDetails describes the source table at backup creation time.

type StreamRecord

type StreamRecord struct {
	OldImage                    map[string]any `json:"oldImage,omitempty"`
	NewImage                    map[string]any `json:"newImage,omitempty"`
	Keys                        map[string]any `json:"keys,omitempty"`
	EventID                     string         `json:"eventID"`
	EventName                   string         `json:"eventName"`
	SequenceNumber              string         `json:"sequenceNumber"`
	StreamViewType              string         `json:"streamViewType,omitempty"`
	UserIdentityPrincipalID     string         `json:"userIdentityPrincipalId,omitempty"`
	UserIdentityType            string         `json:"userIdentityType,omitempty"`
	ApproximateCreationDateTime int64          `json:"approximateCreationDateTime"`
	ExpireAt                    int64          `json:"expireAt,omitempty"`
	SizeBytes                   int64          `json:"sizeBytes,omitempty"`
}

type StreamSpecificationInput

type StreamSpecificationInput struct {
	StreamViewType string `json:"StreamViewType,omitempty"`
	StreamEnabled  bool   `json:"StreamEnabled"`
}

StreamSpecificationInput is the stream spec used in UpdateTable requests.

type TableDescription

type TableDescription struct {
	ProvisionedThroughput     *ProvisionedThroughputDescription `json:"ProvisionedThroughput,omitempty"`
	StreamSpecification       *StreamSpecificationInput         `json:"StreamSpecification,omitempty"`
	BillingModeSummary        *BillingModeSummaryDescription    `json:"BillingModeSummary,omitempty"`
	SSEDescription            *SSEDescription                   `json:"SSEDescription,omitempty"`
	TableName                 string                            `json:"TableName"`
	TableStatus               string                            `json:"TableStatus"`
	TableArn                  string                            `json:"TableArn,omitempty"`
	TableID                   string                            `json:"TableId,omitempty"`
	LatestStreamArn           string                            `json:"LatestStreamArn,omitempty"`
	LatestStreamLabel         string                            `json:"LatestStreamLabel,omitempty"`
	GlobalTableVersion        string                            `json:"GlobalTableVersion,omitempty"`
	KeySchema                 []KeySchemaElement                `json:"KeySchema"`
	AttributeDefinitions      []AttributeDefinition             `json:"AttributeDefinitions"`
	GlobalSecondaryIndexes    []GlobalSecondaryIndexDescription `json:"GlobalSecondaryIndexes,omitempty"`
	LocalSecondaryIndexes     []LocalSecondaryIndexDescription  `json:"LocalSecondaryIndexes,omitempty"`
	Replicas                  []ReplicaDescription              `json:"Replicas,omitempty"`
	DeletionProtectionEnabled bool                              `json:"DeletionProtectionEnabled,omitempty"`
	ItemCount                 int                               `json:"ItemCount"`
}

func FromSDKTableDescription

func FromSDKTableDescription(td *types.TableDescription) TableDescription

type Tag

type Tag struct {
	Key   string `json:"Key"`
	Value string `json:"Value"`
}

Tag is a key-value pair attached to a DynamoDB resource.

type TagResourceInput

type TagResourceInput struct {
	ResourceArn string `json:"ResourceArn"`
	Tags        []Tag  `json:"Tags"`
}

TagResourceInput is the wire format for TagResource.

type TagResourceOutput

type TagResourceOutput struct{}

TagResourceOutput is the wire format for TagResource response (empty body).

func FromSDKTagResourceOutput

func FromSDKTagResourceOutput(_ *dynamodb.TagResourceOutput) *TagResourceOutput

FromSDKTagResourceOutput converts the AWS SDK TagResourceOutput to wire format.

type TimeToLiveDescription

type TimeToLiveDescription struct {
	AttributeName    string `json:"AttributeName,omitempty"`
	TimeToLiveStatus string `json:"TimeToLiveStatus"` // "ENABLED" or "DISABLED"
}

type TimeToLiveSpecification

type TimeToLiveSpecification struct {
	AttributeName string `json:"AttributeName"`
	Enabled       bool   `json:"Enabled"`
}

type TransactGetItem

type TransactGetItem struct {
	Get *GetItemInput `json:"Get"`
}

type TransactGetItemsInput

type TransactGetItemsInput struct {
	ReturnConsumedCapacity string            `json:"ReturnConsumedCapacity,omitempty"`
	TransactItems          []TransactGetItem `json:"TransactItems"`
}

type TransactGetItemsOutput

type TransactGetItemsOutput struct {
	ConsumedCapacity []ConsumedCapacity `json:"ConsumedCapacity,omitempty"`
	Responses        []ItemResponse     `json:"Responses"`
}

func FromSDKTransactGetItemsOutput

func FromSDKTransactGetItemsOutput(
	output *dynamodb.TransactGetItemsOutput,
) *TransactGetItemsOutput

type TransactWriteItem

type TransactWriteItem struct {
	Put            *PutItemInput        `json:"Put,omitempty"`
	Delete         *DeleteItemInput     `json:"Delete,omitempty"`
	Update         *UpdateItemInput     `json:"Update,omitempty"`
	ConditionCheck *ConditionCheckInput `json:"ConditionCheck,omitempty"`
}

type TransactWriteItemsInput

type TransactWriteItemsInput struct {
	ReturnConsumedCapacity      string              `json:"ReturnConsumedCapacity,omitempty"`
	ReturnItemCollectionMetrics string              `json:"ReturnItemCollectionMetrics,omitempty"`
	ClientRequestToken          string              `json:"ClientRequestToken,omitempty"`
	TransactItems               []TransactWriteItem `json:"TransactItems"`
}

type TransactWriteItemsOutput

type TransactWriteItemsOutput struct {
	ItemCollectionMetrics map[string][]ItemCollectionMetrics `json:"ItemCollectionMetrics,omitempty"`
	ConsumedCapacity      []ConsumedCapacity                 `json:"ConsumedCapacity,omitempty"`
}

func FromSDKTransactWriteItemsOutput

func FromSDKTransactWriteItemsOutput(
	output *dynamodb.TransactWriteItemsOutput,
) *TransactWriteItemsOutput

type UntagResourceInput

type UntagResourceInput struct {
	ResourceArn string   `json:"ResourceArn"`
	TagKeys     []string `json:"TagKeys"`
}

UntagResourceInput is the wire format for UntagResource.

type UntagResourceOutput

type UntagResourceOutput struct{}

UntagResourceOutput is the wire format for UntagResource response (empty body).

func FromSDKUntagResourceOutput

func FromSDKUntagResourceOutput(_ *dynamodb.UntagResourceOutput) *UntagResourceOutput

FromSDKUntagResourceOutput converts the AWS SDK UntagResourceOutput to wire format.

type UpdateGlobalSecondaryIndexAction

type UpdateGlobalSecondaryIndexAction struct {
	ProvisionedThroughput ProvisionedThroughput `json:"ProvisionedThroughput"`
	IndexName             string                `json:"IndexName"`
}

UpdateGlobalSecondaryIndexAction updates the throughput of an existing GSI.

type UpdateItemInput

type UpdateItemInput struct {
	TableName                           string            `json:"TableName"`
	Key                                 map[string]any    `json:"Key"`
	UpdateExpression                    string            `json:"UpdateExpression,omitempty"`
	ConditionExpression                 string            `json:"ConditionExpression,omitempty"`
	ExpressionAttributeNames            map[string]string `json:"ExpressionAttributeNames,omitempty"`
	ExpressionAttributeValues           map[string]any    `json:"ExpressionAttributeValues,omitempty"`
	ReturnValues                        string            `json:"ReturnValues,omitempty"`
	ReturnConsumedCapacity              string            `json:"ReturnConsumedCapacity,omitempty"`
	ReturnItemCollectionMetrics         string            `json:"ReturnItemCollectionMetrics,omitempty"`
	ReturnValuesOnConditionCheckFailure string            `json:"ReturnValuesOnConditionCheckFailure,omitempty"`
}

type UpdateItemOutput

type UpdateItemOutput struct {
	Attributes            map[string]any         `json:"Attributes,omitempty"`
	ConsumedCapacity      *ConsumedCapacity      `json:"ConsumedCapacity,omitempty"`
	ItemCollectionMetrics *ItemCollectionMetrics `json:"ItemCollectionMetrics,omitempty"`
}

func FromSDKUpdateItemOutput

func FromSDKUpdateItemOutput(output *dynamodb.UpdateItemOutput) *UpdateItemOutput

type UpdateReplicationGroupMemberAction

type UpdateReplicationGroupMemberAction struct {
	ProvisionedReadCapacityUnits *int64 `json:"ProvisionedReadCapacityUnits,omitempty"`
	RegionName                   string `json:"RegionName"`
	TableClassOverride           string `json:"TableClassOverride,omitempty"`
}

UpdateReplicationGroupMemberAction specifies per-replica setting overrides.

type UpdateTableInput

type UpdateTableInput struct {
	ProvisionedThroughput       *ProvisionedThroughput       `json:"ProvisionedThroughput,omitempty"`
	StreamSpecification         *StreamSpecificationInput    `json:"StreamSpecification,omitempty"`
	TableName                   string                       `json:"TableName"`
	AttributeDefinitions        []AttributeDefinition        `json:"AttributeDefinitions,omitempty"`
	GlobalSecondaryIndexUpdates []GlobalSecondaryIndexUpdate `json:"GlobalSecondaryIndexUpdates,omitempty"`
	ReplicaUpdates              []ReplicaUpdate              `json:"ReplicaUpdates,omitempty"`
}

UpdateTableInput is the wire-format for a DynamoDB UpdateTable request.

type UpdateTableOutput

type UpdateTableOutput struct {
	TableDescription TableDescription `json:"TableDescription"`
}

UpdateTableOutput is the wire-format for a DynamoDB UpdateTable response.

func FromSDKUpdateTableOutput

func FromSDKUpdateTableOutput(output *dynamodb.UpdateTableOutput) *UpdateTableOutput

FromSDKUpdateTableOutput converts the AWS SDK UpdateTableOutput to wire format.

type UpdateTimeToLiveInput

type UpdateTimeToLiveInput struct {
	TableName               string                  `json:"TableName"`
	TimeToLiveSpecification TimeToLiveSpecification `json:"TimeToLiveSpecification"`
}

type UpdateTimeToLiveOutput

type UpdateTimeToLiveOutput struct {
	TimeToLiveSpecification TimeToLiveSpecification `json:"TimeToLiveSpecification"`
}

func FromSDKUpdateTimeToLiveOutput

func FromSDKUpdateTimeToLiveOutput(
	output *dynamodb.UpdateTimeToLiveOutput,
) *UpdateTimeToLiveOutput

type WriteRequest

type WriteRequest struct {
	PutRequest    *PutRequest    `json:"PutRequest,omitempty"`
	DeleteRequest *DeleteRequest `json:"DeleteRequest,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL