open-index/open-npm huggingface dataset:
npm package: @maur025/cache-util-ng
Description: En: You can install this library using your preferred package manager: **pnpm**, **yarn**, or **npm**.
Latest version: 0.0.5

# How to Install Cache-Util-Ng

En: You can install this library using your preferred package manager: **pnpm**, **yarn**, or **npm**.

Es: Puedes instalar esta librería usando tu manejador de paquetes preferido: **pnpm**, **yarn** o **npm**.

## Using pnpm

```bash
pnpm add @maur025/cache-util-ng
```

## Using yarn

```bash
yarn add @maur025/cache-util-ng
```

## Using npm

```bash
npm i @maur025/cache-util-ng
```

---

# Cache-Util-Ng build

- Este proyecto fue generado con [Angular CLI]
- Se uso pnpm como manejador de paquetes
- Se usaron las caracteristicas de workspaces de Angular CLI
- Se uso ng generate library para crear la libreria
- Se agrego el codigo de una funcion que tenia disponible en otro proyecto
- La configuracion ya viene por defecto por parte de angular.
- Se ejecuto pnpm build para generar la libreria
- Se usaron los comandos de npm como **npm version patch** para actualizar la version de la libreria
- Se uso **npm publish --access public** para publicar la libreria en npm
- Use mi cuenta de npm, para probar.

# Example of usage

```typescript
/* La forma de importar */
import { AbstractSingleCache, BaseData } from '@maur025/cache-util-ng';

/* Definicion de la interfaz */
interface Device extends BaseData {
  name: string;
}

/* clase que utiliza el caché */
export class DeviceCache extends AbstractSingleCache<Device> {
  private readonly deviceMap = new Map<string, Device>();

  protected override getResource(): string {
    return 'devices';
  }

  protected override getMap(): Map<string, Device> {
    return this.deviceMap;
  }
}

/* En otro archivo */
const deviceCache = new DeviceCache();
deviceCache.addById('device1', { id: 'device1', name: 'Device 1' });
```