# DynamoDB L1 Primitive

> Stack type: `aws:dynamodb:table` → Terraform `aws_dynamodb_table`

## Description

A DynamoDB table primitive with encryption + point-in-time recovery
enabled by default (per v1.8 NFR defaults). Supports a partition key
(required) + optional sort key. Default billing mode is
`PAY_PER_REQUEST` (on-demand).

## Inputs

| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| `table_name` | string | yes | — | Globally-unique table name |
| `region` | string | yes | — | AWS region |
| `pk` | string | yes | — | Partition key attribute name |
| `sk` | string | no | `""` | Sort key attribute name |
| `billing_mode` | string | no | `PAY_PER_REQUEST` | Billing mode |
| `enabled` | boolean | no | `true` | Feature flag |

## Outputs

| Name | Type | Description |
|---|---|---|
| `table_arn` | arn | The table ARN |
| `table_name` | string | The table name |

## NFRs

- **Encryption:** SSE-KMS enabled by default.
- **Point-in-time recovery:** Enabled by default.
- **Deletion protection:** `prevent_destroy = true` (Terraform lifecycle).

## Examples

See `examples/simple.yaml`.
