# @oshun/domain-nyx

Typed Nyx domain adapter package for the OSHUN shell.

## Included

- Nyx API adapter contracts (`NyxApiAdapter`)
- Canonical shell-facing Nyx adapter contract (`NyxDomainAdapter`)
- Event, reminder, saved-object, observation, and sky-map response models
- Adapter factory (`createNyxDomainAdapter`) with typed error handling
- Canonical adapter factory (`createCanonicalNyxDomainAdapter`) behind the
  shared shell interface
- Home/Explore Nyx card model builders for OSHUN shell surfaces
- Nyx launch-action mapping helpers for event, object, observation, and sky-map
  flows
- Canonical Nyx deep-link and web-link builders
- Canonical Nyx adapter helpers for metadata, availability, continuation, search
  composition, launch resolution, saved-object toggling, reminder-state
  handling, and bridge-moment composition

## Usage

```ts
import { createCanonicalNyxDomainAdapter } from '@oshun/domain-nyx';

const nyx = createCanonicalNyxDomainAdapter({
  baseUrl: 'https://nyx.internal',
  launchMode: 'embedded_pwa',
  searchUserId: 'user-123',
});

const cards = await nyx.getHomeCards({ userId: 'user-123' });
```
