> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modelence.com/llms.txt
> Use this file to discover all available pages before exploring further.

# schema

[API Reference](/api-reference/modelence/server/variables/../../../index) / [modelence](/api-reference/modelence/server/variables/../../index) / [server](/api-reference/modelence/server/variables/../index) / schema

> `const` **schema**: `object`

Defined in: [packages/modelence/src/data/types.ts:31](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L31)

## Type declaration

| Name                           | Type                                                                                                                                                                                                                                                          | Default value   | Defined in                                                                                                                                                               |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <a id="array" /> `array()`     | \<`El`>(`schema`, `params?`) => `ZodArray`\<`El`>                                                                                                                                                                                                             | `schemaArray`   | [packages/modelence/src/data/types.ts:36](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L36) |
| <a id="boolean" /> `boolean()` | (`params?`) => `ZodBoolean`                                                                                                                                                                                                                                   | `schemaBoolean` | [packages/modelence/src/data/types.ts:35](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L35) |
| <a id="date" /> `date()`       | (`params?`) => `ZodDate`                                                                                                                                                                                                                                      | `schemaDate`    | [packages/modelence/src/data/types.ts:34](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L34) |
| <a id="enum" /> `enum()`       | \{\<`U`, `T`>(`values`, `params?`): `ZodEnum`\<`Writeable`\<`T`>>; \<`U`, `T`>(`values`, `params?`): `ZodEnum`\<`T`>; }                                                                                                                                       | `schemaEnum`    | [packages/modelence/src/data/types.ts:38](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L38) |
| <a id="number" /> `number()`   | (`params?`) => `ZodNumber`                                                                                                                                                                                                                                    | `schemaNumber`  | [packages/modelence/src/data/types.ts:33](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L33) |
| <a id="object" /> `object()`   | \<`Shape`>(`shape`, `params?`) => `ZodObject`\<`Shape`, `"strip"`, `ZodTypeAny`, \{ \[k in string \| number \| symbol]: addQuestionMarks\<baseObjectOutputType\<Shape>, any>\[k] }, \{ \[k in string \| number \| symbol]: baseObjectInputType\<Shape>\[k] }> | `schemaObject`  | [packages/modelence/src/data/types.ts:37](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L37) |
| <a id="string" /> `string()`   | (`params?`) => `ZodString`                                                                                                                                                                                                                                    | `schemaString`  | [packages/modelence/src/data/types.ts:32](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L32) |
| <a id="union" /> `union()`     | \<`Options`>(`types`, `params?`) => `ZodUnion`\<`Options`>                                                                                                                                                                                                    | -               | [packages/modelence/src/data/types.ts:53](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L53) |
| `embedding()`                  | () => `ZodArray`\<`ZodNumber`>                                                                                                                                                                                                                                | -               | [packages/modelence/src/data/types.ts:39](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L39) |
| `infer()`                      | (`_schema`) => `InferDocumentType`\<`T`>                                                                                                                                                                                                                      | -               | [packages/modelence/src/data/types.ts:54](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L54) |
| `objectId()`                   | () => `ZodType`\<`ObjectId`>                                                                                                                                                                                                                                  | -               | [packages/modelence/src/data/types.ts:42](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L42) |
| `ref()`                        | (`_collection`) => `ZodType`\<`ObjectId`>                                                                                                                                                                                                                     | -               | [packages/modelence/src/data/types.ts:48](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L48) |
| `userId()`                     | () => `ZodType`\<`ObjectId`>                                                                                                                                                                                                                                  | -               | [packages/modelence/src/data/types.ts:45](https://github.com/modelence/modelence/blob/dcea4170315a023a7e8f0c3c5d551c26b7adecf3/packages/modelence/src/data/types.ts#L45) |
