---
url: /reference/@cssdoc/core/classes/CssDocTagDefinition.md
---
# Class: CssDocTagDefinition

Defined in: [packages/core/src/configuration.ts:49](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L49)

One tag in the vocabulary: its name, kind, and how it may be used.

## Constructors

### Constructor

```ts
new CssDocTagDefinition(options): CssDocTagDefinition;
```

Defined in: [packages/core/src/configuration.ts:62](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L62)

#### Parameters

##### options

[`CssDocTagDefinitionOptions`](../interfaces/CssDocTagDefinitionOptions.md)

#### Returns

`CssDocTagDefinition`

## Properties

### aliasFor?

```ts
readonly optional aliasFor?: string;
```

Defined in: [packages/core/src/configuration.ts:58](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L58)

The canonical tag name (without `@`) this aliases, if any; otherwise its own name.

***

### allowMultiple

```ts
readonly allowMultiple: boolean;
```

Defined in: [packages/core/src/configuration.ts:55](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L55)

***

### description?

```ts
readonly optional description?: string;
```

Defined in: [packages/core/src/configuration.ts:60](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L60)

A one-line description of the tag's purpose, surfaced in editor completions/hover.

***

### recordKind?

```ts
readonly optional recordKind?: CssRecordKind;
```

Defined in: [packages/core/src/configuration.ts:56](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L56)

***

### syntaxKind

```ts
readonly syntaxKind: CssDocSyntaxKind;
```

Defined in: [packages/core/src/configuration.ts:54](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L54)

***

### tagName

```ts
readonly tagName: string;
```

Defined in: [packages/core/src/configuration.ts:51](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L51)

The normalized tag name, always with a leading `@` (e.g. `@modifier`).

***

### tagNameWithoutAt

```ts
readonly tagNameWithoutAt: string;
```

Defined in: [packages/core/src/configuration.ts:53](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L53)

The tag name without its leading `@` (e.g. `modifier`).

## Accessors

### canonicalName

#### Get Signature

```ts
get canonicalName(): string;
```

Defined in: [packages/core/src/configuration.ts:77](https://github.com/thedannywahl/cssdoc/blob/main/packages/core/src/configuration.ts#L77)

The tag this definition resolves to when handled — its alias target, or itself.

##### Returns

`string`
