workspace-v1/shared/knowledge-base/templates/module-template/API.md
rckrdmrd 66161b1566 feat: Workspace-v1 complete migration with NEXUS v3.4
Sistema NEXUS v3.4 migrado con:

Estructura principal:
- core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles)
- core/catalog: Catalogo de funcionalidades reutilizables
- shared/knowledge-base: Base de conocimiento compartida
- devtools/scripts: Herramientas de desarrollo
- control-plane/registries: Control de servicios y CI/CD
- orchestration/: Configuracion de orquestacion de agentes

Proyectos incluidos (11):
- gamilit (submodule -> GitHub)
- trading-platform (OrbiquanTIA)
- erp-suite con 5 verticales:
  - erp-core, construccion, vidrio-templado
  - mecanicas-diesel, retail, clinicas
- betting-analytics
- inmobiliaria-analytics
- platform_marketing_content
- pos-micro, erp-basico

Configuracion:
- .gitignore completo para Node.js/Python/Docker
- gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git)
- Sistema de puertos estandarizado (3005-3199)

Generated with NEXUS v3.4 Migration System
EPIC-010: Configuracion Git y Repositorios
2026-01-04 03:37:42 -06:00

199 lines
3.2 KiB
Markdown

# API Reference: {Nombre del Modulo}
**Modulo:** {module-id}
**Version:** X.Y.Z
---
## Tabla de Contenidos
- [Service: {Module}Service](#service-moduleservice)
- [DTOs](#dtos)
- [Interfaces](#interfaces)
- [Guards](#guards)
- [Decorators](#decorators)
---
## Service: {Module}Service
### Constructor
```typescript
constructor(
private readonly configService: ConfigService,
private readonly repository: Repository<{Entity}>,
)
```
### Metodos
#### `method1(param: Type): Promise<ReturnType>`
Descripcion del metodo.
**Parametros:**
| Parametro | Tipo | Requerido | Descripcion |
|-----------|------|-----------|-------------|
| param | Type | Si | Descripcion del parametro |
**Retorna:** `Promise<ReturnType>`
**Ejemplo:**
```typescript
const result = await service.method1({ param: 'value' });
```
**Excepciones:**
- `NotFoundException`: Cuando no se encuentra el recurso
- `BadRequestException`: Cuando los parametros son invalidos
---
#### `method2(id: string, data: UpdateDto): Promise<Entity>`
Descripcion del metodo.
**Parametros:**
| Parametro | Tipo | Requerido | Descripcion |
|-----------|------|-----------|-------------|
| id | string | Si | ID del recurso |
| data | UpdateDto | Si | Datos a actualizar |
**Retorna:** `Promise<Entity>`
---
## DTOs
### CreateDto
```typescript
export class Create{Entity}Dto {
@IsString()
@IsNotEmpty()
name: string;
@IsEmail()
email: string;
@IsOptional()
@IsString()
description?: string;
}
```
### UpdateDto
```typescript
export class Update{Entity}Dto extends PartialType(Create{Entity}Dto) {}
```
### ResponseDto
```typescript
export class {Entity}ResponseDto {
id: string;
name: string;
email: string;
createdAt: Date;
updatedAt: Date;
}
```
---
## Interfaces
### {Module}Options
```typescript
export interface {Module}Options {
apiKey: string;
secret?: string;
timeout?: number;
retries?: number;
}
```
### {Module}Config
```typescript
export interface {Module}Config {
enabled: boolean;
options: {Module}Options;
}
```
---
## Guards
### {Module}Guard
Guard para proteger endpoints que requieren {modulo}.
```typescript
@UseGuards({Module}Guard)
@Get('protected')
async protectedEndpoint() {
// ...
}
```
---
## Decorators
### @{Module}()
Decorator para inyectar configuracion del modulo.
```typescript
@{Module}()
async methodWithModule(@{Module}Config() config: {Module}Config) {
// ...
}
```
---
## Eventos
### {Module}Event
Eventos emitidos por el modulo.
| Evento | Payload | Descripcion |
|--------|---------|-------------|
| `{module}.created` | `{ id, data }` | Cuando se crea un recurso |
| `{module}.updated` | `{ id, changes }` | Cuando se actualiza |
| `{module}.deleted` | `{ id }` | Cuando se elimina |
---
## Errores
### {Module}Exception
```typescript
export class {Module}Exception extends HttpException {
constructor(message: string, code: string) {
super({ message, code }, HttpStatus.BAD_REQUEST);
}
}
```
### Codigos de Error
| Codigo | Descripcion |
|--------|-------------|
| `{MODULE}_001` | Error de configuracion |
| `{MODULE}_002` | Error de conexion |
| `{MODULE}_003` | Error de validacion |
---
**Generado:** {fecha}
**Mantenedor:** @Architecture-Analyst