# Variable: workout

```ts
const workout: object & Typed<{
  distance?: number;
  duration?: number;
  note?: string;
  route?: {
     hash: string;
     key?: string;
     mime: string;
     name?: string;
     salt?: string;
     size: number;
  };
  start: string;
  type: string;
}>;
```

Defined in: [packages/core/src/schemas/library/life.ts:170](https://github.com/leifriksheim/minca/blob/main/core/src/schemas/library/life.ts#L170)

A workout: a run, a ride, a session at the gym.

## Type Declaration

### description

```ts
readonly description: "A run, a ride, a session: when, how long, how far." = 'A run, a ride, a session: when, how long, how far.';
```

### name

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

### schema

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

#### schema.properties

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

#### schema.properties.distance

```ts
readonly distance: object;
```

#### schema.properties.distance.description

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

#### schema.properties.distance.minimum

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

#### schema.properties.distance.type

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

#### 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.note

```ts
readonly note: object;
```

#### schema.properties.note.maxLength

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

#### schema.properties.note.minLength?

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

#### schema.properties.note.type

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

#### schema.properties.route

```ts
readonly route: object & object;
```

##### Type Declaration

###### properties

```ts
properties: object;
```

###### properties.hash

```ts
hash: object;
```

###### properties.hash.maxLength

```ts
maxLength: number = 64;
```

###### properties.hash.minLength

```ts
minLength: number = 64;
```

###### properties.hash.type

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

###### properties.key

```ts
key: object;
```

###### properties.key.maxLength

```ts
maxLength: number = 22;
```

###### properties.key.minLength

```ts
minLength: number = 22;
```

###### properties.key.type

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

###### properties.mime

```ts
mime: object;
```

###### properties.mime.maxLength

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

###### properties.mime.minLength?

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

###### properties.mime.type

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

###### properties.name

```ts
name: object;
```

###### properties.name.maxLength

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

###### properties.name.minLength?

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

###### properties.name.type

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

###### properties.salt

```ts
salt: object;
```

###### properties.salt.maxLength

```ts
maxLength: number = 22;
```

###### properties.salt.minLength

```ts
minLength: number = 22;
```

###### properties.salt.type

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

###### properties.size

```ts
size: object;
```

###### properties.size.minimum

```ts
minimum: number = 0;
```

###### properties.size.type

```ts
type: "integer";
```

###### required

```ts
required: readonly ["hash", "size", "mime"];
```

###### type

```ts
type: "object";
```

###### x-kind

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

#### schema.properties.start

```ts
readonly start: 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.type

```ts
readonly type: object;
```

#### schema.properties.type.maxLength

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

#### schema.properties.type.minLength?

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

#### schema.properties.type.type

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

#### schema.required

```ts
readonly required: readonly ["type", "start"];
```

#### schema.type

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

### title

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