# Variable: spaceProfile

```ts
const spaceProfile: object & Typed<{
  avatar?: {
     hash: string;
     key?: string;
     mime: string;
     name?: string;
     salt?: string;
     size: number;
  };
  banner?: {
     hash: string;
     key?: string;
     mime: string;
     name?: string;
     salt?: string;
     size: number;
  };
  bio?: string;
  name?: string;
  space: string;
}>;
```

Defined in: [packages/core/src/schemas/library/social.ts:55](https://github.com/leifriksheim/minca/blob/main/core/src/schemas/library/social.ts#L55)

How the space presents itself, as `std.profile` is how someone does: what
apps show in place of the name its constitution was founded with, and a
picture. One record per space: it names the space it is of, and `onePer`
that gives every writer the same shared key, so changing it is editing it,
and which edit stands is the versions' order, never a writer's clock. A
reader takes only the one whose `space` is the space it is in. Who may
write it is the space's grants, so the presets leave it to those who keep
order (`STAFF_COLLECTIONS`).

## Type Declaration

### description

```ts
readonly description: "How the space presents itself: its name, a line about it and its picture. One per space: \"space\" is its id." = 'How the space presents itself: its name, a line about it and its picture. One per space: "space" is its id.';
```

### name

```ts
readonly name: "std.space-profile" = 'std.space-profile';
```

### rules

```ts
readonly rules: object;
```

#### rules.onePer

```ts
readonly onePer: readonly ["space"];
```

### schema

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

#### schema.properties

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

#### schema.properties.avatar

```ts
readonly avatar: 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.banner

```ts
readonly banner: 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.bio

```ts
readonly bio: object;
```

#### schema.properties.bio.maxLength

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

#### schema.properties.bio.minLength?

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

#### schema.properties.bio.type

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

#### schema.properties.name

```ts
readonly name: object;
```

#### schema.properties.name.maxLength

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

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

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

#### schema.properties.name.type

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

#### schema.properties.space

```ts
readonly space: object;
```

#### schema.properties.space.description

```ts
readonly description: "The space it presents: its id" = 'The space it presents: its id';
```

#### schema.properties.space.maxLength

```ts
readonly maxLength: 256 = 256;
```

#### schema.properties.space.minLength

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

#### schema.properties.space.type

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

#### schema.required

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

#### schema.type

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

### title

```ts
readonly title: "Space profile" = 'Space profile';
```
