# common — repo context

> Curated overview for code_search. Source: `direqt-search/common` (GitHub). Shared library.

## Purpose
`@direqt-internal/common` — **shared types, utilities, error classes, RBAC role
definitions, and scheduling helpers** for the Direqt Search platform. Runs
anywhere (Node backends, browser frontends, scripts, edge). **Zero heavy deps**
(only runtime dep is `@direqt-internal/iam-api`, pure types).

## Key exports (from `src/`, all from package root)
- **Errors**: `DireqtError` (base, with metadata/innerError/toJSON), `ApiError`
  (HTTP, statusCode/code/moreInfo), `ValidationError` (422 + `propertyErrors`),
  `AuthorizationError` (403), `NotFoundError` (404), `ResourceConflictError` (409),
  `ServerError` (500), `ActionError`.
- **Auth types**: `VerifiedUserInfo` (`verifiedUser`, `verifiedNetwork`,
  `verifiedRole`, `verifiedRoles`), `_assertUserInfo()`.
- **Resource meta**: `ResourceSchema<T>`, `ResourceAction<U>`.
- Utilities (e.g. `removeUndefined`) and RBAC role definitions.

## Tech
TypeScript, environment-agnostic. Depends only on `@direqt-internal/iam-api`.
