# Variable: task

```ts
const task: object & Typed<{
  assignees?: readonly string[];
  due?: string;
  notes?: string;
  position?: string;
  priority?: number;
  status?: "todo" | "cancelled" | "doing" | "done";
  title: string;
}>;
```

Defined in: [packages/core/src/schemas/library/planning.ts:131](https://github.com/leifriksheim/minca/blob/main/core/src/schemas/library/planning.ts#L131)

A task: `in` a column of a board, or in a project with no columns, and
under a parent task. `status` is for lists without columns; a board's
column says where the task is.
`assignees` is its topic, so "assigned to me" can be asked of a keeper that
can't read it.

## Type Declaration

### description

```ts
readonly description: "A thing to do: a to-do, an issue, a card on a board. `status` for plain lists; on a board it sits in a std.column. Something to be reminded of about an existing record is a std.reminder." = 'A thing to do: a to-do, an issue, a card on a board. `status` for plain lists; on a board it sits in a std.column. Something to be reminded of about an existing record is a std.reminder.';
```

### links

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

#### links.in

```ts
readonly in: LinkDeclaration;
```

#### links.parent

```ts
readonly parent: LinkDeclaration;
```

### name

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

### schema

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

#### schema.properties

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

#### schema.properties.assignees

```ts
readonly assignees: object;
```

#### schema.properties.assignees.items

```ts
items: object & object;
```

##### Type Declaration

###### maxLength

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

###### minLength?

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

###### type

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

###### x-kind

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

#### schema.properties.assignees.maxItems

```ts
maxItems: number = max;
```

#### schema.properties.assignees.type

```ts
type: "array";
```

#### schema.properties.due

```ts
readonly due: 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.notes

```ts
readonly notes: object;
```

#### schema.properties.notes.maxLength

```ts
readonly maxLength: 10000 = 10000;
```

#### schema.properties.notes.type

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

#### schema.properties.position

```ts
readonly position: object;
```

#### schema.properties.position.description

```ts
readonly description: "Sorts where the task goes in its column" = 'Sorts where the task goes in its column';
```

#### schema.properties.position.maxLength

```ts
readonly maxLength: 200 = 200;
```

#### schema.properties.position.minLength

```ts
readonly minLength: 1 = 1;
```

#### schema.properties.position.type

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

#### schema.properties.priority

```ts
readonly priority: object;
```

#### schema.properties.priority.maximum?

```ts
maximum?: number = max;
```

#### schema.properties.priority.minimum

```ts
minimum: number = min;
```

#### schema.properties.priority.type

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

#### schema.properties.status

```ts
readonly status: object;
```

#### schema.properties.status.enum

```ts
enum: ("todo" | "cancelled" | "doing" | "done")[];
```

#### schema.properties.title

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

#### schema.properties.title.maxLength

```ts
readonly maxLength: 500 = 500;
```

#### schema.properties.title.minLength

```ts
readonly minLength: 1 = 1;
```

#### schema.properties.title.type

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

#### schema.required

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

#### schema.type

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

### title

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

### topics

```ts
readonly topics: readonly ["assignees"];
```
