# Notification

## Notificación

### Representa un evento o valor *push* que puede emitir un Observable. Esta clase es especialmente útil para los operadores que gestionan notificaciones, como materialize, dematerialize, observeOn y demás. Además de crear una capa sobre el valor emitido, también lo anota con metadatos de, por ejemplo, qué tipo de mensaje push es (next, error o complete)

```typescript
class Notification<T> {
  static createNext<T>(value: T): Notification<T>;
  static createError<T>(err?: any): Notification<T>;
  static createComplete(): Notification<any>;
  constructor(kind: "N" | "E" | "C", value?: T, error?: any);
  hasValue: boolean;
  kind: "N" | "E" | "C";
  value?: T;
  error?: any;
  observe(observer: PartialObserver<T>): any;
  do(
    next: (value: T) => void,
    error?: (err: any) => void,
    complete?: () => void
  ): any;
  accept(
    nextOrObserver:
      | NextObserver<T>
      | ErrorObserver<T>
      | CompletionObserver<T>
      | ((value: T) => void),
    error?: (err: any) => void,
    complete?: () => void
  );
  toObservable(): Observable<T>;
}
```

## Métodos Estáticos

| createNext()                                                                                                                                                                                        |                  |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- |
| Un atajo para crear una instancia de una Notificación de tipo `next` a partir de un valor dado.                                                                                                     |                  |
| <h4>Firma</h4><p><code>static createNext(value: T): Notification</code></p><h4>Parámetros</h4><h4>Retorna</h4><p><code>Notification</code>: La Notificación "next" que representa al argumento.</p> |                  |
| value                                                                                                                                                                                               | El valor `next`. |

| value | El valor `next`. |
| ----- | ---------------- |

| createError()                                                                                                                                                                                          |                                                                     |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------- |
| Un atajo para crear una instancia de una Notificación de tipo `error` a partir de un valor dado.                                                                                                       |                                                                     |
| <h4>Firma</h4><p><code>static createError(err?: any): Notification</code></p><h4>Parámetros</h4><h4>Retorna</h4><p><code>Notification</code>: La Notificación "error" que representa al argumento.</p> |                                                                     |
| err                                                                                                                                                                                                    | Opcional. El valor por defecto es `undefined`. El error de `error`. |

| err | Opcional. El valor por defecto es `undefined`. El error de `error`. |
| --- | ------------------------------------------------------------------- |

| createComplete()                                                                                                                                                                                                               |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Un atajo para crear una instancia de una Notificación de tipo `complete`.                                                                                                                                                      |
| <h4>Firma</h4><p><code>static createComplete(): Notification</code></p><h4>Parámetros</h4><p>No recibe ningún parámetro.</p><h4>Retorna</h4><p><code>Notification</code>: La Notificación "complete", que carece de valor.</p> |

### Constructor

| constructor()                                |                                                             |                                                            |   |
| -------------------------------------------- | ----------------------------------------------------------- | ---------------------------------------------------------- | - |
| <h4>Firma</h4><p><code>constructor(kind: "N" | "E"                                                         | "C", value?: T, error?: any)</code></p><h4>Parámetros</h4> |   |
| kind                                         | Tipo: `"N" \| "E" \| "C"`.                                  |                                                            |   |
| value                                        | Opcional. El valor por defecto es `undefined`. Tipo: `T`.   |                                                            |   |
| error                                        | Opcional. El valor por defecto es `undefined`. Tipo: `any`. |                                                            |   |

| kind  | Tipo: `"N" \| "E" \| "C"`.                                  |
| ----- | ----------------------------------------------------------- |
| value | Opcional. El valor por defecto es `undefined`. Tipo: `T`.   |
| error | Opcional. El valor por defecto es `undefined`. Tipo: `any`. |

### Propiedades

| Propiedad | Tipo              | Descripción                  |
| --------- | ----------------- | ---------------------------- |
| hasValue  | boolean           |                              |
| kind      | 'N' \| 'E' \| 'C' | Declarado en el constructor. |
| value     | T                 | Declarado en el constructor. |
| error     | any               | Declarado en el constructor. |

### Métodos

| observe()                                                                                                                            |                          |
| ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------ |
| Envía al observador proporcionado el valor englobado por esta Notificación.                                                          |                          |
| <h4>Firma</h4><p><code>observe(observer: PartialObserver): any</code></p><h4>Parámetros</h4><h4>Retorna</h4><p><code>any:</code></p> |                          |
| observer                                                                                                                             | Tipo: `PartialObserver`. |

| observer | Tipo: `PartialObserver`. |
| -------- | ------------------------ |

| do()                                                                                                                                                                              |                                                                                          |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Dada una callback de un Observador, envía el valor representado por la Notificación actual a la callback correspondiente.                                                         |                                                                                          |
| <h4>Firma</h4><p><code>do(next: (value: T) => void, error?: (err: any) => void, complete?: () => void): any</code></p><h4>Parámetros</h4><h4>Retorna</h4><p><code>any:</code></p> |                                                                                          |
| next                                                                                                                                                                              | Una callback `next` de un Observador.                                                    |
| error                                                                                                                                                                             | Una callback `error` de un Observador. Opcional. El valor por defecto es `undefined`.    |
| complete                                                                                                                                                                          | Una callback `complete` de un Observador. Opcional. El valor por defecto es `undefined`. |

| next     | Una callback `next` de un Observador.                                                    |
| -------- | ---------------------------------------------------------------------------------------- |
| error    | Una callback `error` de un Observador. Opcional. El valor por defecto es `undefined`.    |
| complete | Una callback `complete` de un Observador. Opcional. El valor por defecto es `undefined`. |

| accept()                                                                                                            |                                                                                          |                    |                                                                                                        |   |
| ------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------ | - |
| Recibe un Observador o sus funciones callback individuales y llama al método observe u otro método correspondiente. |                                                                                          |                    |                                                                                                        |   |
| <h4>Firma</h4><p><code>accept(nextOrObserver: NextObserver                                                          | ErrorObserver                                                                            | CompletionObserver | ((value: T) => void), error?: (err: any) => void, complete?: () => void)</code></p><h4>Parámetros</h4> |   |
| nextOrObserver                                                                                                      | Un Observador o una callback `next`                                                      |                    |                                                                                                        |   |
| error                                                                                                               | Una callback `error` de un Observador. Opcional. El valor por defecto es `undefined`.    |                    |                                                                                                        |   |
| complete                                                                                                            | Una callback `complete` de un Observador. Opcional. El valor por defecto es `undefined`. |                    |                                                                                                        |   |

| nextOrObserver | Un Observador o una callback `next`                                                      |
| -------------- | ---------------------------------------------------------------------------------------- |
| error          | Una callback `error` de un Observador. Opcional. El valor por defecto es `undefined`.    |
| complete       | Una callback `complete` de un Observador. Opcional. El valor por defecto es `undefined`. |

| toObservable()                                                                                                                                                   |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Retorna un Observable simple que emite la notificación representada por esta instancia de Notificación.                                                          |
| <h4>Firma</h4><p><code>toObservable(): Observable</code></p><h4>Parámetros</h4><p>No recibe ningún parámetro.</p><h4>Retorna</h4><p><code>Observable:</code></p> |

### Recursos adicionales

[![Source code](https://github.com/puntotech/rxjs-docu/blob/master/doc/api/index/assets/icons/source-code.png)](https://github.com/ReactiveX/rxjs/blob/6.5.5/src/internal/Notification.ts#L17-L148)

[Documentación oficial en inglés](https://rxjs.dev/api/index/class/Notification)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.rxjs.es/api/indice/notification.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
