# NoData

Represents an asynchronous value before work or a result exists.

## Signatures

```ts
export interface NoData {
    readonly _tag: "NoData";
}
```

```ts
export declare const NoData: NoData;
```

## Why

A distinct initial state prevents absence from being confused with loading, failure, or a successful `undefined` value.

## Ownership and lifetime

This shape acquires no resources. `readonly` is compile-time only; values matching the interface need not be frozen.

## Property: _tag

The discriminant for the initial state.

## Property: _tag: Why

A literal tag enables exhaustive matching without runtime class identity.

## Property: _tag: Ownership and lifetime

Inherits the resource-free lifetime of its enclosing state.

## Examples

```ts
import { NoData } from "@typed/async-data"
const initial = NoData
```
