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

# Class: VFile<Type, IsOptional>

> Not exported: an exported type refers to it.

[browser](/api/modules/browser).VFile

Not exported: an exported type refers to it.

## Type parameters

| Name | Type |
| :- | :- |
| `Type` | [`FileRef`](/api/modules/browser#fileref) |
| `IsOptional` | extends [`OptionalProperty`](/api/modules/browser#optionalproperty) = `"required"` |

## Hierarchy

* [`VId`](/api/classes/browser.VId)\<`Type`, `IsOptional`>

  ↳ **`VFile`**

## Constructors

### constructor

• **new VFile**\<`Type`, `IsOptional`>(`isOptional`)

#### Type parameters

| Name | Type |
| :- | :- |
| `Type` | [`FileRef`](/api/modules/browser#fileref) |
| `IsOptional` | extends [`OptionalProperty`](/api/modules/browser#optionalproperty) = `"required"` |

#### Parameters

| Name | Type |
| :- | :- |
| `isOptional` | `IsOptional` |

#### Overrides

[VId](/api/classes/browser.VId).[constructor](/api/classes/browser.VId#constructor)

## Properties

### fileReference

• `Readonly` **fileReference**: `true`

***

### type

• `Readonly` **type**: `Type`

#### Inherited from

[VId](/api/classes/browser.VId).[type](/api/classes/browser.VId#type)

***

### fieldPaths

• `Readonly` **fieldPaths**: `never`

#### Inherited from

[VId](/api/classes/browser.VId).[fieldPaths](/api/classes/browser.VId#fieldpaths)

***

### isOptional

• `Readonly` **isOptional**: `IsOptional`

#### Inherited from

[VId](/api/classes/browser.VId).[isOptional](/api/classes/browser.VId#isoptional)

***

### isConvexValidator

• `Readonly` **isConvexValidator**: `true`

#### Inherited from

[VId](/api/classes/browser.VId).[isConvexValidator](/api/classes/browser.VId#isconvexvalidator)

***

### tableName

• `Readonly` **tableName**: [`TableNameFromType`](/api/modules/browser#tablenamefromtype)\<`Type`>

#### Inherited from

[VId](/api/classes/browser.VId).[tableName](/api/classes/browser.VId#tablename)

***

### kind

• `Readonly` **kind**: `"id"`

#### Inherited from

[VId](/api/classes/browser.VId).[kind](/api/classes/browser.VId#kind)

## Accessors

### json

• `get` **json**(): [`ValidatorJSON`](/api/modules/browser#validatorjson)

#### Returns

[`ValidatorJSON`](/api/modules/browser#validatorjson)

#### Inherited from

VId.json

## Methods

### optional

▸ **optional**(): [`VFile`](/api/classes/browser.VFile)\<`undefined` | `Type`, `"optional"`>

#### Returns

[`VFile`](/api/classes/browser.VFile)\<`undefined` | `Type`, `"optional"`>

#### Overrides

[VId](/api/classes/browser.VId).[optional](/api/classes/browser.VId#optional)

***

### asOptional

▸ **asOptional**(): [`VFile`](/api/classes/browser.VFile)\<`undefined` | `Type`, `"optional"`>

#### Returns

[`VFile`](/api/classes/browser.VFile)\<`undefined` | `Type`, `"optional"`>

#### Overrides

[VId](/api/classes/browser.VId).[asOptional](/api/classes/browser.VId#asoptional)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.