# Variable: play

```ts
const play: object & Typed<{
  album?: string;
  artists?: readonly string[];
  duration?: number;
  isrc?: string;
  mbid?: string;
  playedAt: string;
  title: string;
}>;
```

Defined in: [packages/core/src/schemas/library/media.ts:121](https://github.com/leifriksheim/minca/blob/main/core/src/schemas/library/media.ts#L121)

A track someone listened to, and when: a listening history.

## Type Declaration

### description

```ts
readonly description: "A track someone listened to, and when: about the std.track when the space has it." = 'A track someone listened to, and when: about the std.track when the space has it.';
```

### links

```ts
readonly links: object;
```

#### links.about

```ts
readonly about: LinkDeclaration;
```

### name

```ts
readonly name: "std.play" = 'std.play';
```

### schema

```ts
readonly schema: object;
```

#### schema.properties

```ts
readonly properties: object;
```

#### schema.properties.album

```ts
readonly album: object;
```

#### schema.properties.album.maxLength

```ts
maxLength: number = max;
```

#### schema.properties.album.minLength?

```ts
minLength?: number = min;
```

#### schema.properties.album.type

```ts
type: "string";
```

#### schema.properties.artists

```ts
readonly artists: object;
```

#### schema.properties.artists.items

```ts
readonly items: object;
```

#### schema.properties.artists.items.maxLength

```ts
maxLength: number = max;
```

#### schema.properties.artists.items.minLength?

```ts
minLength?: number = min;
```

#### schema.properties.artists.items.type

```ts
type: "string";
```

#### schema.properties.artists.maxItems

```ts
readonly maxItems: 20 = 20;
```

#### schema.properties.artists.type

```ts
readonly type: "array" = 'array';
```

#### schema.properties.duration

```ts
readonly duration: object;
```

#### schema.properties.duration.description

```ts
readonly description: "Seconds" = 'Seconds';
```

#### schema.properties.duration.minimum

```ts
readonly minimum: 0 = 0;
```

#### schema.properties.duration.type

```ts
readonly type: "number" = 'number';
```

#### schema.properties.isrc

```ts
readonly isrc: object;
```

#### schema.properties.isrc.maxLength

```ts
maxLength: number = max;
```

#### schema.properties.isrc.minLength?

```ts
minLength?: number = min;
```

#### schema.properties.isrc.type

```ts
type: "string";
```

#### schema.properties.mbid

```ts
readonly mbid: object;
```

#### schema.properties.mbid.maxLength

```ts
maxLength: number = max;
```

#### schema.properties.mbid.minLength?

```ts
minLength?: number = min;
```

#### schema.properties.mbid.type

```ts
type: "string";
```

#### schema.properties.playedAt

```ts
readonly playedAt: object & object;
```

##### Type Declaration

###### maxLength

```ts
maxLength: number = max;
```

###### minLength?

```ts
minLength?: number = min;
```

###### type

```ts
type: "string";
```

###### x-kind

```ts
readonly "x-kind": "when";
```

#### schema.properties.title

```ts
readonly title: object;
```

#### schema.properties.title.maxLength

```ts
maxLength: number = max;
```

#### schema.properties.title.minLength?

```ts
minLength?: number = min;
```

#### schema.properties.title.type

```ts
type: "string";
```

#### schema.required

```ts
readonly required: readonly ["title", "playedAt"];
```

#### schema.type

```ts
readonly type: "object" = 'object';
```

### title

```ts
readonly title: "Play" = 'Play';
```
